4. 3D-Stadtmodell
4.1. Lernziele
Umgang mit 3D Daten in ArcGIS Pro
Erstellung eines TINs / digitalen Geländemodells
Überlagerung mit 2D-Daten (Drape)
Übergang in den 3D-Raum
4.2. Hintergrund der Übung
Digitale Höhenmodelle (DHM) kommen in einer Vielzahl von Anwendungen zum Einsatz. Sichtbarkeitsberechnungen, Ermittlung von Solarpotentialen, Katastrophenmanagement, Lärmanalysen oder 3D-Gebäudemodelle sind nur einige Beispiele. Die benötigten Daten können per Hand über Tachymeter, GPS und Digitalisierung von Höhenlinienkarten oder über Radar, Luftbilder und Laserscanning ermittelt werden. Zusätzlich gibt es zahlreiche Möglichkeiten, wie Gitterlinien (Grids), TINs, Höhenlinien, Schummerungen und Kombinationen daraus, ein digitales Höhenmodell graphisch darzustellen.
4.2.1. Digitale Höhenmodelle
Bei der Befliegung mit einem Laserscanner wird die Geländeoberfläche mit einem Laserstrahl abgetastet. Der Laserstrahl kann dabei nur einfach (z.B. Gelände) oder aber auch mehrfach (z.B. zuerst von Blättern und danach vom Boden) reflektiert werden. Die erste Reflektion wird als First Pulse bezeichnet, die letzte Reflektion als sogenannter Last Pulse. Aus dem First Pulse wird das Digitale Oberflächenmodell (DOM), aus dem Last Pulse das Digitale Geländemodell (DGM) abgeleitet. Das DGM stellt die reine Oberfläche der Erde ohne Bebauung, Vegetation, Fahrzeuge etc. dar. Das DOM hingegen beinhaltet zusätzlich auf der Erde befindliche Objekte.
Abb. 4.1 Vergleich von DOM und DGM
Frage: Wie können diese Informationen genutzt werden, um herauszufinden wieviele Gebäude in einem bestimmten Bereich Höher als 10 Meter sind und wo sich diese befinden?
4.2.2. TINs
TINs (Triangulated Irregular Network) werden zur Darstellung von dreidimensionalen Oberflächen verwendet. Dies kann z.B. über ein PointFeature geschehen, welcher mit dreidimensionalen Koordinaten angelegt wird, in dem die jeweiligen Punkte mit ihren Höhenwerten gespeichert werden können. Diese Punkte können entsprechend der Datenquelle entweder ein regelmäßiges Raster bilden oder beliebig verteilt auftreten. Je mehr Punkte für einen bestimmten Raum verfügbar sind, desto genauer wird das fertige Modell. Jedoch erhöht sich dabei die Datenmenge und damit auch die Rechenzeiten enorm.
Als nächstes werden die Punkte so miteinander verbunden, dass dabei Dreiecke entstehen (Dreiecksvermaschung). Für diesen Schritt gibt es verschiedene Methoden (z.B. Delaunay-Triangulation), jedoch erhält man in jedem Fall im Anschluss ein vektorbasiertes Datenmodell. In einer Delaunay-Triangulation erfüllen alle Dreiecke des Dreiecksnetzes die sogenannte Umkreisbedingung: Der Umkreis eines Dreiecks des Netzes darf keine weiteren Punkte der vorgegebenen Punktmenge enthalten. Die dadurch entstandenen Dreiecke werden nun mit einer Flächenfüllung versehen, welche linear interpoliert wird. Man erhält ein dreidimensionales Geländemodell (3D-Darstellung in ArcGIS Pro), das in ArcGIS Pro zweidimensional und Höhen-farbcodiert dargestellt wird.

