3D in QGIS vor QGIS 3
● QGIS Globe (C++ Plugin basierend auf OSGEarth)● qgis2threejs (Plugin für Export ins Web)
○ Braucht WebGL-fähige Webbrowser○ neben Webserver keine Server-SW nötig○ Interaktivität: Layersteuerung, Verschiebbare Ebene,
Navigationswerkzeuge, Attributdaten abfragen○ Nützlich, aber eingeschränkt bei grossen Szenen
● Example Mt. Aso Japan
3D nativ in QGIS seit Version 3.0
● QGIS grant im Jahr 2017● Basierend auf qt5-3d and OpenGL● Separate 3D view neben 2D view● Per Projekt-Konfiguration und per layer
configuration● Wird von Version zu Version
weiterentwickelt
Beispiel Stadt-Modell Prag
● Stadtmodell mit Brücken (3d-Polygone oder multipatch) und Gelände (DTM raster oder TIN (3d-Polygone)) from Prague
● Quellen:○ Gebäude:
http://www.geoportalpraha.cz/cs/opendata/44EE8B0A-641A-45E8-8DC9-CF209ED00897#.Wyjp74SLTmE
○ Gelände: http://www.geoportalpraha.cz/cs/opendata/6F72EDDF-CAA4-4243-8776-7006CB0B2521
○ Brücken: http://www.geoportalpraha.cz/cs/opendata/C9B6B3BD-217E-4819-B58F-5F574DC6FC78
Beispiel Höhlen im Wägital
● Höhleneingänge als “Zylinder” und Höhlengänge projiziert auf auf Oberfläche (links) und in Echt-3D (rechts) unter Gittermodell des Geländes
● Daten nicht öffentlich
Beispiel Kanton Zug
Kanton Zug: Swissbuildings (multipatch), SwissTLM3D und Daten der Amtlichen Vermessung
Daten derzeit nur kommerziell erhältlich
Github-Repo mit frei zugänglichen 3D-Daten
https://github.com/wonder-sk/3d-spatial-data
Unterstützte Formate
● Raster-Geländemodelle: GeoTIFF oder alle von QGIS unterstüzten Rasterformate
● 2D Überlagerungen und Extrusionen: alle von QGIS unterstützten Vektorformate
● 3D-Daten: Geopackage, Postgis, GML, (ESRI shape)● 3D-Modelle: alle Formate
der Assimp-Bibliothek - https://github.com/assimp/assimp
3D in OpenStreetMap
OpenStreetMap
● Nützliche tags: “height”, “building:levels”, “roof:shape” https://wiki.openstreetmap.org/wiki/Simple_3D_buildings
● Vorschlag: “echte” 3D Gebäude - inklusive Innen-Objekte (floors, windows, doors)https://wiki.openstreetmap.org/wiki/F3DB
Was funktioniert in QGIS 3D?
● Ansichten für 3D-Darstellung und Navigation● Anzeige von Geländemodellen aus Rasterdateien
(on-the-fly Triangulierung mit Auflösungen)● Bestehende 2D-Symbologie kann auf
Geländemodell draufdrapiert werden● Extrusion von Polygonen und Linien aus 2D Daten● Darstellung von 3D-Polygonen (z.B. Modelle von
Gebäuden und Brücken)● Darstellungen einfacher 3D-Geometrien (Kugeln,
Zylinder, Quader, Kegel) an Punkt-Positionen● Darstellung kompl. 3D-Modelle an Punkt-Positionen
Was funktioniert in QGIS 3D?
● Regelbasierte Symbologie● Einstellungen von Schattierungs und
Licht-Einstellungen● Abfragen von Attributinformationen● 3D-Szenen im Kartenlayout einbinden
Per 3D-View Konfiguration
Per 3D-View Einstellungen für
● Kamera● Geländemodell und Überhöhung● Schattierung● Lichter● Auflösung● Diverses
Per Layer Konfiguration
Per 3D-View Einstellungenin Layer-Eigenschaften:
● Einzelsymbol oder regelbasiert● Farben:
diffus, ambient, specular● Höhe: absolut, relativ oder
vom Gelände● Transformation:
Translation, Rotation, Skalierung● Bei Punkten:
Formen (Kugel, Zylinder, Würfel,Kegel, Ebene, Ring/Torus)
● Bei Linien/Polygonen:Extrusion oder Höhenbindung
● Bei Polygonen: Behandlung vonCulling, Rückseiten, invertierteNormale
Navigation mit Pfeiltasten
● Fokus muss in 3D-Ansicht sein!● Pfeiltasten:
↑: nach vorne, ↓: nach hinten←: nach links, →: nach rechtsShift + ← | →: Modell drehenCtrl + ← | →: Um eigene Achse drehen (rundherum)Shift + ↓ | ↑: Modell kippenCtrl + ↓ | ↑: Blick nach oben oder unten
● PgUp: Aufzug nach oben, PgDn: Aufzug nach unten
Navigation mit Maus
● Linke Maustaste:Veränderung eigener StandpunktShift-Links: Modell drehen kippenCtrl-Links: Blickwinkel ändern
● Mittlere Maustaste:Drehen/Kippen des Modells
● Rechte Maustaste:Zoomen:rein: nach unten ziehen, raus: nach oben ziehen
● Zoom Full Button:Ansicht ganzes Modell von oben
Animation (ab Version 3.6)
● Animationsleisteeinblenden
● Keyframes setzenoder editieren
● Interpolationsartwählen
Video erstellen (ab Version 3.8)
● Einzelframes rechnen: Bilder in separatem Ordner● Einzelframes mit “ffmpeg” zu Video
zusammenfügen:
ffmpeg -i pfad_zu_bild/frame_3d%04d.jpg \ -c:v libx264 \ -vf "fps=30" \ video_qgis3d_kt_zug.mp4
frames per secoond
Video codec
Ausgabe-Datei
Quellbilder
3D Gitternetzlinien erzeugen
Modell mit Kombination aus Layer Extent (DTM) → Grid (Linien) erzeugen → Densify → Drape (DTM) → Geopackage
Was funktioniert noch nicht?
● Kein Caching der Triangulationen● Kein paralleles Laden/Triangulieren der 3D-Daten● Grosse Szenen laden lange oder crashen ...● Undo/Redo Navigation● Keine Objekt-Hervorhebung beim Abfragen von
3D-Objekten● Kein brushing (Hervorhebung in 2D hebt
korrespondierende Objekte in 3D nicht hervor)● Link 2D/3D-Ansicht: Kameraposition von 3D in 2D
Wunschliste
● Verbesserungen beim Laden und Cachen grosser Szenen (Parallelisierung, tiling, Vereinfachung weiter entfernter Objekte)
● Hervorheben von Kanten bei 3D-Polygonen ● Texturen● Rendering-Techniken: Schatten und Transparenz● Punkte als Billboards mit Beschriftungen● Integration mit Time-Manager● Messen und Profile● Integration 3D-Model-Repository
Dank an
● Martin Dobias (Lutra Consulting)● QGIS Community für Finanzierung des QGIS 3D grant● Crowd-Funding Beitragende im Jahr 2018● Frühere QGIS-3D-Entwickler: QGIS globe and
qgis2threejs. P. Kalberer, M. Walker, S. Mani, M. Kuhn, M. Bernasocchi, Minoru Akagi, Olivier Dalang, Luca Casagrande, Stefano Cudini, Josef K, Célian