DE:OSM-3D
This project and particularly the web platform is OFFLINE! You may run it online, but only if you install an older Java version. The server crashed and there is no resource to keep it running again. Maybe the sources will be available on github in the next weeks |
For first results see Simple 3D Buildings.
OSM-3D ist ein Projekt der Universität Heidelberg, Geoinformatik Gruppe http://giscience.uni-hd.de mit dem Ziel, eine interaktive 3D-Karte auf Basis von OpenStreetMap-Daten bereitzustellen. Das Projekt dient als Demonstrator für die Realisierung der 3D-Visualisierungskomponenten in 3D-Geodateninfrastrukturen (GDI). Diese basieren die auf standardisierten offenen Schnittstellen des OGC. Es zeigt auch die Potenziale und Möglichkeiten von 3D-Karten und deren Anwendungen. Das unterscheidet sich vom Mapping von OSM-Bildkacheln auf ein Gelände. Die Darstellung basiert auf einem Szenengraph-Modell, das ein Geländemodell enthält, sowie viele OSM-Objekte, die für eine sinnvolle 3D-Ansicht verwertet werden konnten. Dieser Szenengraph kann mit dem kostenlos herunterladbaren Online-Betrachter XNavigator http://xnavigator.sourceforge.net/doku.php angezeigt werden. Die Vorbereitung von OSM-Daten, die in das System einfließen, erfordert einige Arbeitsschritte, die auf den Servern der Universität Heidelberg ausgeführt werden. Es wird eine Dokumentation der Serverschnittstelle (Web 3D Service, W3DS) und ein Java-Applet mit einem External Authoring Interface, also einer Schnittstelle für den Zugriff von außen, bereitgestellt.
Projekt-Homepage: http://www.osm-3d.org
Datenverfügbarkeit
Wie der Name schon andeutet, werden die Karteninhalte aus OSM importiert. Dabei versuchen wir alle signifikanten Objekte, die in einer für viele Zwecke einsetzbaren 3D-Karte eingebunden werden können, zu extrahieren. Da OSM kein Geländemodell enthält, werden die Höheninformationen aus einer anderen Quelle importiert. Des Geländemodell wird von einem SRTM-Datensatz (Shuttle Radar Topography Mission) abgeleitet, der freundlicherweise von CGIAR zur Verfügung gestellt wurde. Es hat eine Auflösung con ca. 90 m. CGIAR hat viele Datenlöcher (no-data voids) mit Interpolationsverfahren geschlossen. Solche Löcher treten häufig in bergigem Gelände und auf Wasseroberflächen auf. Der originale SRTM-Datensatz konnte von unserem Terrain Triangulation Package nicht verarbeitet werden, da es von gleichmäßig verteilten Punkten ausgeht. Die Regionen an den Polen von 60 N bis 86 N und 60 S bis 86 S wo es keine SRTM Daten gibt, sind mit GTOPO30 Daten aufgefüllt worden, ein gröberer Datenstz mit einer Auflösung von ca. 1 km.
Das Gelände wird als Satz rechteckiger Kacheln vorgehalten, die dem Sphärischen Mercator System von OpenStreetMap entsprechen.Level 3 -13 sind komplett vorberechnet worden. Level 14 bis 18 werden auf Anfrage berechnet und dann gecacht. Daher dauert das Laden etwas länger wenn man einen Ort das erste Mal besucht.
Gebäude und POIs werden weltweit prozessiert und regelmäßig aktualisiert.
Die Kombination aus OSM- und SRTM-Datensätzen wird durch einen Web-3D-Dienst (W3DS) zur Verfügung gestellt. W3DS ist ein sogenannter “3D-Portrayal-Dienst”, der zur Zeit im Open Geospatial Consortium (OGC) als eine Komponente diskutiert wird, die für die Verteilung von geographischen Daten als X3D, VRML, Collada oder KML-Modelle eingesetzt werden kann. Der Dienst ist dafür konzipiert, sowohl Landschafts- und Stadtmodelle bereitzustellen, als auch Informationsebenen, die Points of Interest (POI) und Beschriftungen oder ähnliches enthalten. Der W3DS für das OSM-3D-Projekt wurde als Referenzimplementierung für den OGC-Standardisierungsprozess zur Verfügung gestellt. Weitere Informationen, ein Test-Client, und die Dokumentation der Schnittstelle befindet sich hier http://www.w3ds.org/doku.php?id=osm-3d_w3ds
Kartenmerkmale
Kartenkacheln
Alle Kacheln die in Merkator Projektion zur Verfügung stehen können verwendet werden. Zur Zeit sind folgende Styles eingebunden:
- Mapnik
- Osmarender
- Mapquest
- Mapquest Open Aerial
- Integrated DEM Style
Gebäude
Gebäude werden als Polyeder gerendert, extrudierte Grundrisse mit Flachdächern. Die Grundhöhe wird über das DGM interpoliert. In OSM werden Gebäude entweder als ways für den Grundriss an der Basis oder als Relations, die aus einem äußeren Ring und 0..n inneren Ringen für Innenhöfe bestehen, modelliert. Innere Ringe (Inseln) werden korrekt verarbeitet, sie werden als Löcher im Polyeder dargestellt. Äußere Ringe, die aus mehr als einem Weg bestehen, können nicht verarbeitet werden. Der Boden und die Oberkante sind normalerweise flach. Wo Informationen über die Dachform zur Verfügung stehen, versucht der Algorithmus, die Dachgeometrie aus dem Dachtyp (z.B. Giebel) und der Ausrichtung zu rekonstruieren. In manchen Fällen bereiten Gebäude an steilen Hängen Probleme, da Teile davon über dem Boden schweben können. Aus diesem Grund sollten Wände nicht als Gebäude getaggt werden. Meistens sind Höheninformationen nicht enthalten, so dass wir eine feste Gebäudehöhe nehmen müssen, der wir eine zufällige Abweichung hinzufügen. Falls verfügbar, werden die folgenden Tags verwendet, um realistischere Höhen zu bekommen:
Key | Description | Example values | Notes |
---|---|---|---|
height | Approximate height - distance from ground to roof of the building (Roof, not antenna or spire for skyscrapers by default) | By default : meter. For use in 3D apps
Includes well-known abbreviation of a length measure | |
min_height | Approximate height below the building structure | 31 m | Can be used to model complex building structures that have overhanging parts, or bridges. This value specifies the distance from ground to the lower edge of the building structure. The unit is meters unless otherwise specified. Note that when min_height is used, height is still defined as distance from ground to top of the structure. So "bridge" with 3 meters height, where bottom part of the bridge is positioned 100 meters above ground level will have height=103, min_height=100. |
building:min_level | Number of stories between ground and actual first existing floor | 5 | For parts of building that are "floating in air" (actually, they are supported by other building parts that are fixed into ground), number of floors from ground that are not present. So if there is a passage under building, where 5 floors are missing, use building:min_level=5
Note that building:levels still counts floors from the ground, including also those nonexistent "skipped" floors, as can be seen in the explanatory picture number of levels is multiplied by 3 m to estimate the actual height |
building:levels:aboveground | Number of stories of the building | 50 | number of levels is multiplied by 3 m to estimate the actual height |
levels | Number of stories of the building | 50 | Same meaning as above. Number of levels is multiplied by 3 m to estimate the actual height |
Bemerkung: Einige Key werden redundant benutzt. Maße in Längeneinheiten (m, ft) werden gegenüber Anzahl von Stockwerken bevorzugt, welche mit 3 Metern Stockwerkhöhe geschätzt werden.
Die Reihenfolge beim Verarbeiten der Keys ist wie folgt: height, building:levels:aboveground, levels.
Auf der Seite "Building_attributes" werden die empfolenden Gebäudeattribute zusammengefasst, mit deren Hilfe in Zukunft ein realistisches Stadtmodell erzeugt werden könnte.
Bei großen Gebäuden ist es viel besser, sie in mehrere Teile aufzusplitten, die mit unterschiedlichen Höhen versehen werden können. Ansonsten wird nur der Grundriss bis zur Spitze extrudiert, was merkwürdig aussehen kann. Flache Dachstrukturen können ganz gut mit mehreren Ringen von Gebäuden (eigentlich wären das Gebäudeteile und wir sollten uns einen anderen Key überlegen, aber fürs erste bleiben wir bei building) modelliert werden. Schräge Dächer sind nicht möglich.
Gute Beispiele:
Palace of Culture and Science, Warschau, Polen. http://en.wikipedia.org/wiki/Palace_of_Culture_and_Science,_Warsaw.
Silverline Tower in Almere, Niederlande. Ja, es sieht so aus. min_level wird benutzt um den überhängenden Teil zu modellieren. Karte
Schlechte Beispiele:
Offensichtlich gibt es davon viele.
Eiffelturm, Paris. Armer Tour Eiffel. Bitte auch DE_talk:OSM-3D#Note_on_using_the_building_tag Kommentar beachten
Points of Interest
Points of Interest (POI) werden als 3D-Boxen mit einem Symbol als Textur und einer Beschriftung angezeigt. POIs werden in den folgenden Ebenen gruppiert:
- Money
- Public Facilities
- Health
- Shop
- Traffic
- Eating
- Enjoyment
- Education
- Public Transport
- Post
- Accomodation
Money
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
amenity | atm | amenity | bank | ||||
amenity | bureau_de_change |
This table is a wiki template with a default description in English. Editable here.
Public Facilities
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
amenity | telephone | amenity | toilets | ||||
amenity | courthouse | amenity | police | ||||
amenity | public_building | amenity | townhall | ||||
amenity | fire_station | amenity | place_of_worship | ||||
tourism | information |
This table is a wiki template with a default description in English. Editable here.
Health
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
amenity | hospital | amenity | pharmacy |
This table is a wiki template with a default description in English. Editable here.
Shop
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
shop | supermarket | shop | bakery | ||||
shop | butcher | shop | kiosk |
This table is a wiki template with a default description in English. Editable here.
Traffic
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
amenity | fuel | amenity | parking |
This table is a wiki template with a default description in English. Editable here.
Eating
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
amenity | fast_food | amenity | pub | ||||
amenity | restaurant | amenity | biergarten | ||||
amenity | cafe |
This table is a wiki template with a default description in English. Editable here.
Enjoyment
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
amenity | cinema | amenity | theatre | ||||
amenity | nightclub |
This table is a wiki template with a default description in English. Editable here.
Education
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
amenity | university | amenity | school | ||||
amenity | library | amenity | college |
This table is a wiki template with a default description in English. Editable here.
Public Transport
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
highway | bus_stop | railway | tram_stop | ||||
railway | tram | railway | subway_entrance | ||||
railway | station | amenity | bus_station | ||||
amenity | taxi |
This table is a wiki template with a default description in English. Editable here.
Post
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
amenity | post_box |
|
amenity | post_office |
This table is a wiki template with a default description in English. Editable here.
Accomodation
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
tourism | hotel | tourism | hostel | ||||
tourism | motel | tourism | guest_house |
This table is a wiki template with a default description in English. Editable here.
Beschriftungen
Beschriftungen werden als 3D-Textobjekte dargestellt. Beschriftungen werden in den folgenden Ebenen gruppiert:
- Suburb Labels
- Building Labels
- Building Numbers
- County Labels
- Locality Labels
- Village Labels
- Region Labels
- City Labels
- Nature Labels
- Street Labels
Suburb Labels
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
place | suburb | place | airport |
This table is a wiki template with a default description in English. Editable here.
Building Labels
Key | Value | logical operator | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|
building | yes or true | AND | name | any |
This table is a wiki template with a default description in English. Editable here.
Building Numbers
Key | Value | logical operator | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|
building | yes or true | AND | addr:housenumber | any |
This table is a wiki template with a default description in English. Editable here.
County Labels
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
place | county |
This table is a wiki template with a default description in English. Editable here.
Locality Labels
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
place | locality |
This table is a wiki template with a default description in English. Editable here.
Village Labels
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
place | village | place | hamlet |
This table is a wiki template with a default description in English. Editable here.
Region Labels
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
place | region |
This table is a wiki template with a default description in English. Editable here.
City Labels
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
place | city | place | town |
This table is a wiki template with a default description in English. Editable here.
Nature Labels
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
natural | peak |
This table is a wiki template with a default description in English. Editable here.
Street Labels
Die Straßenbeschriftungen werden aus dem Straßennetzwerk erzeugt und als eigene Ebene angezeigt. Diese Ebene ist ebenfalls gekachelt, die Beschriftungen werden also nicht als viele kleine Objekte verarbeitet, sondern als Sammlung von Objekten innerhalb eines rechteckigen Bereichs. Die Fontgröße hängt vom Kachel-Stufe ab.
Key | Value | Element | Font Size / Tile Level | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | |||
highway | motorway | 18 | 33.6 | 62.4 | 115.2 | 211.2 | 384 | 768 | 1536 | 3072 | ||
highway | trunk | 12 | 24 | 48 | 96 | 192 | 384 | |||||
highway | primary | 12 | 24 | 48 | 96 | 192 | ||||||
highway | secondary | 12 | 24 | 48 | 96 | |||||||
highway | tertiary | 12 | 24 | 48 | ||||||||
highway | residential | 12 | 24 | |||||||||
highway | living_street | 12 | 24 | |||||||||
highway | service | 12 | 24 | |||||||||
highway | pedestrian | 12 | 24 | |||||||||
highway | footway | 12 | 24 |
This table is a wiki template with a default description in English. Editable here.
Technische Einrichtungen
Einige vom Menschen gemachte Objekte können als 3D-Symbol dargestellt werden, da sie üblicherweise eine typische Form und Farbe aufweisen.
Key | Value | Element | Rendering | Key | Value | Element | Rendering |
---|---|---|---|---|---|---|---|
man_made | lighthouse | man_made | windmill | ||||
power_source | windgenerator |
This table is a wiki template with a default description in English. Editable here.
Kartenfunktionen
Das Rendern der Karte und das Navigieren durch sie ist nicht der einzige Zweck des OSM-3D-Projektes. Der Zugriff auf Objektinformationen, das Finden von Orten und Routen, das Importieren von eigenen Touren (GPS-Tracks) und andere Karteninteraktionen sind gleichermaßen wichtig. Die meisten dieser Funktionen wurden realisiert, indem auf spezialisierte Geo-Dienste mit offenen OGC-Schnittstellen zugegriffen wird. Die Nutzung von OGC-Diensten hat den Vorteil, dass Komponenten leicht ausgetauscht werden können. Diese Dienste sind die eigentlichen Bausteine einer Geodaten-Infrastruktur. Jedoch liefern Geodienste normalerweise 2D-Daten, beispielsweise wird ein Geocoder höchstwahrscheinlich 2D-Koordinaten liefern. Um zusammen mit dem virtuellen Landschaftmodell dargestellt zu werden, muss die Höhe von einer zusätzlichen Quelle geliefert werden. Zu diesem Zweck wurde ein Elevation Query Service (EQS) eingerichtet, der die Höhenwerte aus dem DGM interpoliert. Der EQS enthält eine PostGIS-Datenbank mit triangulierten SRTM-Daten. Die folgenden Funktionen stehen in der Webstart-Version von XNavigator zur Verfügung. Manche müssen erst im Menü Fenster aktiviert werden:
Get Feature Info
GetFeatureInfo ist eine Operation des W3DS. Sie können auf die Karte klicken und bekommen dann eine Liste der Attribute des ausgewählten Objektes.
Geocoder
Geocoder ist eine übliche Komponente in Kartenanwendungen. Er erlaubt es nach Orten und Adressen zu suchen. Der Reverse Geocoder empfängt Koordinaten und schaut nach der passenden Adresse in der Datenbank. Klicken Sie auf ein Gebäude und die Adresse wird als Box erscheinen.
POI Suche
Dies ist eine praktische Funktion, um nach POIs zu suchen. Alle OMS-POIs wurden kategorisiert, räumlich indiziert und in einer PostGIS-Datenbank abgelegt. Der Zugriff auf diese Datenbank findet über einen OGC Directory Service statt. Das POI-Suchfenster („Gelbe Seiten“) bietet eine Liste verfügbarer Kategorien und Untertypen zur Auswahl an. Klicken Sie auf die Karte, legen Sie den Suchradius fest, wählen Sie entweder eine Kategorie und einen einzelnen Objekttyp aus, und auf der Karte werden alle POIs angezeigt, die der Suche entsprechen.
3D-Routing
Routing ermöglicht das Finden von kürzesten oder schnellsten Verbindungen zwischen zwei Punkten. Der 3D Route Service (3DRS) ist eine spezielle Modifikation des Dienstes, der in OpenRouteService im Einsatz ist. Er unterstützt mehrere Modi: kürzeste Route für Autofahrer, Routen für Fußgänger und Routen für Fahrradfahrer. Alle diese Modi können in OSM-3D verwendet werden. Der 3DRS liefert, im Gegensatz zum normalen RS, 3D-Linien in der Routenbeschreibung, welche einfacher importiert und zusammen mit dem DGM dargestellt werden können. Es können entweder zwei beliebige Punkte genommen oder die Adresse für Start und Ziel eingegeben werden.
GPX Import
Falls Sie einen eigenen GPS-Spur aufgezeichnet haben, kann diese hochgeladen in OSM-3D angezeigt werden.
Zugriff auf Sensordaten
Sensordaten können von einem an OGC Sensor Observation Service (SOS) abgefragt werden. Die Anzeige von Sensordaten besteht aus einem 3D-Symbol, das die Art des Sensors repräsentiert und einer Liste von Werten, die zuletzt vom Sensor aufgezeichnet wurden. Der SOS liefert Daten von Umweltsensoren, die von einer anderen Quelle gesammelt werden.
OSM-3D-Client-Software
Der Web-Client, der in OSM-3D zum Einsatz kommt, heißt XNavigator. Er wurde hauptsächlich als Client für die W3DS-Referenzimplementierung entwickelt, er erlaubt aber auch den Zugriff auf ergänzende OGC-Dienste. Daher wird er auch manchmal als „Integrierter Client“ bezeichnet. In OSM-3D erlaubt er, durch das virtuelle Stadt- und Landschaftsmodell zu fliegen, ohne dass dazu Software installiert oder konfiguriert werden muss.
XNavigator kann in drei Varianten genutzt werden:
- als Applet
- das in einer Webseite eingebunden ist. Dies stellt die einfachste Variante dar. Die Auswahl und Konfiguration der Ebenen ist festgelegt und kann nicht verändert werden. Permalinks können erzeugt und verteilt werden. Das Applet stellt ein External Authoring Interface (EAI) bereit, das einen limitierten Zugriff auf interne Funktionen bereitstellt. Auf der Seite OSM-3D-Applet finden sich hierzu nähere Informationen.
- als Java Webstart
- Diese Variante stellt eine komplette Benutzeroberfläche bereit und erlaubt vollen Zugriff auf Ebenen, Einstellungen und Kartenfunktionen wie Routing, Geocoding, Sensordatenzugriff und anderes. Als zusätzliche Navigationshilfe kann eine 2D-Übersichtskarte genutzt werden.
- als Installation
- Das gleiche wie Webstart, aber ohne Sicherheitseinschränkungen. Webstart läuft in einer „Sandbox“-Umgebung, die nur limitierten Zugriff auf Systemressourcen erlaubt. Mit der Installation können auch Modelle von der lokalen Festplatte importiert werden. Die Installation ist manchmal schneller als Webstart.
XNavigator-Homepage: http://koenigstuhl.geog.uni-heidelberg.de/xnaviwiki
Datenaktualisierungen
Einige interessante Orte
Stadt Rostock
Das erste virtuelle Stadtmodell in OSM-3D wurde für die Stadt Rostock realisiert. Das Kataster-, Vermessungs- und Liegenschaftsamt (KVL) Rostock stellte OSM bereits im April 2009 die Grundrisse der Gebäude der Stadt zur Verfügung (mit einer leichten Verfälschung der Grundrisse < 1 m), was ausreichend für ein LOD-1-Stadtmodell (siehe CityGML) ist. Auf Anfrage der Universität Bonn wurden auch die Gebäudehöhen zur Verfügung gestellt. Der Import wurde Ende August abgeschlossen. Nähere Informationen zum Import sind hier zu finden: Rostocker Gebäudehöhen Import 2009.
Screenshots
Weitere OSM-3D_Screenshots und Videos: http://www.osm-3d.org/videos.en.htm
Server
OSM-3D läuft auf mehreren Servern, die im Rechenzentrum der Universität Heidelberg (URZ) installiert sind.
Server | Function | Configuration | System |
---|---|---|---|
rax | Application server
Proxy for internal services |
CPU: 2 x Intel Xeon X5355 @ 2.66GHz
HDD: 2 x 250GB SATA 7.2k in RAID 1 RAM: 16 GB |
Windows Server 2003 Enterprise x64 Edition
Java SE 6 Apache 2.2 HTTP Server Several Apache Tomcats |
feldberg | Data processing server
Used for updates |
CPU: 2 x Intel E5440 @ 2.83GHz, Hyperthreading off
HDD: 2 x 300GB SAS RAM: 48 GB |
Ubuntu
PostGreSQL 8.4 Java SE 7 |
zimba | Database server | CPU: Intel Core 2 Quad Q6700 @ 2.66GHz
HDD: 4 x 2TB SATA 5.4k. 3 of them in S/W RAID 0 RAM: 4 GB |
Debian Squeeze
PostGreSQL 8.4 |
nebelhorn | Update server. Dedicated to building updates | CPU: Intel Pentium Dual-Core @ 2.50GHz
HDD: 250 GB RAM: 2 GB |
Windows XP
Java SE 6 |
This table is a wiki template with a default description in English. Editable here.
Statistik
Am 01/15/2011:
Buildings: 23.262.900 Point Objects: 5.659.070 Terrain Tiles: 120.030.291 / 513GB Total Database Size: 572GB Processing Database Size: 1425GB
Am 07/20/2010:
Buildings: 2.378.301 Point Objects: 5.659.070 W3DS Database Size: 99 GB Processing Database Size: 306 GB
Links
- OSM-3D_Applet
- Proposed_features/Building_attributes
- 3D_Development
- 3D_Development/Modelling
- 3D_Development/Tagging
- Indoor
- ProposedRoofLines