maxspeed:rain (solved -> maxspeed:wet) und weitere Geschwindigkeiten

Hio…

Wollte mal fragen, wie man hier korrekt Höchstgeschwindigkeit bei Regen einträgt.

Wäre maxspeed:rain=80 korrekt?

  1. Frage wäre für verkehrsabhängige Geschwindigkeitsbegrenzungen das Tag maxspeed=signals oder?

Variable Geschwindigkeitsbegrenzungen würde ich nicht eintragen. Es bietet einfach keinen Informationsgewinn. maxspeed:rain hört sich erstmal gut an.

OK… nächste Frage:

00-05 Uhr 40, ansonsten 60 :slight_smile: Sorry, wenn ich nerve :smiley:

(Anscheinend sammelt sich hier im Landkreis so ziemlich alles an blödsinnigen Geschwindigkeitsbegrenzungen, was es gibt)

Zur ersten Frage gibt es nur einen Vorschlag mit maxspeed:wet
(Regen scheint für deutsche Gerichte ein zu unklarer Begriff zu sein.)
http://wiki.openstreetmap.org/wiki/Proposed_features/Conditions_for_access_tags
Inwieweit das schon genutzt wird, kann ich nicht einschätzen.
Da klar zu erkennen ist, was du damit ausdrücken willst, kann das ggfs. leicht angepasst
werden, falls sich ein anderes Tagging -Schema durchsetzt.

maxspeed=signals ist auf http://wiki.openstreetmap.org/wiki/Key:maxspeed erwähnt.
Von daher sollte es keine Probleme geben, scheint aber nur in DE gebräuchlich zu sein.

Da ich in meiner Umgebung von verkehrsabhängigen Geschwindigkeits-Signalisierungen
betroffen bin, halte ich das Taggen im Gegensatz zu aighes durchaus für sinnvoll.

Edbert (EvanE)

Ja hier tritt das mit den Sonderzeichen Licht nur auf der Autbahn auf, dafür ist 80% der Zeit (speziell Montag morgen und Freitags nachmittags) allerdings eine Geschwindigkeit angeschlagen, die von 40-130 variiert (ja, 40… hab ich bisher 1x erlebt und mich drüber gewundert, dass das Teil so ne kleine Zahl überhaupt darstellen kann) :smiley:

ok, hab grad nochmal bei Wikipedia nachgeschaut… maxspeed:wet ist wohl besser dafür geeignet, da der Zusatz eben das Schild 1052-36 ist:

73x in Deutschland
maxspeed=signals 811x in Deutschland (+95x maxspeed:signals=yes, da werde ich aber mal schauen, ob man das vielleicht auf ersteres anpassen sollte).
Für zeitabhängige Geschwindigkeitsvorgaben werden geschätzte zwei Dutzend Systeme verwendet, die meisten davon halte ich für eher unbrauchbar, weil sie zu keinem sonst verwendeten Schema passen. Das einzige mir bekannte Proposal, das sich mit sowas beschäftigt, ist das oben genannte, das allerdings auch keine Antwort gibt, wie bei verschiedenen maxspeeds Zeiten anzugeben sind. Eventuell könntest du :night nehmen, allerdings bezieht sich das ja wohl auf die gesamte Nacht, also wesentlich mehr, als bei der von dir beschriebenen Situation. Scheint mir trotzdem das näheste zu sein.

Hio…

Hab gradmal geschaut, es wurde (in Hof, Ernst-Reuther-Straße) so gelöst:
maxspeed:time[0000-0600]=40

Edbert, welchen Info-Gewinn hast du denn? Die Beschränkung geht auf der Autobahn, wo ich diese Zeichen bisher gesehen hab, geht von 60 bis unbeschränkt und man weiß nie, wann was angezeigt wird. Das hängt ja von der Verkehrsdichte an.

Zumal diese Signalanlagen nicht unbedingt nur Geschwindigkeitsbeschraenkungen signalisieren (Fahrspur wechseln, Fahrspur gesperrt, Ueberholverbot fuer LKW, Glaettegefahr usw.)

aighes: also maxspeed=no/gar kein flag find ich da aber “falscher” als maxspeed=signals… Ich weiß auch nicht, ob und falls ja, wie es von Navis umgesetzt wird, allerdings sind die Anlagen physisch da und gehören dazu, weswegen ich das schon als sinnvoll erachten würde…

