[erledigt] Brücke innerhalb eines Tunnels

Ich denke, dass ist ein passabler Vorschlag.

Wenn sich oberhalb des Tunnels keinerlei Objekte befinden, muss dann überhaupt ein layer definiert werden?
Wie EinKonstanzer schrieb:

Was wohl tatsächlich offen ist: wie macht man diesen Unterschied deutlich?

Grundsätzlich braucht es kein layer-Tag wenn nichts übereinander liegt. Bei Brücken und Tunnel macht es aber durchaus Sinn.

Tunnel auf Brücke kann ich mir jetzt nicht so recht vorstellen.
Bei mehreren Wegen wie Wasserweg und Pfad durch Röhre oder Höhle verwende ich eine Tunnel-Relation.

Edit: Link hinzugefügt.

Ein Tunnel ist meiner Meinung nach immer mindestens layer=-1, da die allgemeine Erdoberfläche layer=0 ist. Selbst wenn oberhalb des Tunnels kein Objekt eingezeichnet ist, ist die Erdoberfläche doch meistens mit einer Flächennutzung versehen (landuse=… oder natural=…) Und diese Landnutzung ist in der Regel layer=0. Da sich der Tunnel darunter befindet, muss er auch von layer her darunter eingeordnet werden.

Wenn nun durch den Tunnel neben einem Fahrweg ein Bach fließt (was gar nicht so selten ist), und dieser Bach dann den Fahrweg unterquert, dann würde ich in diesem Fall tatsächlich den Bachlauf, der vor und hinter der Querung layer=-1 (wie auch der Fahrweg und der Tunnel an sich) in dem Unterquerungsabschnitt mit layer=-2 eintragen und die Brücke mit layer=-1 wie auch den Fahrweg vorher und hinterher.

Oberhalb der Erdoberfläche ist es zwar üblich, eine Brücke mit einer layer-Stufe oberhalb der Erdoberfläche einzutragen (also in der Regel layer=+1) und den darunter verlaufenden Bacht mit der gleichen layer-Stufe wie die Erdoberfläche (layer=0). Damit wird im Grunde die Abweichung von der Erdoberfläche verdeutlicht (Brücke ist darüber, der Bach auf der gleichen Ebene). Unterhalb der Erdoberfläche würde ich dann ebenso von der Erdoberfläche aus denken, aber eben in die andere Richtung.

Aber im Grunde gibt es immer verschiedene Lösungen, da layer ja keine absolute Höhe ist sondern definiert nur, in welcher Reienfolge Objekte zueinander liegen. Und diese Reihenfolge muss in sich schlüssig sein. Und daher könnte in einem Tunnel mit layer=-1 dann die Brücke aus dem Beispiel nicht layer=(+)1 sein, weil dann die Brücke ja oberhalb der Erdoberfläche läge, die wiederum ja bereits oberhalb vom Tunnel liegt. Da erscheint mir das Übel, dass gemäß meines Vorschlags der Bachlauf im Tunnel mit layer=-2 im Grund unterhalb des Tunnels (layer=-1) liegt, erscheint mir da das geringere Übel.

Für mich ist ein Tunnel durch einen Damm, auf dem z.B. ein Straße oder Eisenbahngleise verlaufen layer=0, während der way auf dem Damm layer=1 ist.

Diese Auffassung würde ich noch einmal überdenken, denn sie entspricht nicht dem wiki.

D.h. der way auf dem Damm ist embankment=yes mit layer=0 (bzw. ohne layer) und ein Tunnel durch den Damm dann layer=-1

Die meisten OSM-Objekte an der Erdoberfläche haben überhaupt kein definiertes layer=* und brauchen auch keines. Nur in dem (häufigen) Fall, dass ein Way ohne layer=* von einem anderen Way mit layer=* gekreuzt wird, wird für den ungesetzten layer=0 angenommen, ansonsten ist layer schlicht nicht definiert, weil es nur bei kreuzenden Ways überhaupt gebraucht wird.

