Maxspeed, Fortsetzung

hier bitte den Thread fortsetzen
http://forum.openstreetmap.org/viewtopic.php?pid=264259#p264259

Ich erfasse das auch wenn es u.U. aus dem Kontext erkennbar wäre. Allerdings muss ich zugeben, dass “mein” Städtchen auch nicht ganz vollständig ist

rein theoretisch kann die Software das automatisch berechnen "Ist hier Stadtgebiet? in welchen Land bin ich? → maxspeed=x. Aber das macht mWn keine.
also lieber erfassen.

gruss
walter

@thomas: ich hab mal versucht, dein osmosis-Problem mit TagTransform anzugehen, aber das Teil macht Probleme beim Installieren. Build geht auch nicht so einfach. da gibt es Versions-Konflikte und weiss der Geier sonst noch.

Noch ein Schmankerl: http://www.spiegel.de/fotostrecke/schraege-schilder-schnappschuesse-von-bizarren-verkehrsschildern-fotostrecke-85334-9.html zum Thema MaxSpeed. Der Rest ist aber auch nicht zu verachten

Ich habs jetzt im Groben so gemacht. Kannst ja mal auf der Karte schauen, obs geklappt hat. Ich denke aber schon

osmosis --read-pbf germany.osm.pbf --tf accept-ways maxspeed=* maxspeed:forward=* maxspeed:backward=* --tf reject-relations --used-node --write-xml ~/maxspeed/maxspeedfb.osm

…und

update osm_line set maxspeed = “maxspeed:forward” where “maxspeed:forward” is not null and maxspeed is null;
UPDATE 3168
update osm_line set maxspeed = “maxspeed:backward” where “maxspeed:backward” is not null and maxspeed is null;
UPDATE 582

ALTER TABLE osm_line DROP COLUMN “maxspeed:forward”;
ALTER TABLE
ALTER TABLE osm_line DROP COLUMN “maxspeed:backward”;
ALTER TABLE

Wer es selber machen will, sollte dran denken maxspeed:forward und backward ins osm2pgsql-Style aufzunehmen (und ggf die anderen nicht benötigten EInträge dort zu löschen)

sehr quick und sehr dirty - aber genau das richtige Ergebnis!

Danke
Walter

Für die Kollegen hier nochmal der Link zur Maxspeed-Karte: http://suncobalt.dyndns.org:82/maxspeed.php?zoom=9&lat=48.51432&lon=10.43152&layers=TB

Bitte keine maxspeed taggen, wo sie mit dem Default identisch sind! Wir taggen ja auch nicht überall bridge=no und ruins=no. Die Defaults stehen hier: http://wiki.openstreetmap.org/wiki/OSM_tags_for_routing/Maxspeed Daran sollte sich auch jede Anwendung (Router) halten. Genauso wie an die auf http://wiki.openstreetmap.org/wiki/OSM_tags_for_routing/Access-Restrictions definierten Berechtigungen.

Wenn jemand maxspeed=50 im Ortsgebiet, maxspeed=100 auf Freilandstraßen usw. setzt, bringt er damit keine neue Information ein, sondern eine Falschinformation. Denn wenn z.B. mal die Grünen in die Regierung kommen und im Ortsgebiet 40 und auf Freilandstraßen 80 einführen, bleiben die expliziten 50er und 100er in OSM bestehen. Ein automatischer Update ist nur dann möglich, wenn zusätzlich source:maxspeed=DE:urban/AT:rural/etc. gesetzt ist.

Bei highway=trunk/primary/secondary/tertiary und _link im Ortsgebiet muss man allerdings maxspeed setzen, weil bei diesen Straßen das Freilandlimit Default ist. Grundsätzlich gibt es 2 Möglichkeiten:

  1. maxspeed=50 + source:maxspeed=:urban
  2. maxspeed=:urban

Ich würde die zweite Variante bevorzugen, weil sie erstens einfacher zu taggen ist und zweitens flexibler ist (z.B. andere Beschränkungen bei Nacht, wie in der Slowakei). In AT ist allerdings die erste Variante Konvention, weil man sich bei einem Stammtisch vor ein paar Jahren dummerweise darauf geeinigt hat.

Mal aus der Sicht des Auswärters:

Bei einer Straße ohne maxspeed-Tag läuft die Auswertung auf ein Raten hinaus. Ich kann ermitteln, in welchem Land sie sich befindet, aber nicht, ob sie innerorts ist oder nicht. Daher ist es sehr sinnvoll, wenn man zumindest dies einträgt. Auch wenn das der Default ist. Denn eine konkrete Info darüber macht das Raten überflüssig und sorgt für Sicherheit. Ebenso haben andere Mapper eine Rückmeldung, dass jemand diese Info ermittelt hat.

Der Auswerter tut sich leichter mit Variante 1.

Es ist leider aufgrund der Datenlage nicht einfach festzustellen, ob eine Straße innerhalb oder außerhalb einer Ortschaft liegt. Ortschaften im Sinne der StVO stimmen nun einmal nicht mit den administrativen Grenzen überein.

Fakt ist, dass es auf Innerortsstraßen eine Beschränkung der Höchstgeschwindgkeit gibt. Also kann man das auch mappen. maxspeed:source=* ist bei diesen impliziten Beschränkungen sicher sinnvoll.

Ich finde es sinnvoller einen klaren nummerischen Wert zu setzen und die Quelle dafür getrennt zu erfassen. Damit kommen auch Auswerte-Programme klar, die einen Text statt einer Zahl nicht verarbeiten können. In dieser Hinsicht ist das universeller.

