OpenStreetMap

Dafür gibt’s ja, wenn ich das richtig einschätze, zwei grundlegende Fraktionen mit jeweils verschiedenen Ausprägungen. Kurz:

Snapper und nicht Snapper.

Um so länger ich mich mit der Problematik beschäftige, um so mehr merke ich, wie unbefriedigend beide Ansätze sind.

Da der Grundsatz sein sollte, die Wirklichkeit abzubilden, muss man meiner Ansicht nach auch Flächen, Linien und Punkte miteinander in Beziehung setzen, wenn diese in der Realität eine solche besitzen.

Anfangs hab ich gnadenlos alles gesnappt was mir vor die Maus kam, bis ich gemerkt hab, das das Probleme gibt, wenn zwei Linien miteinander um eine Grenzfunktion konkurrieren.

Wenn etwa ein Friedhof direkt an einer Straße endet und man den Zaun der diesen umgibt auch eintragen möchte, kann man schlecht den Zaun und die Straße in eine Linie eintragen, die beiden Tags vertragen sich nicht.

Kurzum, man muss sich Gedanken machen, welche Flächen, Punkte und Linien man wie miteinander verbindet.

Am einfachsten ist es, sich vorher zu fragen, was die Flächen überhaupt aussagen die man tagt, und was diese Flächen begrenzt:

Landuse-Flächen

z.B. sind m.E. i.d.R. sehr allgemeine Flächen, welche den Charakter eines bestimmten Gebietes beschreiben. Industrial etwa Industriegebiete, Residential - Wohngebiete. Solche allgemeinen Flächen grenzen nach meiner Auffassung direkt aneinander und begrenzen sich damit gegenseitig. Trennt die Flächen eine Straße, ein Weg, ein Bach oder ein Zaun, so fungiert diese Linie gleichermaßen als Grenze und sollte dementsprechend mit beiden Flächen gesnappt werden. Lücken dazwischen zu lassen, aus welchem Grund auch immer erscheint mir sehr willkürlich. Zumindest in Deutschland ist quasi jeder Quadratzentimeter einem Landuse zuordenbar. Es gibt - mit Ausnahme von NSG und Nationalparks vielleicht - keine Flächen die nicht in irgendeiner Weise genutzt wären.

Präzise Flächen

wie etwa Gebäude oder Parkplätze building=* oder amenity=parking

sind differenzierter zu betrachten. Gebäude snappe ich persönlich nur ungern an highways, da dies bedeuten würde, das die geteilte Linie beide Funktionen aufweist, was i.d.R. kaum der Fall sein dürfte, im Gegensatz zum Landuse.

amenity=parking / parking=surface snappe ich oft direkt an Straßen, wenn diese nur durch einen Fußweg und/oder ein wenig Straßenbegleitgrün von der Straße abgehoben sind.

Flächen, welche eine eigene Grenze in Form etwa von barrier=fence oder barrier=hedge aufweisen, bekommen diese als Grenze gesnappt. Die Beziehung bzw. Distanz zwischen Straße und Fläche wird durch den darunter liegenden Landuse, und highway=* Verbindungen wie highway=service oder darauf führende Fußwege hergestellt.

to be continued…

Discussion

Comment from escada on 18 September 2013 at 11:50

Sorry, but I’ve always heard that it is a big no-no to have areas tagged with landuse=* share nodes with highway=* One of the reasons is that highways are represented as lines and not as areas, although they have a width.

p.s. sorry for the English reply

Comment from escada on 18 September 2013 at 11:53

Sorry, but I’ve always heard that it is a big no-no to have areas tagged with landuse=* share nodes with highway=* One of the reasons is that highways are represented as lines and not as areas, although they have a width.

p.s. sorry for the English reply, I can more or less read German, but not write it.

Comment from lasstmichinruhe on 18 September 2013 at 13:33

Dazu gibt es mehrere Auffassungen, ich glaube das Problem ist noch nicht wirklich gelöst. Ich versuche mich mal an einer Erläuterung, wenn du was nicht verstehst, frag nach.

landuse=xy bildet relativ allgemein die - auf deutsch - Landnutzung ab. Diese Landnutzung charakterisiert die jeweiligen Gebiete. Begrenzen kann eine Landnutzung NUR eine andere Landnutzung, die Bezeichnung lässt nichts anderes zu. Alles andere muss drübergelegt werden. Der Grund warum ich glaube, das highway=xy an Landnutzung gesnappt werden kann ist rein logischer Natur: Wenn in dem Bereich wo zwei Landnutzungen aneinander grenzen, etwa ein Wohngebiet und ein Feld, eine Straße verläuft, dann trennt diese Straße beide Flächen, dennoch geht das Feld bis zur Straße, ebenso wie das Wohngebiet. Wenn Landnutzung überall existiert, und davon gehe ich aus, muss landuse & landuse gesnappt werden. Zieht man dann die Straße als Linie hindurch, verläuft sie entweder links oder rechts des Kontakts der beiden Flächen oder mal links mal rechts, völlig willkürlich. Korrekt abgebildet wird es nur, wenn die Nodes der Linien an die Nodes der Flächengrenzen snappt. Straßen haben natürlich eine “Breite”, die wird ja auch in allen Karten die ich kenne korrekt gerendert. Aber solange die Straßen als Linie und nicht als Fläche gemapt werden, oder es einen landuse=traffic_area gibt in die man die highways einbetten kann, so lang muss man highways und landuse aneinander snappen, alles andere wäre Willkür und hätte nichts mit der Realität gemein. Man sind die Anglizismen anstrengend. ^^

Log in to leave a comment