In KML können Sie 3D-Modelle wie Gebäude, Brücken, Denkmäler und Statuen in das COLLADA-Austauschdateiformat importieren. Modelle werden unabhängig von Google Earth in ihrem eigenen Koordinatenbereich definiert, indem sie Anwendungen wie SketchUp, 3D Studio Max, Softimage XSI oder Maya verwenden. Wenn ein 3D-Modell in Google Earth importiert wird, wird es übersetzt, gedreht und skaliert, damit es in das Earth-Koordinatensystem passt. Modelle, die bereits in Google Earth geladen wurden, können mithilfe des <Update>-Elements neu positioniert und ihre Größe angepasst werden. |
Beispielmodell
Ein Modell wird in Google Earth wie jedes andere Geometrieobjekt (Punkt, Linienzug oder Polygon) verwendet. Hier ein einfaches Beispiel für eine KML-Datei, die ein strukturiertes Modell importiert.
Der <Link>-Verweis auf das Modell kann eine absolute oder relative Dateispezifikation oder eine URL sein.
Um dieses Modell anzuzeigen, laden Sie die Datei MackyBldg.kmz. Dabei handelt es sich um ein Archiv, das alle erforderlichen Textur- und Overlay-Dateien sowie die Datei doc.kml enthält, die das Modell enthält:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Placemark>
<name>SketchUp Model of Macky Auditorium</name> <description>University of Colorado, Boulder; model created by Noël Nemcik.</description>
<LookAt>
<longitude>-105.2727379358738</longitude>
<latitude>40.01000594412381</latitude> <altitude>0</altitude> <range>127.2393107680517</range>
<tilt>65.74454495876547</tilt> <heading>-27.70337734057933</heading> </LookAt> <Model id="model_4"> <altitudeMode>relativeToGround</altitudeMode>
<Location>
<longitude>-105.272774533734</longitude>
<latitude>40.009993372683</latitude>
<altitude>0</altitude>
</Location>
<Orientation>
<heading>0</heading>
<tilt>0</tilt>
<roll>0</roll>
</Orientation>
<Scale>
<x>1</x>
<y>1</y>
<z>1</z>
</Scale> <Link> <href>MackyBldg.kmz/files/CU Macky.dae</href> </Link>
<ResourceMap id="resourcemap_for_model_4"> <Alias>
<sourceHref>../files/CU-Macky---Center-StairsnoCulling.jpg</sourceHref>
<targetHref>C:/DOCUME~1/josiew/LOCALS~1/Temp/MackyBldg.kmz/files/CU-Macky---Center-StairsnoCulling.jpg</targetHref>
</Alias>
<Alias>
<sourceHref>../files/CU-Macky-4sideturretnoCulling.jpg</sourceHref>
<targetHref>../files/CU-Macky-4sideturretnoCulling.jpg</targetHref>
</Alias>
<Alias>
<sourceHref>../files/CU-Macky-Back-NorthnoCulling.jpg</sourceHref>
<targetHref>../files/CU-Macky-Back-NorthnoCulling.jpg</targetHref>
</Alias>
<Alias>
<sourceHref>../files/CU-Macky-BrickwallnoCulling.jpg</sourceHref>
<targetHref>../files/CU-Macky-BrickwallnoCulling.jpg</targetHref>
</Alias> . . . </ResourceMap>
</Model>
</Placemark>
</kml>
Das Modell wird geografisch in Bezug auf Breiten- und Längengrad, Höhenangaben und -Elemente positioniert. In diesem Beispiel werden Standardwerte für die Elemente „Orientation“ und „Scale“ verwendet, die hier vollständig sind.
Das Ausrichtungselement gibt die Rotationen des Modells um die x-Achsen (tilt), y (roll) und z (heading) an. Die y-Achse zeigt nach Norden und ist parallel zu den Längengradlinien, die x-Achse nach Osten und parallel zu den Breitengradlinien. Die Umdrehungen werden in Grad angegeben, mit positiven Drehungen, wie im folgenden Diagramm dargestellt.
Das ResourceMap-Element ordnet die Texturdateien vom in der ursprünglichen COLLADA-Datei angegebenen Speicherort (<sourceHref>) zu einem Speicherort in der KML- oder KMZ-Datei (<targetHref>) mit dem Modell zu.
Hinweis: In Versionen vor Google Earth Version 4.2 wurde diese Zuordnungsfunktion in der Datei textures.txt (einer externen Datei im KMZ-Archiv) durchgeführt. Google Earth 4.2 akzeptiert KML- und KMZ-Dateien, die auf eine textures.txt-Datei verweisen, und verarbeitet sie korrekt. Wenn solche Dateien von Google Earth 4.2-Clients und höher ausgegeben werden, werden die Informationen in der Datei textures.txt in die Elemente <ResourceMap> und <Alias> übersetzt, die <Model> untergeordnet sind.
.kmz-Archiv erstellen
Ein KMZ-Archiv ist eine Sammlung von Dateien, die zur Erstellung einer einzelnen KML-Präsentation verwendet werden. Dieses Archiv enthält alle lokalen Dateien, auf die in der KML-Datei verwiesen wird, z. B. Bilder, Texturen und Modelle. Ein KMZ-Archiv ist ein eigenständiges Paket, das nicht auf einem Netzwerkserver gehostet werden muss und leicht als eine Einheit versendet und gespeichert werden kann. Google Earth kann KML- und KMZ-Dateien direkt lesen.
Die doc.KML-Datei und die lokalen Dateien, auf die sie verweist, werden im ZIP-Dateiformat komprimiert. Viele Anwendungen können dieses Format erzeugen. WinZip-Dateien auf Windows-Systemen, Stuffit auf Macintosh-Systemen und Zip-Dateien unter Linux- oder Macintosh-Systemen sind beliebte Anwendungen, die das ZIP-Format lesen und schreiben können. Sie können auch direkt im Windows Explorer oder Mac Finder mit ZIP-Archiven arbeiten.
Ändern Sie die .zip-Datei nach der Erstellung zu .kmz.
Das KMZ-Archiv mit dem vollständigen strukturierten Modell für das Macky Building enthält folgende Dateien:
- doc.kml: Dies ist die oben gezeigte KML-Datei, mit der das COLLADA-Modell (.dae) importiert und in Google Earth platziert werden kann. Legen Sie diese Datei im Stammverzeichnis der KMZ-Datei (ZIP-Datei) ab.
- files/ -Verzeichnis – enthält die COLLADA-Dateien, die die Geometrie, die Texturen und das Material des Modells definieren. Im Beispiel „Macky Building“ enthält dieses Verzeichnis die COLLADA-Datei (CU Macky.dae) sowie die zahlreichen Dateien mit den JPEG-Bildern, die für die Textur des Gebäudes verwendet wurden (CU-Macky-BrickwallnoCulling.jpg, CU-Macky--Center-StairsnoCulling.jpg, CU_Macky-EastdetaildoornoCulling.jpg und so weiter).
Dieses Beispiel zeigt eine Möglichkeit, die Dateien in einem KMZ-Archiv zu strukturieren. Eigentlich können Sie die Dateien in einer beliebigen logischen Struktur anordnen, so wie Sie die Dateien auf Ihrem Computer in Ordnern oder Verzeichnissen organisieren. Es kann beispielsweise sinnvoll sein, alle Bilder in einem images/-Verzeichnis zu speichern. Relative Bezüge (wie die Dateien, auf die im <href>-Element verwiesen wird, das in NetworkLink, Link, Overlay/Icon und Model verwendet wird) werden relativ zur Datei doc.kml angegeben. Wenn Sie ein Bildverzeichnis einschließen, wäre die <href>-Spezifikation für Ihre Bilder: images/myBrickTexture.jpg, images/myMountainOverlay.png usw.