Am 06.09.2010 16:22, schrieb Tom Müller:
Hallo,

und noch eine Frage zu den Stadt und Stadtteil-Polygonen.
Ich lese die der Reihe nach ein, aber wenn ich sie dann zeichne,
überlappen sich die Grenzen kreuz und quer. Es scheint, als stünden die
in beliebiger Reihenfolge in den Daten.
Es gibt in OSM keine definierte Reihenfolge von Objekten, außer deren Erstellungsreihenfolge.

Einigen Objekten wie Brücken oder Tunnels weisen wir über den layer-Tag eine explizite Reihenfolge zu, dies ist aber auch nicht mehr als ein Not-Behelf.

Nun zunächst: stimmt das, oder lese ich falsch ein?
und wenn es stimmt, gibt es da bereits einen Ansatz zu wie man die Daten
sortiert bekommt?

Ich vermute, dass du den Maleralgorithmus [1] (painter's algorithm) implementiert hast. Damit du die Polygone einfach übereinander zeichnen kannst musst du sie, wie du bereits festgestellt hast, anhand eines Kriteriums vor-sortieren. Dafür würde sich bei boundary=administrative das admin_level eignen.

Zuerst werden grenzen mit admin_level=2 gezeichnet (Deutsche Außengrenze), danach admin_level=4 (Bundesland) usw.

Dies funktioniert aber nur, so lange du nur Grenzen zeichnen willst. Für andere Polygone musst du dir andere Eigenschaften überlegen, nach denen du diese sortieren willst. Eine universelle Möglichkeit wäre z.B. eine Sortierung nach Flächeninhalt.

Lg, Peter



[1] <http://de.wikipedia.org/wiki/Maleralgorithmus>

_______________________________________________
Talk-de mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/talk-de

Antwort per Email an