placement bitte um Erklärung

Kann mir das einer mal in kurzen Worten erklären. Immer wenn ich ein System zu erkennen mag, ist es beim nächsten mal doch wieder anders. Die Wiki ist da auch eher wirr. Was ich nicht verstehe, warum es da backward und forward gibt, im Prinzip müsste man das doch immer in eine Richtung der des Vektors sehen. Ich habe eine zweispurige die zu einer dreispurigen wird. Also wird die dreispurige entweder eins nach links oder rechts versetzt. Also placement right oder left +1. So ist es aber nicht, oder die Umsetzung in JOSM ist falsch.

So wie ich das verstehe (hab da auch ewig gebraucht und bin mir immer noch etwas unsicher…)

placement beschreibt, wo der OSM Weg in Bezug auf die realen Fahrbahnen liegt. Gezählt wird wie bei turn:lanes von links nach rechts 1/2/3/usw.

Gegeben sei eine 3-spurige Autobahn, wo der OSM-Weg direkt mittig auf die Mittelspur (Normalfall) gemalt ist:
middle_of=2

Gegeben sei eine 3-spurige Autobahn, wo der OSM-Weg auf die linke Spur gemalt ist:
middle_of=1

Gegeben sei eine 3-spurige Autobahn, wo der OSM-Weg auf die rechte Spur gemalt ist:
middle_of=3

das selbe gilt für left und right, mit dem Unterschied, dass dort der OSM-Weg nicht auf dem vorgesehenen Fahrweg liegt sondern auf den aufgemalten Linien dazwischen.

Das ganze “schöne” System ist allerdings recht anfällig für Anfänger, sofern man den OSM-Weg nicht in die Mitte der (komplett-)Strasse malt.

Edit: backward und forward ist mir auch nicht wirklich klar, wozu man das braucht.

Es wird einfach angeben, auf welcher Spur welcher Fahrtrichtung der Weg in OSM liegt.
Ich würde empfehlen in JOSM mal den Kartenstil für “Fahrspur- und Straßenattribute” zu aktivieren, dann kannst du dir das live anschauen:

