DE:Coastline/Trennen

From OpenStreetMap Wiki
Jump to navigation Jump to search

Küstenlinien sind in OSM oft fälschlicherweise mit Grenzen vermischt.

Wenn sich nun eine Küstenline ändert, aber nicht die Grenze, oder
wenn sich die Grenze verändert, aber nicht die Küstenlinie,
dann müssen die Linien aufgetrennt werden und die entsprechend zugeordneten Attribute und/oder Relationen ebenfalls,
und anschliessend müssen die Attribute/Relationen den neuen Linien richtig zugeordnet werden.

Diese Anleitung erklärt, wie man das macht:

Überblick über die Situation

Dieser Weg hat

5 Attribute, die in Bezug zur Verwaltungsgrenze stehen (gelb markiert)
1 Attribut, dass die Küstenlinie markiert (grün markiert)
1 Attribut für die Quelle, wobei wir nicht wissen, worauf sie sich bezieht

Diese Linie liegt zusätzlich in vier Relationen (blau markiert).

Linie aufspalten und neue Linie

Wir suchen uns zwei Punkte, zwischen denen Grenze und Küstelinie nicht mehr auf einer Linie verlaufen (oder weniger, wenn es für uns sonst zu unübersichtlich wird). (Dafür müsste man jetzt wissen, wo die Grenze eigentlich korrekterweise verläuft…)

Wir markieren diese beiden Punkte (orange markiert) und die Linie und spalten die Linie auf (Taste „p“). (Da diese Linie direkt auf der Küstenlinie liegt, soll diese nachher nur das Küstenlinientag tragen). Für die neue Grenze erstellen wir ausgehend von diesen Punkten eine neue Linie möglichst auf der korrekten Grenze:

Tags kopieren

Der Einfachheit halber kopieren wir erst einmal alle Tags von der alten Linie auf die neue (alte markieren und STRG+C, neue markieren und STRG+UMSCHALT+V) und entfernen von beiden Linien die jeweils überflüssigen Tags. Was man in diesem Fall am besten mit dem Source-Tag macht, weiß ich auch nicht, weil mir die Info fehlt, auf welche Tags sich die Quellenangabe bezieht.

Entfernen und Hinzufügen zu Relationen

So, jetzt kommt das, was dich vermutlich am meisten interessiert ☺ Am einfachsten ist es nun, wenn wir Relation für Relation durchgehen und dann in einem Schritt das neue Grenzstück hinzufügen und das alte entfernen. Dies sind in diesem Fall vier Grenzrelationen Dazu markieren wir beide Linien und rufen den Relationeneditor für die erste Relation auf (machen das natürlich nacheinander mit allen Relationen):

Zum einen zählt der Relationeneditor in der rechten Spalte nun alle Elemente auf, die wir gerade in JOSM markiert haben (egal, ob diese nun Mitglied der Relation sind oder nicht – Mitglieder werden noch mal grünlich markiert wie auch unsere alte Linie). Sind markierte Elemente Mitglied der Relation, werden sie in der rechten Spalte im Relationeneditor beim Öffnen des Editors ebenfalls ausgewählt (siehe oben) und sind ansonsten ebenfalls grünlich markiert. Praktisch ist, dass man beliebige Linien und Punkte in JOSM markieren kann während der Relationeneditor geöffnet ist und dieser auch darauf reagiert. Wir markieren also zunächst noch einmal nur die neue Linie und fügen sie der Mitgliederliste durch einen der vier oberen Buttons links neben der rechten Spalte hinzu (z.B. mit dem blau markierten Button). Wollen wir die Position in der Mitgliederliste ändern können wir das mit den beiden oberen Symbolen links von der linken Spalte tun (grüner Rahmen); dies ist bei manchen Relationen notwendig weil hier explizit die Reihenfolge ausgewertet wird. Als Rolle tragen wir wie auch bei den anderen Mitgliedern „outer“ ein. Nun markieren wir die alte Linie in JOSM, so dass wir anhand der Markierung im Relationeneditor wissen, welches Mitglied wir nun löschen müssen. Wir markieren das grünlich hervorgehobene Mitglied und löschen es durch den Button mit dem Mülleimer; die Linie wird nur als Mitglied der Relation entfernt und nicht insgesamt. Mit Ok geht es zurück. Und das machen wir nun für jede der vier Relationen, da es alles Grenzrelationen sind (hier muss man in anderen Konstellationen aufpassen, weil z.B. auch ein Landschaftsmultipolygon diese Linie als Teil seines Umrisses benutzen kann und das würde dann ja bis an eine Küste herangehen). Aso: Vorhin hatten wir ja die Linie gespaltet. Das war vorher ein langes Stück und auch in dieser Relation als Mitglied. Mit dem Spalten hat JOSM automatisch die neuen Stückchen in die Mitgliedsliste aufgenommen.

Redundante Tags löschen

Schaut man nun genau hin, sieht man, dass die neue Mitgliedslinie und die Relation redundante oder sogar widersprüchliche Tags besitzen. Eigentlich sollten Tags, die für alle Mitglieder einer Relation gelten, nur an der Relation stehen und nicht an den Mitgliedslinien. In diesem Fall z.B. das Tag admin_level, aber auch die Tags *:right sind ja letztendlich durch die verschiedenen Relationen abgedeckt. Da es mittlerweile Konsens zu sein scheint, source-tags nicht mehr an Elemente sondern ans gesamte Changeset zu hängen, können wir alle Attribute der neuen Grenzlinie entfernen. Bei mir sieht das jetzt alles wie folgt in JOSM aus:


(Grenzlinie markiert)


(Küstenlinie markiert)