Abb. 4.2 Erstellung eines TINs (ESRI, RESOURCE CENTER)
4.3. Ziel der Übung
Es soll ein 3D-Stadtmodell eines Ausschnitts aus München unter Verwendung eines DGM und DOM erzeugt werden. Zweidimensionale Daten werden über das TIN gelegt (Drape). Gebäude werden durch Extrusion vom 2D-Raum in den 3D-Raum erhöht. Durch Erzeugung von Puffern sollen linienhafte Straßen exemplarisch definierte Breiten erhalten. Abschließend soll eine einfache Analyse mit den erstellen 3D-Gebäudemodellen durchgeführt werden.
Übungsziel 1 - Bestimmung der Gebäudehöhen
Zu Beginn werden die Gebäudehöhen für das 3D-Stadtmodell berechnet. Da keine Gebäudehöhen vorliegen, müssen diese zunächst hergeleitet werden. Dies geschieht durch Differenzbildung zwischen DOM-Höhe und DGM-Höhe.
Übungsziel 2 - TIN-Erstellung
Für das zweite Übungsziel werden Sie mithilfe gegebener Laserpunktdaten ein TIN erstellen; dies dient als Grundlage für die Überlagerung der 2D-Daten.
Übungsziel 3 - Überlagerung von 2D-Daten
Im Anschluss werden die zweidimensionalen Layer auf das TIN überlagert (Drape). Diese werden somit an die Topographie des Geländes angepasst.
Übungsziel 4 - Übergang zu 3D und Analysen im 3D-Stadtmodell
Zuletzt müssen die Gebäude anhand ihres Grundrisses und der berechneten Höhe extrudiert werden. Dabei entstehen dreimensionale Klötzchen-Modelle (= Level of Detail (LoD) 1). Die Straßen sollen von Linien in Flächen übergehen. Dazu steht eine vorgegebene Breiteninformation für die verschiedenen Straßentypen bereit. Dies geschieht durch Pufferung. Abschließend soll eine einfache Analyse der 3D-Daten durchgeführt werden.
4.4. Übungsumsetzung
4.4.1. Vorbereitung
Erstellen Sie auf dem Desktop einen Abgabeordner mit passendem Namen (z.B. GIS_UE_4)
Laden Sie die Zip-Ordner für die Übung 4 von Moodle herunter (DGM_points und Uebung4Datensatz), kopieren Sie diese in Ihren gerade erstellten Abgabeordner und entpacken Sie diese.
Öffnen Sie ArcGIS Pro. Erstellen Sie ein neues Projekt (geben Sie den Speicherpfad zu Ihrem Abgabeordner an) und wählen Sie dabei Local Scene (nicht Map wie in den bisherigen Übungen. Map = 2D / Scene = 3D).
Sollten Sie versehentlich Map gewählt haben, so können Sie im Projekt im Reiter View –> Convert –> To local Scene wechseln.
Verbinden Sie in ArcGIS Pro die Geodatenbank mit Add Folder Connection nach einem Rechtsklick auf Folders im Catalog. Klicken Sie anschließend mit einem Rechtsklick auf die Geodatenbank und wählen Sie Add To Project. Unter Databases können Sie nun die Geodatenbank mit einem Rechtsklick und Make Default zur Standarddatenbank machen. (Dies ist wichtig, da so alle Ergebnisse in dieser Datenbank gespeichert werden).
Fügen Sie aus der Geodatenbank den Layer Gebäude hinzu sowie das Point-Feature DGMHoehen, wobei Sie diesen gleich wieder ausblenden, indem Sie das Häkchen in der Box links neben dem Layer in Contents deaktivieren.
Bevor Sie mit dem nächsten Schritt fortfahren, machen Sie sich mit den Navigationswerkzeugen der Scene vertraut. Klicken Sie zunächst auf die Erdkugel (Full Extent), um zu einer Gesamtansicht zu gelangen:
Probieren Sie die Navigationstools aus. Unten links in der Scene gibt es noch weitere Navigationsmöglichkeiten. Klicken Sie auf Full Extent, um zur Gesamtansicht zurückzukehren. Wenn Sie einen bestimmten Layer betrachten wollen, rechtsklicken Sie dazu auf den Layer und wählen Sie Zoom To Layer. Die Navigation ist natürlich auch mit der Maus möglich (Mausrad gedrückt halten für 3D-Rotationen).
Speichern Sie das Projekt in Ihrem Abgabeordner
4.4.2. Umsetzung - Bestimmung der Gebäudehöhen
Der Layer DGMHoehen enthält die erforderlichen Geländehöhen. Verknüpfen Sie diese mit dem Gebäudelayer, indem Sie einen Join durchführen. Abhängig von der Lage des Gebäudes werden auf dieses Gebiet fallende Geländehöhen dem Gebäude zugeordnet.
Verwenden Sie die Join-Operation, um diese Aufgabe zu bewerkstelligen:
Rechtsklicken Sie dazu auf den Layer Gebaeude, navigieren sie zu Joins and Relates und klicken Sie auf Spatial Join
In Join Features wählen Sie für den Layer DGMHoehen
In Output Feature Class geben Sie dem Layer einen aussagekräftigen Namen wie z.B. GebaeudeMitDGMHoehen. In neueren Versionen von ArcGIS Pro werden Attribute direkt in den bestehenden Gebäude-Layer übernommen. In diesem Fall benennen Sie den Layer Gebäude zu GebaeudeMitDGMHoehen um. Im Attribut Table des Layers können Sie sehen, ob die Attribute übernommen wurden.
Führen Sie den Join mit OK durch