[edit]
Die was ich meine zeigt nur Geschwindigkeitsbegrenzungen und optional ein LKW Überholverbot…

@aighes: Die Information, dass dort (zumindest zeitweise) eine Geschwindigkeitsbeschränkung ist. Welche Information auch sonst. Was man damit nun anfängt, ist Sache des einzelnen - aber es ist eine Information und es entspricht der Wirklichkeit (die wir nunmal abbilden) um Längen besser, als einfach nichts zu taggen.

@c0bRa: Das ist eine der verwendeten Varianten, wird 35 mal so verwendet. Dann gäbe es noch maxspeed:time= (1x), maxspeed:hour_on/off (76x), maxspeed: (1x) und maxspeed::hour_on/off (2x). Wie gesagt, mir gefällt keines davon wirklich gut, vor allem, weil es wohl zu keinem ein Proposal gibt. Aber das von dir genannte erscheint mir noch relativ sinnvoll zu sein.

Es heißt maxspeed:wet und nicht maxspeed:rain.
Es kann ja auch grad aufgehört haben zu regnen und trotzdem Wasser auf der Straße stehen.

errt: mit der Lösung wie sie derzeit ist kann ich mich als Informatiker auch nicht grad anfreunden, da es eigentlich Werte im Schlüsselnamen beinhaltet…

Mir ist gradwas im Kopf rungesponnen im Sinne von:

**maxspeed=60 **oder maxspeed:time:0=60 (wobei maxspeed als default wert mir sinnig erscheint, da navis sicherlich erstmal den zu rate nehmen werden…)
maxspeed:time:1=40
maxspeed:time:1:begin=00:00
maxspeed:time:1:end=06:00

Hätte den Vorteil, dass man alles per Wert übergeben kann, meinetwegen beliebig viele Geschwindigkeiten angeben könnte. Mit maxspeed:hour_on/off kannst du ja weiterhin nur eine geschwindigkeit abbilden, nämlich die maxspeed, was wiederrum im Falle der Ernst-Reuther-Straße keine Lösung wäre…

[edit]
Das mit maxspeed:rain habe ich auf maxspeed:wet angepasst, ich ändere noch den Titel ab, da das Problem bereits geklärt ist…

[edit 2]
Eine Vorschlag nach dem Arrayprinzip wäre wohl auch:
maxspeed=60
maxspeed:time[1]=40
maxspeed:time[1]:begin=00:00
maxspeed:time[1]:end=06:00
maxspeed:time[2]=50
maxspeed:time[2]:begin=06:00
maxspeed:time[2]:end=10:00
ist nun ein konstruierter Fall, würde aber alle Schildbürgerstreiche zulassen… :wink:

Evtl. wäre eine Relation für den Abschnitt sinnvoller…ist auf jedenfall übersichtlicher als solche time-Konstrukte.

Die Frage ist: Wie soll die aussehen? Auch bei den Tags für die Relation hätte man ja ähnliche Probleme. Oder soll das pro möglicher Höchstgeschwindigkeit eine Relation werden? Das wäre zwar möglich, aber ob es wirklich übersichtlicher wäre?

So, erst mal ein Link auf meine Lösung für (unter anderem) zeitabhängige maxspeeds, für die es auch ein Proposal gibt:

http://wiki.openstreetmap.org/index.php?title=Proposed_features/Extended_conditions_for_access_tags

Sieht dann z.B. so aus
maxspeed:(07:30-17:00) = 80
und ist insofern mit der Lösung “maxspeed:time[0000-0600]” vergleichbar, hat aber den Vorteil, nicht noch ein neues Format für Zeitintervalle zu erfinden - wir haben schließlich schon eins für die Werte von opening_hours definiert, also warum nicht einfach das nehmen?

Das Konzept hat meines Wissens auch keine praktischen Schwächen. Es kann, anders als hour_on/off auch mehrere Intervalle ausdrücken und ist gedanklich konsistent mit maxspeed:wet, maxspeed:hgv usw., die ja schon einigermaßen etabliert sind.

