[Talk-de] bridge und layer=1

"Marc Schütz" schuetzm at gmx.net
Fr Jun 27 17:33:08 UTC 2008


-------- Original-Nachricht --------
> Datum: Fri, 27 Jun 2008 16:46:58 +0200
> Von: Gerrit Lammert <osm at 00l.de>
> An: Openstreetmap allgemeines in Deutsch <talk-de at openstreetmap.org>
> Betreff: Re: [Talk-de] bridge und layer=1

> Marc Schütz wrote:
> > Sehs mal aus der folgenden Sichtweise: * Aktuell: - Eine Straße
> > (highway=*) kriegt den Layer, der ihr mit layer=* zugewiesen wird,
> > oder 0, wenn kein layer gesetzt ist. - Um den Layer zu ermitteln,
> > muss ich nur das layer-Tag betrachten. - Es ist immer eindeutig ein
> > Layer definiert.
> 
> Aber genau darum geht es doch. Es mag zwar ein Layer eindeutig sein
> (nämlich 0), aber das bedeutet ja erstmal gar nichts. Die Layer sind im
> Prinzip dafür da um über/unter-Beziehungen treffen zu können, was ja
> normalerweise auf einer 2D-Map nicht möglich ist.
> Wenn ich jetzt einen Fluss habe und eine Straße über den Fluss lege, ist
> ja nun beides Layer 0. Wie entscheidet der Renderer in solch einer
> Situation die Schichtung?
> Mir fallen zwei Möglichkeiten ein:
> a) Das Element mit höherer ID liegt oben.
> b) Die verschiedenen Typen haben unterschiedliche Prioritäten.
> Punkt b) wäre genau mein Wunsch. Für den Typ "Brücke" wird dann halt
> eine höhere Priorität angenommen.
> Aber selbst wenn aus vielleicht guten Gründen Variante a) zutrifft: Wenn
> ich diese Brücke über den Fluss jetzt korrekt tagge, bekommt der
> Abschnitt ja ein Attribut bridge=yes und eines mit layer=1.
> bridge=yes zeichnet die Seitenwände einer Brücke ein, eine schräge
> schwarze Linie  für den Anstieg, eine gerade für den verlauf und eine
> weitere schräge, die den Weg auf Normallevel führt. So wird die Brücke
> gezeichnet und so funktioniert sie auch in der Realität. Warum
> beeinflusst der Tag nicht auch das Renderverhalten entsprechend?

Und wenn der Renderer Brücken und Tunnel gar nicht verschieden darstellen will? Dann müsste er sie nach deiner Variante trotzdem kennen, nur um die Reihenfolge richtig hinzukriegen. Für mich sind layer= und bridge= erst mal unabhängige Features. Das eine gibt die vertikale Sortierung bei sich überkreuzenden Objekten an, das andere ist Zusatzinfo, warum die Objekte auf unterschiedlichen Layern liegen.

> Das fände ich intuitiv richtig!
> 
> > * Dein Vorschlag:
>  > - Ich muss mehr unterschiedliche Tags berücksichtigen,
> > um den Layer zu ermitteln, und kann mir dabei nicht mal sicher sein,
> > dass ich alle dafür notwendigen Tags kenne (es könnte ja inzwischen
> > jemand bei U-Bahnen auch Layer=-1 annehmen, ohne dass es alle
> > Datenverwerter mitbekommen).
> 
> Der Unterschied zwischen U-Bahn und Tunnel/Brücke ist für mich deutlich.
> Eine Brücke ist eine temporäre Höhenänderung um einem Hindernis 
> auszuweichen. Da findet für mich nicht unbedingt ein Wechsel der 
> Darstellungsebene statt. Eine U-Bahn fährt dahingegen nicht nur "unter 
> etwas hindurch", sondern "im Untergrund". Hier ist layer=-1 sehr sinnvoll.
> 

Die U-Bahn war einfach nur ein Beispiel. Es ging mir mehr darum, dass man einen Default-Layer ja auch noch für andere Features einführen könnte. Dann müssten die meisten Programme, die unsere Daten verwerten, angepasst werden.

>  > - Was passiert, wenn bridge und tunnel
> > gesetzt sind? Die Möglichkeit gibt es zwar jetzt schon, sie
> > beeinträchtigt aber den Layer nicht.
> 
> Ui, hast Du dazu mal ein real-live-Beispiel? Kann ich mir gerade nicht 
> vorstellen. :)
> 

War etwas missverständlich ausgedrückt :-P
Ich meine damit, dass man das jetzt schon widersprüchlich taggen kann, nicht dass es das in der Wirklichkeit auch gibt.

> > Was mir bei meiner anderen Antwort bez. "konsistente Ausnahmen"
> > vorschwebt, ist eine Konvention, dass neue Tags nach Möglichkeit so
> > eingeführt werden, dass das Datenmodell, dass bis dahin definiert
> > worden ist, dadurch möglichst wenig beeinträchtigt wird: Wenn ich ein
> > Tag finde, dass nicht kenne, sollte ich es einfach ignorieren können,
> > ohne Angst zu haben, dass mein Router den Autofahrer wo hinlotst, wo
> > er nicht hin darf, oder mein Renderer etwas falsch malt.
> 
> Da bin ich voll und ganz auf Deiner Seite!
> 
> Vielleicht war das mit meinem Beispiel von +1 und -1 auch etwas sehr 
> vereinfacht ausgedrückt, es ging mir eigentlich nur darum, dass beim 
> Rendern der Brückenabschnitt über der Straße/Fluss eingezeichnet wird. 
> Siehe oben die Prioritäten in b)
> 

So ähnlich funktionieren die Renderer m.W. jetzt schon. Es gibt durchaus auch innerhalb der Layer Prioritäten. Bei nicht-physikalischen Objekten (Landuse, Symbole) macht das schon Sinn. Aber wenn du das als Normalverhalten bei Brücken und Tunneln einführst, hast du damit trotzdem einen abweichenden 
Standardwert definiert.

Nur damit es keine Missverständnisse gibt: Ich bin _nicht_ strikt gegen deinen Vorschlag, ich finde aber, wir sollten schon auf unsere Rückwärts-Kompatibilität achten.

> Gerrit
> 

Grüße, Marc

-- 
GMX startet ShortView.de. Hier findest Du Leute mit Deinen Interessen!
Jetzt dabei sein: http://www.shortview.de/wasistshortview.php?mc=sv_ext_mf@gmx




Mehr Informationen über die Mailingliste Talk-de