Abb. 4.3 Spatial Join der Gebäudehöhen
Betrachten Sie mit einem Rechtsklick auf den Layer unter Attribute Table das Ergebnis. Es sollte eine zusätzliche Spalte grid_code vorhanden sein, welche die DGM-Höhen beinhaltet.
Fügen Sie nun den Layer GebaeudeMitDOMHoehen hinzu. Dieser beinhaltet die bereits prozessierten DOM-Höhen für die Gebäude. Verbinden Sie diese Höhen mit den vorher erzeugten DGM-Höhen, um einen neuen Layer zu erstellen, welcher dann die beiden Datensätze beinhaltet. Damit kann dann die Differenz und somit die Gebäudehöhe bestimmt werden.
Verwenden Sie erneut die Spatial-Join-Operation:
Rufen Sie mit einem Rechtsklick auf Ihr eben erstelltes Feature GebaeudeMitDGMHoehen wieder das Spatial-Join-Menü auf
Join Features ist das gegebene Feature GebaeudeMitDOMHoehen
Join Operation: JOIN_ONE_TO_ONE
Match Option: ARE_IDENTICAL_TO
Führen Sie die Operation aus
In neueren Versionen von ArcGIS Pro werden die zusätzlichen Attribute erneut direkt in den Layer GebäudeMitDGMHöhen übertragen. Benennen Sie diesen daher in GebaeudeMitDGMHoehen_SpatialJoin um.
Entfernen Sie im Table Of Contents die Layer GebaeudeMitDGMHoehen, GebaeudeMitDOMHoehen und Gebaeude. Sie benötigen ab jetzt nur Ihren Gebäude-Layer aus dem 2. Spatial Join!
Sie können nun mit dem neuen Layer aus dem Spatial Join die Differenz zwischen DOM und DGM ausführen. Gehen Sie dazu zur Attributtabelle des Layers.
Verwenden Sie für die Höhenberechnung Calculate Field in der Attribute Table des neuen Layers:
Erstellen Sie zuerst eine neue Spalte, die das Ergebnis der Berechnung enthalten soll
Klicken Sie dazu auf Add
Die neue Spalte Gebaeudehoehe ist vom Typ Double
Speichern Sie die neu erstellet Tabellenspalte durch einen Klick auf das Speichersymbol (Save, oben in der Mitte des Bildschirms)

Abb. 4.4 Hinzufügen einer neuen Spalte im Attribute Table
Rechtsklicken Sie im Attribut Table auf den Namen der neuen Spalte und wählen Sie Calculate Field
Ziehen Sie die DGM-Höhe grid_code von der DOM-Höhe DOMHoehe ab
Bestätigen Sie bei möglichen Warnungen mit Ja
Das Ergbnis sind positive Werte, sollten Sie negative Werte erhalten haben Sie gird_code und DGMHoehe vertauscht. Führen Sie in diesem Fall die Berechnung erneut korrekt aus.

Abb. 4.5 Berechnung der Gebäudehöhen
4.4.3. Umsetzung - TIN Erstellung
Das Point-Feature DGM_points stellt die Punktwolke dar, die dazu genutzt werden soll, um ein TIN zu erstellen. Durch die Dreiecksvermaschung erhält man für die Punkte eine Höheninformation (d.h. 2,5D).
Verwenden Sie das Create TIN-Tool: Geoprocessing –> 3D Analyst Tools –> TIN Dataset –> Create TIN
Input Features: DGM_points
Geben Sie für Output TIN einen Namen an
Bestätigen Sie dann die Auswahl mit Run

