[Talk-de] Verwendung von Multipolygonen

Willi willis at gmx.de
Sa Okt 20 13:46:05 UTC 2012


On Saturday, October 20, 2012 5:47 AM Stephan Knauss
[mailto:osm at stephans-server.de] wrote:

> Was war denn speziell bei dem Flughafen die Motivation zum Beispiel das
Vorfeld 
> aus der Relation wegzulassen?
> http://www.openstreetmap.org/browse/relation/1442532 
	
Ich habe das Vorfeld (apron) nicht aus der Relation weggelassen sondern es
als inneres Mitglied (inner) derselben aufgenommen. Damit wird zum einen
mitgeteilt, dass es innerhalb der äußeren Begrenzung (outer) des Flughafens
liegt. Und zum Anderen, dass es etwas Anderes ist als die restliche
Flughafenfläche (outer ohne alle inner) und anders dargestellt werden soll.
Wie legt aeroway=apron fest. Für die restliche Flughafenfläche gilt
aeroway=aerodrome.

Damit habe ich festgelegt wie ich den Flughafen sehe und verstanden haben
will. Zum Beispiel zeichnet daraufhin ein Renderer wie Mapnik das Vorfeld
nach, also über die Flughafenfläche und das Vorfeld ist sichtbar. Da Mapnik
Wasser nach Flughafenflächen zeichnet wenn nichts anderes angegeben ist, ist
auch der See http://www.openstreetmap.org/browse/way/33300147
zu sehen obwohl er kein inneres Mitglied des Multipolygons ist.

Diesen See http://www.openstreetmap.org/browse/way/186750719
zeichnet Mapnik nach dem Wald
http://www.openstreetmap.org/browse/way/186750716
in dem er liegt. Er ist also sichtbar, auch ohne Multipolygon. 

Auch diesen See http://www.openstreetmap.org/browse/way/186750718
zeichnet Mapnik nach diesem Wald
http://www.openstreetmap.org/browse/way/186750717.
Mapnik merkt nicht, dass dies der umgekehrte Fall ist, Wald im See. Mapnik
prüft gar nicht ob eine Fläche in einer anderen liegt. Der Wald wird nicht
dargestellt.

In diesem Beispiel wird durch eine Relation Multipolygon
http://www.openstreetmap.org/browse/relation/2410561
mitgeteilt, dass ein Wald in einem See liegt und Mapnik zeichnet dann den
Wald nach dem See. Der Wald ist sichtbar.

Da die Reihenfolge der Abarbeitung der Flächen nicht festgelegt ist, kann
ein anderer Renderer zu einer anderen Darstellung kommen. Durch Verwendung
von Multipolygonen verhindere ich dies, wie in diesem Beispiel
http://www.openstreetmap.org/browse/relation/1625506.

Ausser für den beschriebenen können Multipolygone auch noch für andere
Zwecke eingesetzt werden. Zum Beispiel zur Beschreibung von Exklaven und
Enklaven. Es wird also beschrieben, dass eine Fläche in einer anderen liegt,
aber nicht zu ihr gehört. Es ist nicht immer sofort ersichlich wozu die
Relation Multipolygon erstellt wurde. Und so entstehen immer wieder
Missverständnisse und eigentlich unnötige Diskussionen.

Ich hoffe das hilft beim Verständnis. Allein mir fehlt der Glaube, dass dies
zukünftige Diskussionen auch nur vermindern kann :)

Willi





Mehr Informationen über die Mailingliste Talk-de