Von links nach rechts:

  • Kein placement
  • placement:forward=left_of:3 (der OSM-Weg liegt links der dritten Fahrspur in Vorwärtsrichtung, identisch zu right_of:2)
  • placement:forward=right_of:3
  • placement:backward=right_of:2 (diese Fahrspur existiert gar nicht, deswegen liegt der OSM-Weg außerhalb der tatsächlichen Straße. Unter Umständen kann das aber nützlich sein wenn der Weg sich aufgabelt.)
  • placement:backward=left_of:1 (häufig anzutreffen wenn der Weg der Mittelline folgt und vor Kreuzungen kurz zusätzliche Spuren auftauchen

:forward und :backward sind da, weil es einfacher ist die Spuren nur in einer Fahrtrichtung zählen zu müssen. Im letzten genannten Beispiel ist deswegen immer left_of:1 richtig, egal wieviele Spuren die Straße wirklich hat.

Der Vollständigkeit wegen: placement (proposed feature!)

Auch wenn es manchmal praktisch sein mag, sollte man es so nicht verwenden, da es die Daten für Anwendungen, die placement nicht auswerten, völlig verhunzt. Mit area:highway wäre es auch nicht kompatibel, da der Weg nicht durch die Fläche führt. Allerdings halte ich weder placement noch area:highway für ausgereift. Da die Breite der nicht existenten Spur nicht definierbar ist, wäre die Lage auch undefiniert.
Im Proposal scheint diese Verwendung aber auch nicht vorgesehen zu sein.

Anders sieht es aus, wenn placement:start oder placement:end verwendet werden, um die Positionierung des ersten oder letzten Knotens zu beschreiben. Dann sind die vorstehenden Probleme nicht vorhanden und es ist die Möglichkeit, eine Kontenposition außerhalb der vorhandenen Spuren zu beschreiben, extrem wichtig. Dies sollte dann aber auch deutlich erkennbar sein. Hier würde sich zum Beispiel -1 oder +1 als Bezeichnung einer Spur links oder rechts außerhalb der im OSM-Weg vorhandenen Spuren anbieten. Dies wäre dann aber keine rein virtuelle Spur, sondern eine Spur des anschließenden OSM Weges.

Forward bzw. backward werden hierbei eigentlich unsauber verwendet, da sie sich ja nur für eine Fahrtrichtung gelten sollten, hier aber auch die Lage der Spuren in der entgegengesetzten Richtung mit beschreiben.

So wie das Proposal aufgesetzt ist, mag dies als Vereinfachung erscheinen, allerdings kann man dies anders logischer und universeller erreichen. Bei Wegen mit zwei Fahrtrichtungen ist die logische Position des OSM Weges wohl zwischen den beiden Fahrtrichtungen. Dazu hatte ich in der Diskussion zum Proposal das Tag “placement=separation” vorgeschlagen. Im Gegensatz zum Workaround mit “:forward” oder “:backward” hat man damit auch bei Linksverkehr ein festes Tag für diese häufige Positioierung.

Wenn man meint, für Wege mit zwei Fahrtrichtungen noch andere Positionierungen zu benötigen, sehe ich nur noch in der Positionierung des OSM-Weges in Straßenmitte einen gewissen Sinn, wobei Straßenmitte sich auf die Gesamtbreite oder die Gesamtanzahl der Spuren beziehen mag. Dazu könnte man dann z.B. “placement=middle_of:width” beziehungsweise “plachement=middle_of:lanes” verwenden.

Spurnummern muss man dann eigentlich nur noch bei oneway verwenden, wo forward und backward nicht nötig sind.

Das ist auch genau der Zweck den ich meinte - ich wollte hier nur nicht auch noch direkt mit start/end anfangen.

MKnight, will das ich hier weiter mache. :wink:
Im Wiki steht, dass es sich bei placement nicht um lane connectivity handelt. Heißt das, dass man dadurch nicht erfassen kann, ob man bspw. die Spur wechseln muss wenn man abbiegen will oder ob man auf der derzeitigen bleiben kann wenn es von einspurig auf zweispurig oder vergleichbar aufweitet?

Hat jemand eine Idee, mit was man dann diese lane connectivity erfassen kann?

geht um dieses Bild: http://www.medoc-notizen.de/resources/Kreuzung-rechts-.jpg

Dazu gibt es ein Proposal: http://wiki.openstreetmap.org/wiki/Proposed_features/transit
Allerdings ist das nur in den allerseltensten Fällen nötig, weil die schon vorhandenen Informationen ausreichen alle Beziehungen zu rekonstruieren. Z.B. wenn eine Straße nach links abzweigt und vor der Kreuzung gibt es eine Spur mit turn=left, dann ist schon gesagt, dass man auf diese Spur wechseln muss. Bei Linksabbiegerspur + eine gemeinsame Spur für geradeaus+rechts würde ich standardmäßig immer davon ausgehen, dass die Linksabbiegerspur neu anfängt und die Geradeaus-Spur durchgehend ist.
In dem Beispielbild von MKnight würde es z.B. auch reichen wenn die Sperrfläche korrekt erfasst würde… aber dafür gibt es leider noch kein komplettes Taggingmodell.

**Wie soll eine Anwendung die den Key placment nicht auswertet Daten völlig verhuntzen ? **

@slhh, könntest du uns mal eine solche Anwendung nennen ?

Lies das statement von slhh mal komplett mit dem davor zitierten Teil im Post #6 in diesem Thread. placement:right_of:2 an einer einspurigen Straße macht nur Sinn zusammen mit :start oder :end, sonst sollte man den Weg einfach verschieben.

Zum angefragten Problem von Yokr und dem verlinkten Bild.

Für mich fangen die drei Spuren am Beginn der Sperrfläche an und die Sperrfläche wird mit access:lanes:forward=no|yes oder access:lanes:backward=no|yes gemappt. Damit wird dargestellt, dass ich eine Erhöhung der Anzahl der Spuren habe, diese aber auf Grund der Sperrfläche noch nicht nutzen darf und daran schliesst sich turn:lanes… an und die Linksabbiegerspur kann dann nur durch einordnen nach links erreicht werden.

Wir müssten also nichts neu erfinden.

@mueschel

Auf die Idee an eine einspurige Straße placement:right_of:2 zu taggen bin ich noch nicht gekommen, ich habe einspurige Straßen bisher da gemappt wo sie laut bing-Luftbild lagen.

Dafür ist transit bzw. transit:lanes gedacht. Leider komme ich gerade nicht auf die Wiki, weshalb ich dir momentan keinen Link liefern kann. Für das Beispielbild wäre dann z.B. transit:lanes:forward=new_on_left richtig, wenn der highway in Richtung auf den Betrachter zu erfasst ist.
hth

edit:
Ich vergaß zu erwähnen, dass transit* an das Wegstück in Fahrtrichtung vor Beginn der neuen Spur kommt, bzw. bevor eine Spur endet.