Ob du also hier der Brücke layer=1 gibst und den Way darunter ohne layer lässt, oder ob du der Brücke layer=-3 gibst und dem Way darunter layer=-4, macht nicht den kleinsten Unterschied (solange keine weiteren Etagen dazukommen, sonst wird’s nach unten eng). In komplexen U-Bahn-Stationen mit Verteilebenen können durchaus mehr als 5 Stockwerke unter der Erde gebraucht werden :slight_smile:

TL;DR: layer=* gibt nur an, was drüber und was drunter ist, macht aber keine Aussagen bezüglich der Erdoberfläche.

Ich sage lieber “Für die Kartenebene wird layer=0 angenommen”. Aussagen wie “layer=0 ist Erdoberfläche” verleiten manche Mapper dazu, Wasserläufen durchgehend layer=-1 zu verpasssen (Begründung: weil die ja in Vertiefungen fließen und damit unter der Umgebung) und damit allen Fehlermeldungen bei undefinierten Straße-Wasserlauf-Kreuzungen aus dem Wege zu gehen, leider auch allen QS-Tools, die dann keinen Fehler mehr melden.

aber auch:

deshalb:

Wie immer: es ist nichts in Stein gemeißelt, aber für allgemeines Verständnis hilfreich.

Das steht da aber nicht. Da steht, man soll statt layer embankment verwenden, um darzustellen, dass der Weg auf einem höheren Niveau liegt.

siehe in Verbindung mit dem ersten Zitat in #13

Das steht da nicht. :slight_smile: Da steht, dass Wege, die in einem Tunnel unter einem anderen Weg hindurchführen einen niedrigeren layer-Wert als der darüber verlaufende Weg bekommen. Mit dem Zusatz, dass das typischerweise (= nicht zwingend) ein Wert kleiner 0 ist. Das ist bei mir auch typischerweise der Fall, außer der darüber verlaufende Weg liegt auf einem Damm, weil der Weg, der auf Normal-Niveau liegt und durch den Tunnel verläuft, nicht selten von Bächen oder Wassergräben gekreuzt wird, die wiederum layer=-1 bekommen. :slight_smile:

Wichtig sind aber eh nicht die absoluten Zahlen, sondern die Relationen.

Wie sähe denn eine solche Tunnelrelation aus?

Dann erkläre mir mal schlüssig, warum im Wiki explizit steht:

FraukeLeo hat es so schön beschrieben:

oder wie es im wiki am Beispiel waterway steht:

Für Dich ist Normal-Niveau möglicherweise das normale (gewachsene) Geländeniveau. Für OSM ist es so nicht! Ein tiefer in das Geländeniveau eingeschnittener Bach/Fluss, ein im Geländeeinschnitt verlaufender highway oder railway ist Normalniveau und bekommt kein -1 oder tiefer, ein auf einem Damm verlaufender way ist ebenfalls Normalniveau und bekommt kein +1 oder höher. Beide bekommen grundsätzlich erst einmal kein layer, und alle ways ohne expliziten layer werden als layer=0 angenommen.
Davon ausgehend bekommen Wege über Brücken höhere Werte und Wege durch Tunnel niedrigere Werte.
Und jetzt bitte nicht an Worten wie should, most und typically aufhängen, ein offenes Hintertürchen für kompliziertere Konstruktionen braucht man auch noch. Ein Tunnel durch einen Damm ist aber nix kompliziertes.

Den habe ich tatsächlich nicht verstanden. Bäche bekommen üblicherweise kein -1 und sich kreuzende Wege und Bäche innerhalb eines Tunnels sind kompliziertere Sonderfälle wie wir sie hier gerade diskutieren, kommt aber in der Realität nicht so häufig vor. Und da darf der Bach auch gerne ein -2 bekommen.

Stell Dir eine Bahnbrücke im Gebirge vor, die mit einer Lawinengalerie teilweise eingetunnelt ist. Gibt’s in Nordschweden und Norwegen garnicht so selten.

Meistens kann man vermutlich den Standpunkt vertreten, dass das kein Tunnel sondern ein Dach mit einer Seitenwand ist, aber an Steilstrecken der Fjorde kommt’s tatsächlich vor, dass Bergflanken Überhängen und Du dann einen
Echten Tunnel hast

