DE:Simple 3D Buildings

Dieser Artikel ist eine deutsche Übersetzung des Originals (in der Regel auf Englisch), aber der Inhalt scheint unvollständig oder nicht aktuell zu sein! Bitte aktualisiere diese Übersetzung, wenn möglich.

Diese Seite beschreibt Tags für grundlegende 3D-Attribute von Gebäuden.

Die folgenden Tagging-Methoden sind Ergebnisse des 2. 3D-Workshop Garching, dort einigten sich die meisten 3D-Entwickler auf die Unterstützung einer einheitlichen Teilmenge von Tags in ihren Programmen. Grundsätzlich beschreiben wir das Volumen eines Gebäudes unter Verwendung von zwei Arten von Flächen. Gebäudeumrisse für den allgemeinen Bereich eines komplexen Gebäudes und Gebäudeteile. Beide können unterschiedliche Höhen oder andere Attribute besitzen.

Gebäudeumriss

Der Gebäudeumriss wird als Fläche ( oder multipolygon) mit building=* gemappt. Er umschließt jede Fläche, die von einem Gebäudeteil überdeckt wird. Der Umriss wird auch als footprint bezeichnet. Andere Tags, die sich auf das gesamte Gebäude beziehen (z.B. Adresse, falls zutreffend) müssen am Gebäudeumriss markiert werden.

Der Umriss stellt die Rückwärtskompatibilität für 2-D Renderer-Software wie Mapnik und andere Datenanwender her, die nicht an 3D-Modelierung interessiert sind. 2-D Renderer ignorieren die im Folgenden beschriebenen building:part=* Tags.

Gebäudeteile

Wenn einige Teile des realen Gebäudes unterschiedliche Attribute (z.B. Höhe) haben, können sie als zusätzliche Flächen modelliert werden. Diese werden mit building:part=yes markiert.

Bitte beachte folgende Konvention: Sobald an einem Gebäude eine Fläche als Gebäudeteil building:part=yes vorhanden ist, wird von manchen Renderern der Gebäudeumriss nicht mehr für Volumen-Rendering berücksichtigt, es sei denn er wird ebenfalls mit building:part=yes markiert. Ob die gleichzeitige Verwendung von building=* und building:part=* an einem Objekt akzeptabel ist, kann aktuell niemand mit Bestimmtheit sagen. Manchmal kann es helfen den Gebäudeumriss als Teil mit entsprechender Höhenangabe nochmals einzufügen. u.U. wird dieses dann mit einer Fehlermeldung quittiert.

Das folgende Beispiel eines Kirchbaus besteht aus einem Gebäudeumriss (grün) und zwei Gebäudeteilen. Die zwei Gebäudeteile haben jeweils eine eigene Höhe (Kirchenschiff, blau; Glockenturm, beige) und Dachform (Giebeldach, rot; Turmspitze dunkelgrau)..Die Höhe der Dächer ergibt sich aus der Differenz von Gesamthöhe und Traufhöhe. Im Regelfall können weitere Gebäudeteile (Querschiff, Seitenschiffe, Turmsegmente, Kapellen, etc.) hinzukommen. Zweckmäßigerweise fasst man diese dann in einer Relation zusammen. Aber auch hier gehen die Meinungen auseinander.

building=* Gebäudeumriss
(4)height=* Gesamthöhe
building:part=yes Gebäudeteil (Kirchenschiff)
(2)height=* Gesamthöhe des Gebäudeteils
(1)roof:height=* Höhe des Dachs
roof:shape=gabled Dachform (rot)
building:levels=* Etagen (ohne Dach)
roof:levels=* Etagen im Dachgeschoss (rot)
building:part=yes Gebäudeteil (Kirchturm)
(4)height=* Gesamthöhe des Gebäudeteils
(3)roof:height=* Höhe des Dachs
roof:shape=pyramidal Dachform (dunkel)
building:levels=* Etagen (ohne Dach)
roof:levels=* Etagen im Dachgeschoss (dunkel)
weitere Eigenschaften z.B. colour, material
Relation type=building



Jedes Dach gehört zum jeweiligen building:part=*. Die farbige Trennung dient lediglich der besseren Orientierung.
Die Angabe von building:levels und roof:levels macht bei Kirchenbauten natürlich wenig Sinn. Bei Büro- und Wohngebäuden hingegen schon. Bekannte 3D-Renderer rechnen hier zumeist mit 3 Metern Geschosshöhe je Level und zeichen dann in diesen Abständen umlaufende Fensterbänder ein. Mit zusätzlicher Höhenangabe lässt sich das Ergebnis verbessern.

Die folgenden Tags können sowohl auf Gebäudeumrisse als auch -teile angewandt werden.

Höhe

Key Kommentar
height=* Abstand zwischen dem niedrigsten möglichen Punkt mit Bodenkontakt und der Oberseite des Daches des Gebäudes, ohne Antennen, Turmspitzen und andere Geräte auf dem Dach.
min_height=* Ungefähre Höhe unterhalb der Gebäudestruktur.

Beachte, dass bei Verwendung von min_height, die Höhe immer noch als der Abstand vom Boden zur Oberseite der Struktur definiert ist. Eine "Brücke" mit 3 Meter Höhe, deren unterer Teil 10 Meter über dem Boden positioniert ist, hat min_height = 10 und height = 13.

building:levels=* Anzahl der Etagen des Gebäudes über dem Boden (ohne Etagen im Dach, siehe roof:levels).

Wenn neue Gebäude gemappt werden, versuche eine Höhe anzugeben. Versuche building:levels=* nur zusätzlich zu einer Höhe einzutragen!

