Durchfahrt unter Tankstellen-Dach mit covered=yes taggen?

Liebe OSM-Mitstreiter,

in einer Änderungssatzdiskussion überlegen Kollege Peilscheibe und ich gerade, wie man Tankstellen-Dächer und die darunterliegenden Durchfahrten am besten taggt. Da dies eine generelle Frage ist, möchte ich Euch hier um Euren Rat und Eure Meinungen bitten.

Es geht um Dächer wie dieses und die durchführenden Zufahrten/Durchfahrten (Foto von Wikimedia Commons, joho345, PD; Ergänzung: das ist ein Beispielbild und nicht die betroffene Tankstelle):

Um solche Vordächer geht es

Konkret haben wir über dieses Tankstellen-Dach diskutiert und zwei Möglichkeiten, die Gebäudestruktur zu taggen (wenn Ihr noch bessere Möglichkeiten kennt, bitte hinzufügen):

Möglichkeit (a), weit verbreitet:

  • Das Dach wird mit building=roof, layer=1 gemappt
  • Die Durchfahrt darunter einfach mit highway=service und ggf. weiteren Tags versehen, aber ohne* tunnel=, covered= oder *layer=*-Tags.

Möglichkeit (b), meiner Meinung nach zumindest zulässig:

  • Das Dach wird mit building=roof getaggt, bekommt keine layer-Tags.
  • Die Durchfahrt darunter wird mit highway=service, covered=yes getaggt und teilt sich idealerweise Punkte mit dem Dach (OSM-Wiki: “should have shared nodes at the entry and exit points of the building”).

Möglichkeit (a) bedarf sicher keiner Erklärung, sie ist de facto in OSM weit verbreitet. Natürlich auch deshalb, weil Tags wie covered=yes einfach etwas neuer sind und es zuvor nur die layer-Tags gab, um solche Situationen zu beschreiben.

Wie komme ich jetzt auf Möglichkeit (b)? Weitgehend aufgrund der englischen und deutschen OSM-Wiki-Artikel zu covered=yes. Ganz klar ist, dass tunnel=* und auch tunnel=building_passage bei einer solchen Durchfahrt nicht passen – es gibt kein geschlossenes Gebäude, durch das die Durchfahrt tunnelartig hindurchführen würde. Dagegen scheint mir covered=yes gut zu passen und das Verhältnis zwischen Dach und Durchfahrt treffend zu beschreiben, besser als das mit layer=1 am Dach möglich ist.

Denn layer=1 am Dach bedeutet doch, dass sich das Dach über den umgebenden Elementen befindet, d.h. z.B. auch über dem angrenzenden Gebäude mit der Kasse und dem Tankstellen-Shop. Das ist aber nicht der Fall, das Dach als Bauwerk betrachtet umfasst auch die Träger, auf denen das Dach ruht, diese Träger stehen auf dem Erdboden, und somit befinden sich Dach, Kassengebäude und Durchfahrt eigentlich auf demselben (impliziten) layer, nämlich 0.

Umgekehrt wäre es auch nicht sinnvoll, die Durchfahrt mit layer=-1 zu versehen, denn das könnte man ja dahingehend missverstehen, dass die Durchfahrt gegenüber der Umgebung vertieft wäre, was nicht der Fall ist.

Was gemeint ist, ist doch einfach: Dieser Abschnitt des highway=service wird von dem Dach bedeckt. Das passt doch gut zu covered=yes, das ja ausdrücklich für offene Strukturen bestimmt ist (“is usually open at least on one side”) und definiert ist als “a highway […] that is (even partially) covered by a building or other structure and does not fit the definition of a tunnel=* (including tunnel=building_passage).” Oder?

Ich bitte Euch um Eure Meinungen und Argumente.

Wenn covered=yes nach allgemeiner Meinung nicht für solche Tankstellen-Dingsbumse passt, dann ändere ich die betroffene Tankstelle sehr gerne sofort wieder zurück (und ggf. auch andere so getaggte Tankstellen). Mir geht es nicht ums Rechthaben, ich habe die betroffene Tankstelle arglos geändert, weil ich dachte, das wäre besser so, aber wenn die Mehrheit das anders sieht und es sachliche Gründe dafür gibt, ist mir das ebenso recht.

Herzlichen Dank, Chrysopras

Gerade sehe ich noch, dass auch die englische Version des Artikels zu building=roof ausdrücklich schreibt (und das stammt nicht von mir ;)):

