No KML, é possível importar modelos 3D, como edifícios, pontes, monumentos e estátuas, no formato de arquivo intercambiável COLLADA. Os modelos são definidos de forma independente ao Google Earth em seus próprios espaços de coordenadas, usando aplicativos como SketchUp, 3D Studio Max, Softimage XSI ou Maya. Quando um modelo em 3D é importado no Google Earth, ele é convertido, girado e dimensionado para caber no sistema de coordenadas da Terra. Modelos já carregados no Google Earth podem ser reposicionados e redimensionados usando o elemento <Update>. |
Amostra de modelo
Um modelo é usado no Google Earth como qualquer outro objeto de geometria (ponto, linestring ou polígono). Veja um exemplo simples de arquivo KML que importa um modelo com textura.
A referência de <Link> para o modelo pode ser uma uma especificação de arquivo absoluto ou relativo ou um URL.
Para visualizar esse modelo, carregue o arquivo MackyBldg.kmz, que é um arquivo que contém todos os arquivos de textura e superposição necessários, além desse arquivo doc.kml que contém o modelo:
<?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>
O modelo é posicionado geograficamente com as especificações de latitude, longitude e altitude do elemento Location. Esse exemplo usa valores padrão para os elementos Orientation e Scale, incluídos aqui para fins de integridade.
O elemento Orientation especifica rotações do modelo em torno dos eixos x (tilt), y (roll) e z (heading). O eixo y aponta para o Norte e é paralelo às linhas de longitude, e o eixo x aponta para o Leste e é paralelo às linhas de latitude. As rotações são especificadas em graus, com rotações positivas, como mostra o diagrama a seguir.
O elemento ResourceMap mapeia os arquivos de textura a partir do local especificado no arquivo Collada original (<sourceHref>) até um local no arquivo KML ou KMZ (<targetHref>) que contém o modelo.
Observação: nas versões anteriores do Google Earth 4.2, essa função de mapeamento era realizada pelo arquivo textures.txt (um arquivo externo incluído no arquivo KMZ). O Google Earth 4.2 aceita arquivos KML e KMZ que se referem a um arquivo textures.txt e processa-os corretamente. Quando esses arquivos são gravados pelos clientes do Google Earth 4.2 e posteriores, as informações no arquivo textures.txt são convertidas nos elementos <ResourceMap> e <Alias>, que são filhos de <Model>.
Como criar um arquivo .kmz
Um arquivo KMZ é um conjunto de arquivos usado para criar uma única apresentação KML. Esse arquivo inclui todos os arquivos locais referenciados no arquivo .kml, como imagens, texturas e modelos. Um arquivo KMZ é um pacote independente que não precisa ser hospedado em um servidor de rede e pode ser facilmente enviado por e-mail e armazenado como uma única unidade. O Google Earth pode ler arquivos .kml e .kmz diretamente.
O arquivo doc.kml e os arquivos locais aos quais ele faz referência são compactados em um arquivo usando o formato de arquivo ZIP. Muitos aplicativos podem produzir esse formato. WinZip em sistemas Windows, Stuffit em sistemas Macintosh e zip em sistemas Linux ou Macintosh são aplicativos populares que podem ler e gravar no formato ZIP. Também é possível trabalhar com arquivos zip usando o Windows Explorer ou o Mac Finder diretamente.
Depois de criar o arquivo .zip, altere a extensão do arquivo para .kmz.
O arquivo KMZ que contém o modelo com textura completo para o Macky Building inclui estes arquivos:
- doc.kml - o arquivo KML mostrado acima, que importa o modelo Collada (.dae) e o coloca no Google Earth. Coloque esse arquivo no diretório raiz do arquivo KMZ (ZIP).
- Diretório files/ - contém os arquivos COLLADA que definem a geometria, as texturas e o material do modelo. No exemplo do Macky Building, esse diretório contém o arquivo Collada (CU Macky.dae), além dos diversos arquivos contendo as imagens JPEG usadas para aplicar textura ao edifício (CU-Macky-BrickwallnoCulling.jpg, CU-Macky--Center-StairsnoCulling.jpg, CU_Macky-EastdetaildoornoCulling.jpg e assim por diante).
Esse exemplo ilustra uma maneira de estruturar os arquivos em um arquivo KMZ. Na verdade, é possível organizar os arquivos em qualquer estrutura que pareça lógica para você, assim como você organiza os arquivos em pastas ou diretórios em seu computador. Por exemplo, talvez seja útil colocar todas as imagens em um diretório images/. Referências relativas (como os arquivos citados no elemento <href> usados em NetworkLink, Link, Overlay/Icon e Model) são especificadas de forma relativa ao arquivo doc.kml. Se você incluir um diretório images, a especificação <href> para suas imagens será: images/myBrickTexture.jpg, images/myMountainOverlay.png etc.