KML(Keyhole Markup Language)で,Google Earthに目印を置いてみる


Google Earthにプレイスマーク(目印)を置いてみました.


手順は以下のとおり.


まず,Google Earthをインストールしておきましょう.
そして,マークを置きたい座標の緯度経度を調べます.

緯度経度算出
を使わせて頂きました.


大徳寺
緯度は,35.04414830224615
経度は,135.74569702148438


この取得した緯度経度データを使って,以下のようなKMLファイルを書きます.

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.0">
<Placemark>
  <description>大徳寺</description>
  <name>大徳寺!</name>
  <LookAt>
    <longitude>135.74569702148438</longitude>
    <latitude>35.04414830224615</latitude>
    <range>300</range>
    <tilt>45</tilt>
    <heading>50</heading>
  </LookAt>
  <visibility>1</visibility>
  <Style>
    <IconStyle>
      <Icon>
        <href>root://icons/palette-3.png</href>
        <x>96</x>
        <y>160</y>
        <w>32</w>
        <h>32</h>
      </Icon>
    </IconStyle>
  </Style>
  <Point>
    <extrude>1</extrude>
    <altitudeMode>relativeToGround</altitudeMode>
    <coordinates>135.74569702148438, 35.04414830224615, 0</coordinates>
  </Point>
</Placemark>
</kml>


上のコードの中で,LookAtはビューのフォーカスポイントを示しています.

  <LookAt>
    <longitude>135.74569702148438</longitude>→経度
    <latitude>35.04414830224615</latitude>→緯度
    <range>300</range>→フォーカスポイントから視点までの距離
    <tilt>45</tilt>→水平を傾けた角度(0:真上から見下ろす角度,90:水平な角度)
    <heading>50</heading>→方向を回転させた角度(東向き:90,北向き:0,西向き:-90)
  </LookAt>

経度,緯度,高さがそれぞれ,以下のように記述できます.

    <coordinates><span style="font-weight:bold;">135.74569702148438, 35.04414830224615, 0</span></coordinates>


このファイルを,拡張子がkmlという名前のファイル名(〜.kmlで保存します.
ファイルができたら,サーバにアップロードして公開します.


Web上にKMLファイルをアップロードする時,MIME Typeの設定が必要です.
MIME Typeを設定することで,KMLファイルはGoogle Earthで開くファイルであることを指定することができます.逆にこの指定がないと,ソースコードがコードのまま出力されてしまいます.


MIME Typeの設定は,.htaccessファイルに以下の記述を入れることにより行いました.

AddType Application/vnd.google-earth.kml+xml .kml
AddType Application/vnd.google-earth.kmz .kmz

そして,この.htaccessファイルもサーバにアップロード.
これで作業は完了です.
無事,3Dの大徳寺MAPが表示されました!