Edbert (EvanE)

-1
Ich glaube Du hast noch nie nen Router programmiert.

Die Begründung von fkv, weshalb maxspeed nicht gesetzt werde sollte, finde ich nachvollziehbar.
Damit für andere sichtbar ist, dass die Geschwindigkeit schon erfasst wurde, sehe ich auch den Vorteil, wenn man irgendwie :urban taggt.
Das kannte ich noch gar nicht.
Ob Methode 1 oder 2 ist mir eigentlich egal, von mir aus kann man sich an den Österreichern orientieren, auch wenn es etwas mehr Arbeit ist.
Gibt es so etwas auch für 30iger-Zonen?

Ich dachte es sei Konsens, dass man in maxspeed einen numerischen Wert einträgt und eine Erläuterung
in source:maxspeed (zB. source:maxspeed=DE:urban). Gottseidank ist es laut taginfo zur Zeit noch so.

ich habe mal drüber nachgedacht. Aber ich finde keine Möglichkeit festzustellen, ob eine Straße innerorts oder ausserorts ist…nicht mal theoretisch. Insofern halte ich die Argumentation von fkv in diesem Punkt für falsch. Man sollte es taggen.
Er hat aber recht damit, dass sich Standards ändern können. Ich kenne ein Land, wo sich in den letzten Jahren die max-Geschwindigkeit innerorts geändert hat. Da wäre ein source sicherlich hilfreich. Bei Standards, die unterschiedliche Geschwindigkeiten vorsehen, wie er sagt Slowakei bei Tag vs Nacht, kann man nur hoffen, dass sich irgendeins der beiden extended condition Proposal (oder ein anderes) sehr bald durchsetzt.

Ähm, wie wäre es mit (Hervorhebung durch mich) …

Diese Art von Werten in maxspeed zu schreiben ist jetzt zwar wirklich keine gute Idee, weil es nur unnötige Konflikte mit dem numerischen maxspeed-Tagging produziert. Aber das Konzept, statt z.B.

maxspeed=50 + source:maxspeed=DE:urban

eben nur

source:maxspeed=DE:urban

zu schreiben, hat durchaus seine Berechtigung. Es sollte keinen Auswerter ernsthaft vor Probleme stellen, denn weder muss er herausfinden, ob er innerorts ist, noch, in welchem Land er ist. Stattdessen benötigt lediglich eine Tabelle der Defaults in den einzelnen Ländern. Für die Mapper spart es etwas Arbeit, löst es das Problem der Aktualisierung von Verkehrsregeln, und vermeidet auch das detaillierte Eintragen sämtlicher Defaults - was bei abweichenden Höchstgeschwindigkeiten für LKW oder unterschiedlichen Regelungen für Tag und Nacht ja durchaus fehleranfällig ist.

Ich bezog mich auf "Bitte keine maxspeed taggen, wo sie mit dem Default identisch sind! " Er schrieb, dass er bspw bei residential gar nichts taggen will. Sondern das von Dir genannte maxspeed=:urban nur bei “highway=trunk/primary/secondary/tertiary und _link”.
Also nochmal, wie willst Du feststellen, ob sich…und diesmal genauer, eine Straße die nicht trunk/primary/secondary/tertiary und _link ist, innerorts befindet?

Vielleicht ist die Frage blöd, aber kriegst du damit auch die Maxspeed-Tags von so genannten “komplexen” Straßen, also von Straßen, die aus mehreren Ways bestehen und nur auf Relations-Ebene Tags besitzen?

Also ich verstehe nicht ganz, was Du meinst. Sehr viele Straßen bestehen aus mehreren Ways, da man die ja teilen muss, wenn sich eine Eigenschaft ändert. Mir ist noch nie eine Straße untergekommen, bei der Attribute in eine Relation ausgelagert worden sind, die über mehrere Ways/Segmente gehen. Vielleicht hast Du da ein Beispiel, aber so jetzt aus dem Bauch raus, würde ich es nicht unterstützen, dass 08/15 Tags ein eine Relation gehen.

Hm, möglicherweise hatte ich das falsch gelesen. Wenn das tatsächlich so gemeint war, dass z.B. bei unclassified oder residential weder ein numerischer maxspeed, noch ein XX:urban/rural nötig sei, dann stimme ich diesem Aspekt der Aussage nicht zu.

Der Teil meines Posts ab “Aber das Konzept” ist von diesem Missverständnis aber nicht betroffen.

Das ist kein reguläres Tagging, kann man getrost ignorieren.

Sowas hab ich schon gesehen, aber ich erinner mich jetzt nicht wo. :frowning:

Du hast sicher Recht, bei Straßen ist das wirklich selten. Bei Gebäuden findet man es schon häufiger.

noch nicht. Man soll ja bei OSM nie nie sagen. :wink:
Bei Fussgängerzonen die als MP getaggt sind gibt es das ja bereits.

Maxspeed? :wink: Hier darf nur 4 km/h gelaufen werden. Bei Zuwiderhandlungen droht Ordnungsgeld oder ein Punkt.

@ Tobias Ich stimme Dir zu, dass ein Variablenname als Standard theoretisch besser wäre. Nur ist es halt in der Praxis etwas anderes. Vielleicht kommt OSM mal dahin, dass es eine länderspezifische Tabelle gibt, in der die verschiedenen Werte hinterlegt sind.