Diesen Einwand hier hört man allerdings wirklich öfters - scheint eine gängige Reaktion des “Informatiker-Instinkts” zu sein. :wink:

Ich möchte allerdings zu bedenken geben, dass du auch mit einer Array-Lösung “Werte” im Schlüsselnamen hast, nämlich eine Ganzzahl.

Ja richtig :wink:

Eine Ganzzahl und keinen String in runden Klammern (welcher je nach ländlichem Format noch verschieden aussieht) :wink:

Vielleicht denk ich auch (als Programmierer) zu sehr in Objekten und Eigenschaften verschachtelt. Da ich aber eh erst ne gute Woche hier unterwegs bin, frag ich lieber im Forum und lass mich belehren :wink:
Wegen den Uhrzeiten werd ichs einfach mal so lassen, bis da sich was einheitliches einschleicht… :slight_smile:

Erst einmal ist diese verkehrsabhängige Signalanlage einfach mal da.
Das allein ist schon ausreichend, um das in die OSM-Daten aufzunehmen.

Zweitens weis ich, dass es dort zu den meisten Zeiten Beschränkungen gibt.
Wobei 120 km/h z.B. heißt: Der Verkehr geht einigermaßen flüssig.
Entsprechend heißt 80 km/h: Dichter Verkehr
Noch niedrigere Geschwindigkeiten deuten auf Probleme im weiteren Verlauf hin.

Die Signalanlagen die ich kenne (A4 Köln-Aachen, Teile der A61 Köln-Meckenheim)
können für jede Fahrspur die Geschwindigkeit angeben. Zwischen je zwei Fahrspuren
ist Platz für ein weiteres Schild (Stau, Regen, Schnee, …)
Das ist, sobald man den Ärger über das Limit verdaut hat, ein echter Komfort-Gewinn.

Edbert (EvanE)

Tja, unendlich viele mögliche Werte hat beides. :wink:

Aber ich glaube, ich hole etwas weiter aus, weil das Thema inzwischen schon ziemlich oft diskutiert wurde - nur um das mal in einen Kontext zu stellen. Letztlich steht man dabei immer vor der gleichen Herausforderung: Man will, so interpretiere ich das jedenfalls, letztlich Attribute an andere Attribute “anhängen”. Also so:

maxspeed = 80
→ wennVerkehrsmittel = hgv
→ wennZeit = Sa,So

Nun hat user Datenformat aber keine technische Unterstützung für hierarchische Tags. Also muss man sie irgendwie simulieren, und letztlich tun alle Vorschläge genau das - nur mit unterschiedlichen Mitteln. Gängige Ideen sind etwa:

  • Sub-Tags in den Schlüssel mit reinpacken
  • Sub-Tags in den Wert mit reinpacken
  • mehrere Tags miteinander verbinden, etwa durch einen numerischen Index
  • alle Tags einer Gruppe/Hierarchie gemeinsam in eine Relation auslagern

Jede einzelne dieser Lösungen ist ausdrucksstark genug, um das Problem zu lösen. Keine ist 100% “schön” (obwohl es sicher individuelle ästhetische Vorlieben gibt), denn sie sind alle nur Workarounds. Jede ist außerdem automatisch in jede andere transformierbar.

Ich habe deshalb eben irgendwann beschlossen, einfach mal eine davon (“Bedingungen” im Schlüssel) in Form der beiden Proposals “Conditions for access tags” und “Extended conditions for access tags” aufzuschreiben. Damit kann man das zumindest erst einmal aufschreiben und auswerten - die Möglichkeit, die API zu ändern, habe ich schließlich nicht.

Ach ja:

Zeitintervall-Syntax wird momentan eigentlich ebensowenig übersetzt wie englische Tags.

ok :slight_smile:

Was ist eigentlich der Trick um Relationen einigermaßen in den Griff zu kriegen? Ich hab da irgendwie so ne Lieblingskreuzung, der ich beibringen will, dass das Stopschild nur von einer Straßenseite gilt. Er zeigt mir zwar im JOSM trölfmilliarden Relationen, wenn ich auf den Node geh, aber welche dafür nun für die Vorfahrt oder so sind, blick ich nicht wirklich. Gibts da ein Addon, wo man sich Kreuzungsrelationen einigermaßen Benutzerfreundlich anschauen kann?