Das ist genau das, was ich oben als (b) zu beschreiben versucht habe und was mMn auch bei solchen Tankstellen passt.

Also das mit den shared Nodes finde ich etwas komisch, da der Weg ja in Realität keine Verbindung zum Dach hat.

Du kannst beides machen. Layer=1 sollte eher nicht weggelassen werden, das zeigt an, wie die vertikale Reihenfolge an überlappenden Stellen ist. Es stimmt zwar, dass die Stützen auch zum Dach gehören (bzw. kann man das so sehen), aber solange Du sie nicht zeichnest ist der layer nur dort relevant, wo sich die highways mit dem Dach schneiden.
Aus dem Bild geht klar hervor, dass das Dach wirklich über dem Kassengebäude und über den Zapfsäulen liegt, es also genau richtig abgebildet wäre mit layer=1 über diesen Elementen ohne explizite Layerangabe.

“covered=yes” auf dem highway passt auch gut, wobei es im Prinzip schon aus dem layer hervorgehen würde (d.h. es ist eine Hilfestellung für den Renderer).

Der Satz im Wiki, ein Dach bräuchte keinen layer, ist m.E. zu entfernen. Wieso sollte ein Dach keinen layer-tag benötigen? Es gibt auch Dinge auf oder über Dächern.

Ist halt ne Definitionsfrage, ob man als Dach nur das Oberteil meint oder auch die Stützen. :stuck_out_tongue:

Es wird ja nicht grundsätzlich ausgeschlossen. Ich vermute die Wiki-Schreiber sind von einem Impliziten Layer=1 für das Dach ausgegangen, so wie du von einem impliziten covered=yes ausgehst.

Ich persönlich halte es jedenfalls wie (b) inklusive Layer-Angabe. Ich mag möglichst explizite Angaben. Das sollte dann in jedem fall eindeutig sein.

M.E. gibt es keine impliziten layer. Falls die Info fehlt kann man nur raten. Während covered grundsätzlich implizit gegeben ist, sofern die vertikale Reihenfolge klar ist (also layer tags gesetzt sind) :wink:

Du verwechselst level=0 mit layer=0.
Und wenn du die Stützen eintragen möchtest sind es man_made=* oder building=*.
Eventuell an 3D orientieren → https://wiki.openstreetmap.org/wiki/DE:OSM-4D#Br.C3.BCcke
(Hat die Brücke Pfeiler werden sie als Punkte auf dem Brückenverlauf eingetragen mit:
column=yes)

Ebenerdige Dächer habe ich allerdings bisher selten gesehen :stuck_out_tongue: Aber ja, ich finde auch, dass ein layer daran sollte.

Ich mach das auch nach Schema b). building=roof, highway=service und covered=yes und shared nodes.

https://www.openstreetmap.org/way/85645270

Mmh, ich mache das wohl als “Möglichkeit (a)”, wie Kollege Peilscheibe
https://www.openstreetmap.org/way/223037172/history

“covered” ist IMHO so ein Naja-Key,
bestenfalls sinnvoll um anzuzeigen, dass man dort möglicherweise regensicher ist,
aber eine geometrische Ordnung würde ich darauf nicht aufbauen wollen.

Sinnvoll wäre wohl eine “Standard-Tankstelle” fixiert im OSM-Wiki.

Nachtrag zu “building”=roof, welches in der Standardkarte wie ein umschlossenes Gebäude dargestellt wird:
Ein Architekt würde das im Grundriss nie derartig gleichberechtigt darstellen, sondern die Dachkontur bestenfalls als gestrichelte Linie.
Das weit oberhalb der Grundrissebene liegende Dach ist etwas völlig anderes als das ebenerdige Kassengebäude,
nichts weiter als ein stützenarmer Regenschirm, und der braucht auch keine Nodes mit ways darunter zu sharen.

Ich nutze b):
Dach als building=Roof, versehen mit layer =1. Für layer ist für mich entscheidend die Position der Dachfläche. Und die befindet sich nunmal eine Ebene über dem darunter liegenden highway=service. die Durchfahrt highway=service versehe ich mit covered=yes.

Ich gebe Jo Cassel recht, dass es sinnvoll wäre, mal eine allgemeine Regelung hierzu ins Wiki aufzunehmen. Allerdings nicht in Form einer Standarttankstelle sondern allgemein für die Handhabung von solche Dächern ohne Seitenwände. Diese gibt sie auch an Fabrikeinfahrten https://www.openstreetmap.org/way/175120462 oder auch bei dieser Müllannahme-Station https://www.openstreetmap.org/way/119031585

Zunächst einmal: Vielen Dank für Eure rege Beteiligung und die vielen Argumente!

Da Möglichkeit (a) auf jeden Fall sehr stark vertreten wird, habe ich die betroffene Tankstelle auf Schema (a) zurückgeändert, schon aus Höflichkeitsgründen gegenüber Kollege Peilscheibe. Wie gesagt, ich hatte jene Tankstelle eher nebenbei umgetaggt, arglos annehmend, dass Möglichkeit (a) tendenziell veraltet sei und hier nur noch aus historischen Gründen verwendet wird. Nun weiß ich, dass dem nicht so ist. :wink:

Zweitens stelle ich fest, dass die Diskussion hier keineswegs nur Tankstellen-Dächer betrifft, sondern generell die Frage, wie man mappen und taggen soll, wenn ein highway unter einem/durch ein building=roof hindurchführt. (Ergänzung: Das hat gerade schon Kollege Galbinus festgestellt, unsere Beiträge haben sich zeitlich überschnitten.)

Mein Eindruck ist, dass dabei unterschiedliche Perspektiven eingenommen werden und dass den Empfehlungen der zitierten Wiki-Artikel zu covered=yes (nämlich shared nodes zu verwenden und layer=* wegzulassen) eine andere Vorstellung zugrunde liegt als der Auffassung von Möglichkeit (a). Das ist aber gar nicht so einfach auf den Punkt zu bringen; ich grüble noch ein bisschen und versuche das dann nochmal klarer zu formulieren.

Zunächst einmal also: Danke! Und gibt es noch weitere Meinungen? Irgendjemand hat die zitierten Wiki-Passagen ja geschrieben, :wink: vielleicht kann uns da noch jemand weitere Argumente aufzeigen …

Ich nutze b): https://www.openstreetmap.org/way/56037653

Gibt es: https://wiki.openstreetmap.org/wiki/DE:Tag:amenity%3Dfuel#Beispiel bzw. https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dfuel#Example (layer=1 wird jeweils etwas weiter höher erwähnt).

In diesem Sinne möchte ich beispielhaft noch “Das Dach” vorstellen, an dem sich schon Generationen von Mappern abgearbeitet haben:
https://commons.wikimedia.org/wiki/File:2017-06-07_Kassel_by_Olaf_Kosinsky-9.jpg

In OSM sieht man von dem Dach (inzwischen) nicht mehr viel, weil es von den darunterliegenden Verkehsflächen “verdeckt” wird:
https://www.openstreetmap.org/way/368803344 (Versionsgeschichte müsste deutlich älter sein, ging wohl mal verloren.)

Diese darunterliegende Verkehsfläche wal übrigens mal covered=yes, man beachte den aktuellen Bearbeitungskommentar:
https://www.openstreetmap.org/way/330514803

Ich habe die “Gebäude” building=roof bisher nicht mit layer=1 versehen, kann aber das Argument “über Straße/Weg” nachvollziehen.

Dann folgt aber für mich zwingend, dass das Objekt darunter (auf implizitem layer=0) keinen shared node mit dem Dach haben kann.

Interessantes Beispiel. Öffnet man das im ID-Editiermodus, erscheinen 6 Fehlermeldungen mit dem Hinweis, dass hier Wege oder Gleise das Dach kreuzen und man entweder Brücken oder Tunnel verwenden oder das Dach verschieben möge.
Vom Rendering her kommt die Standard-Kartenansicht mit dem Dach auch nicht klar.
Aber der ganze Bereich ist sehr inkonsequent gemapt. Da laufen z.B. Fußwege in ein Gebäude ohne Tunnel-Attribut hinein und erst der dort quer verlaufende Fußweg ist als Tunnel gekennzeichnet. Aber die “tunnel=buildingpassage” beginnt ja bereits bereits dort, wo der Weg ins Gebäude hineingeht, nicht erst an der nächsten Abzweigung.

Übrigens: Versieht man eine unter einem Dach verlaufende Zufahrtsstraße mit covered=yes akzeptiert dies iD ohne Fehlermeldung. Und das selbst bei shared nodes.

Vermutlich hält die Modelltankstelle einfach kein Erdgas feil :slight_smile: Wenn du es genau nimmst, fehlt da noch deutlich mehr.

–ks

im Prinzip gebe ich dir zu allem Recht, bis auf das Nodes sharen, wenn man das nicht macht hat man schnell Inkonsistenzen wo das Dach anfängt und wo der way mit covered.