building:min_level=* Etagen, die in einem Gebäudeteil ausgelassen werden sollen, analog zu min_height.

Dach

Die Dachform kann aus einem Katalog bekannter Typen gewählt werden. Zusätzliche Dachformen können später eingeführt werden, einschließlich der fortgeschrittenen Ansätze für die manuelle Modellierung (z.B. ProposedRoofLines oder OSM-4D/Roof_table). Da die Unterstützung in Richtung komplexer Dachformen abnimmt, sind einfache Dachformen im Zweifel von Vorteil. Aber auch dann kann das Ergebnis häufig überraschend sein.

Häufigste Dachformen
roof:shape=* roof:shape=flat roof:shape=gabled roof:shape=hipped roof:shape=pyramidal roof:shape=skillion
Deutscher Begriff Flachdach,

Plattformdach

Satteldach Walmdach Zeltdach Schrägdach,

Pultdach

Weitere Dachformen
roof:shape=* roof:shape=half-hipped gambrel mansard dome onion round saltbox
Deutscher Begriff Schopf- oder Krüppelwalmdach Mansard-Giebeldach Mansard-Walmdach Kuppeldach Zwiebelhelm Tonnendach Berliner Dach

Bei allen Giebeldachformen wird angenommen, dass der Dachfirst parallel zur längsten Seite des Gebäudes verläuft. Eine zusätzliche Markierung mit roof:orientation=along ist demzufolge optional. Abweichend kann mit roof:orientation=across auch eine Giebelung quer zu längsten Seite des Gebäudes erzwungen werden. Bei quadratischen Grundrissen und komplexen Dachformen wie sawtooth versagt diese Technik.

Bei allen Pultdachformen kann mit roof:direction=* die Dachrichtung von First zur Traufe festgelegt werden. Entweder grob als Himmelsrichtung oder mit numerischer Gradangabe relativ zu 0° Nord.

Die Dachneigung kann entweder über die Dachhöhe in Meter roof:height=* oder über den Neigungswinkel in Grad roof:angle=* festgelegt werden. roof:levels=* definiert die Anzahl der Etagen im Dach die noch nicht durch building:levels erfasst sind.

Oberflächen

Key Kommentar
building:colour=* Farbe der Gebäudefassade. Siehe colour=* für mögliche Werte.
roof:colour=* Farbe des Daches. Siehe colour=* für mögliche Werte.
building:material=* Sichtbares Gebäudematerial der Gebäudefassade.
roof:material=* Sichtbares Gebäudematerial des Daches.

Da die Materialangabe häufig schon eine adäquate Farbgebung beinhaltet, kann auf eine zusätzliche Farbangabe meist verzichtet werden. Aber dies hängt natürlich vom jeweiligen Einzelfall ab.

Gebäuderelation

Eine Relation, markiert mit type=building, fasst Gebäudeumriss und alle Gebäudeteile zusammen. Es wird empfohlen eine Relation zu verwenden, wenn das Gebäude mindestens ein Gebäudeteil besitzt.

Beispiele

Beispiel-Gebiete (Demo areas)

Um es der Community so einfach wie möglich zu machen, wurden Details nach diesem Schema bereits in folgenden Gebieten erfasst:

Edit this table

Location OpenStreetMap OSM2World OSMBuildings F4 Map OSM go Mapbox GL Tangram
Athens N/A

Beijing (Forbidden City) N/A

Bremen

Chicago

Chongqing

Chaotianmen CBD Working

N/A

Cincinnati

Ciudad Guayana N/A

Coburg

Denver

Edmonton N/A

Graz

Graz 2

Graz 3

Hagen

Helsinki

Huesca N/A

Jakarta, Jalan Sudirman N/A

Karlsruhe, Fernmeldeturm

Kópavogur, Smárar N/A

Köln, Dom

Köln, Funkturm

Köln, Rheinauhafen

Köln, Wohngebiet in Neuehrenfeld als "Labor"

Köthen

Köthen 2

Kraków N/A

Kuala Lumpur N/A

Las Vegas

Leipzig

Lima N/A

London

Lwówek Śląski N/A

Makati N/A

Manila

Malate and Ermita

N/A

Manila

Santa Cruz and Binondo

N/A

Moscow N/A

Moscow 2

with type=building relation

N/A

New York City

Oldenburg, University

Oldenburg, Indiana

Paris, Eiffel Tower N/A

Passau

Phoenix (Arizona)

Potsdam

Rijswijk

Rostock, Südstadt

San Jose (California)

São Paulo N/A

Schwerin

Shanghai

Lujiazui CBD Working

N/A

Shenzhen

Shenzhen Central Business District

N/A

Singapore N/A

Stadum

Syracuse (New York)

Tokyo, Nishi-shinjuku N/A

Tokyo, Odaiba N/A

Toronto N/A

Trondheim N/A

Vatican N/A

Warsaw N/A

Ypenburg, The Hague

Waterwijk (work in progress)

Anwendungen

Die folgenden 3D Anwendungen machen bereits Gebrauch von oben beschriebenen Schema:

  • OSMBuildings: osmbuildings.org
  • OSM2World (teilweise Unterstützung, Vorbereitung der Umsetzung der restlichen Features für den 0.2.0 Release)
  • Kendzi3d (teilweise Unterstützung (z.B. fehlende Unterstützung für Relation), restliche Funktionen bald)
  • OSM-3D (teilweise Unterstützung, siehe DE:OSM-3D#Gebäude)
  • Android 3D mapping SDK (unterstützt bisher nur Höhenattribut)
  • F4map Groupe F4 (AG) Paris , hier z.B. Passau
  • ...
This article is issued from Openstreetmap. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.