Abb. 4.6 Erstellung des TIN
4.4.4. Umsetzung - Überlagerung von 2D-Daten
Nun werden die Layer auf das erstellte TIN hochgezogen (Drape). Beginnen Sie zunächst mit den Baulich geprägten Flächen.
Fügen Sie die Feature-Class Baulich_gepraegte_Flaechen hinzu
Verschieben Sie ihr eben erstelltes TIN-Layer in Contents in den Bereich Elevation Surfaces unter Ground
Entfernen Sie ggf. den Haken beim vorgegebenen Geländelayer WorldElevation3D/Terrain3D
Der Layer der Baulich geprägten Flächen sollte automatisch die neue Grundhöhe annehmen. Falls nicht, überprüfen Sie mit einem Rechtsklick auf das Layer in Contents unter Properties, das in dem Reiter Elevation bei Features are die Einstellung On the ground ausgewählt ist.

Abb. 4.7 Drape der Grundfläche
4.4.5. Umsetzung - 3D-Stadtmodell
Die Gebäudeflächen werden nun unter Verwendung der berechneten Gebäudehöhen auf diese Höhen hochgezogen (Extrusion).
Verschieben Sie das Gebäudelayer aus dem Spatial Join in den Contents Bereich 3D Layers
Wählen Sie oben in der Menüleiste den Reiter Appearance (in neueren Versionen heißt der Reiter Feature Layer)
Unter Extrusion legen Sie als Type die Einstellung Min Height fest
Als Field wählen Sie Gebaudehoehe (Dieses Feld haben Sie oben in der Attribute Table hinzugefügt)
Sie sollten nun eine 3D-Darstellung des Layers sehen

Abb. 4.8 Extrusion des Layers
4.4.6. Anwendnung - Einfache Analyse im 3D-Stadtmodell
Es gibt verschiedene Möglichkeiten, Analysen mit diesem einfachen 3D-Modell durchzuführen (z.B. mit Abfragen).
Selection by Attributes:
Ermöglicht eine SQL-Abfrage
Ausgewählte Merkmale werden nur hervorgehoben
Das Speichern ist ohne weitere Aktionen nicht möglich
Definiton Query:
SQL-Abfrage ist ebenfalls möglich
Nur die ausgewählten Merkmale können verwendet werden
Nicht selektierte Features können nicht verwendet werden, bis die Abfrage aufgehoben wird (durch Löschen oder Ändern der Abfrage)
Beim Speichern des Projekts bleibt die Abfrage erhalten
Verwenden Sie die wie folgt eine Definition Query für die folgende Aufgabe:
Öffnen Sie die Eigenschaften (Properties) von GebäudeMitHöhen_SpatialJoin
Wählen Sie die Registerkarte Definition Query und klicken Sie auf die Schaltfläche New Definition Query.
Führen Sie eine SQL-Abfrage aus, um nur Gebäude mit einer Höhe von mehr als 10 Metern auszuwählen (oder ein beliebiger anderer sinnvoller Höhenwert).
Bestätigen Sie Ihre Auswahl mit Übernehmen und OK.

Wählen Sie mit einem Rechtsklick auf dem Layer GebaeudeMitDGMHoehen_SpatialJoin die Symbology aus.
Wählen Sie für die Primari Symbology abgestufte Farben (Graded Colors) mit einer geeigneten Anzahl von Klassen. Wählen Sie ein Farbschema (abweichend von dem im Screenshot unten). Die Gebäude werden nun entsprechend der jeweiligen Gebäudehöhe eingefärbt.
Erstellen Sie eine Karte oder einen Screenshot in der Ihr 3D-Stadtmodelle mit Analyseneinfärbung zu sehen ist und fügen Sie diese Ihrem Abgabeordner hinzu.
Speichern Sie Ihr Projekt in Ihrem Abgabeordner
Laden Sie den Abgabeordner auf Moodle hoch.

4.4.7. Weiterführende Informationen
Unter folgendem Link finden Sie einige Beispiele für 3D Stadtmodelle (u.a. NYC)
https://wiki.tum.de/display/gisproject/Online+Demo+Collection