Was soll ich da noch weiter erklären? Dort steht, dass man eine Deichlage nicht mit layer=* sondern mit embankment=yes erfassen soll. Über sich kreuzende Wege steht da nix.

Ein Bach oder Wassergraben, der einen Weg mittels Rohr kreuzt, also unter den Weg hindurch fließt, bekommt ein layer=-1 bei mir. Wenn dieser Weg außerdem durch einen Tunnel durch einen Damm führt, dann bekommt der kreuzende Weg auf dem Damm layer=1. Und im Wiki steht nirgendwo, dass das verboten ist. Verstehe ehrlich gesagt nicht, warum Du da so darauf herumreitest. Wichtig sind nicht die Zahlen selber, sondern dass ersichtlich ist, was über was liegt (Ist layer von way a größer oder kleiner als layer von way b?).

… für den Abschnitt im Rohr ja, aber für den Abschnitt vorher oder hinterher nicht. Es gibt allerdings User, die den kompletten Bach (weil er eben in einem kleinen Geländeeinschnitt liegt) mit layer=-1 versehen, was gemeinhin als falsch gilt.

Selbst wenn ein Bach mit cutting=yes versehen wird oder ein Weg mit embankment=yes, zieht dies keinen anderen layer hinter sich. Ein anderer layer ergibt sich erst dann, wenn zwei Objekte sich überschneiden und dadurch festgelegt werden muss, was davon sich “darüber” und was “darunter” befindet. Daraus ergibt sich, dass ein Weg, der komplett waagerecht verläuft, durchaus in einem Abschnitt layer=-1 sein kann (weil er unter einem Gebäude hindurchführt) in einem anderen Abschnitt ohne layer-Angabe (was layer=0 entspricht) und im nächsten Abschnitt layer=(+)1 sein kann, weil er per Brücke einen Bachlauf quert.

Nein, ich meine natürlich nur den tunnel-Abschnitt.

Ja klar. Geht aber nur, wenn es ich um getrennte ways handelt. Extra dafür splitten würde ich den way nicht.

Dieser von mir genannte fiktive Beispielweg kann nur gesplittet sein. Denn wenn er über eine Brücke läuft, muss dieser Abschnitt ja mit bridge=yes versehen werden. Der Abschnitt unter dem Gebäude wiederum muss mit covered=yes oder tunnel=building_passage versehen werden.

Ah sorry, Link vergessen: Proposal. Grotten habe ich ehrlich gesagt noch nicht als Relation gemappt. Da geht auch eine Site-Relation.

Danke, eine Gallerie über einen Teil einer Brücke macht Sinn (tunnel=avalanche_protector), wobei solche Gallerien ja auch wegen Steinschlag gebaut werden oder um einen Wasserfall nicht auf den Weg fallen zu lassen.
Wohl ein Fall für eine Brückenrelation analog zum Tunnel und ein und das selbe Proposal.

Genau das ist der richtige Ansatz! Bitte übertrage das mal auf Deinen fiktiven Weg, der durch einen Tunnel unter einem Damm hindurchführt. Splitten musst Du Deinen Weg, der auf Normal-Niveau verläuft, sowieso jeweils an den beiden Tunneleingängen, um tunnel=yes hinzufügen zu können (ich hoffe doch, dass Du nicht den kompletten Weg in voller Länge zu einem Tunnel machst, nur weil Du den Weg nicht splitten würdest). Dann kannst Du auch gleich an dieses kurze gesplittete Stück ein layer=-1 dranhängen, ohne den ganzen Weg auf dem Damm in kompletter Länge einen layer nach oben zu setzen, was eigentlich nur für das kurze Stück über dem Tunnel richtig wäre.

In OSM ist so vieles nicht verboten. Sinnhaftig ist das aber auch nicht wirklich.

Zeig mir mal ein Beispiel, wo Du das tatsächlich so gemappt hast.

Hier ein Beispiel, wie ich es als intuitiv richtig verstehen würde: https://www.openstreetmap.org/way/11978559

Stimmt, da habt ihr Recht. Hmm… evtl. komme ich darauf nochmal zurück: :wink: