KML よくある質問


KML について

KML は、Google Earth などの Earth ブラウザで地理データを表示するために使用されるファイル形式です。特定の場所についての KML ファイルを作成し、イメージ オーバーレイを追加して、豊富なデータを公開できる新しい方法です。KML は、Open Geospatial Consortium, Inc.(OGC)が維持している国際標準です。

KML の対象ユーザー

Google Earth Community フォーラムをご覧になるとわかるように、KML コミュニティには世界中のさまざまなユーザーが参加しています。一般的には、KML ファイルを作成して、自宅に目印を付けたり、観光地を見て回ったり、ハイキングやサイクリングの計画を立てたりするユーザーが多いようです。科学者は、リソース、モデル、傾向分析(火山の噴火、気象パターン、地震活動、鉱床など)の詳細なマッピングに KML を活用できます。不動産専門家、建築家、都市開発機関は、KML を使用して建設を提案し、計画を可視化します。生徒と教師は、KML を使用して、歴史的な人物、場所、イベントと現在の人物、場所、イベントを調べます。ナショナル ジオグラフィック、ユネスコ、スミソニアンなどの組織では、世界中の豊富なデータの視覚化に KML を使用しています。

KML ファイルを作成するには

KML ファイル作成用の主なツールは、次の 3 つがあります。

  • Google Earth。KML ファイルの作成に使用できる、最も重要なツールです。Google Earth を使用すると、次のものを作成できます。
    • 目印
    • パス
    • ポリゴン
    • イメージ オーバーレイ
    • ネットワーク リンク
    • 場所のモデル
    • 上記のすべてのフォルダ
    • 写真オーバーレイ
  • これらのオブジェクトのいずれか 1 つを作成してから、[場所] パネルでそのオブジェクトを右クリックし、[コピー] を選択します。それをテキスト エディタや XML エディタに貼り付けて、編集することができます。

  • テキスト エディタ。Google Earth で作成したオブジェクトを、テキスト エディタに貼り付けて、編集します。
  • XML エディタ。KML は地理情報コンテンツを記述する XML 言語です。XML エディタは、XML ドキュメントの作成用の機能を数多く備えた、高度なテキスト エディタです。たとえば KML 要素を正しい終了タグを使って閉じるための、タグ完成機能があります。

他にも、Google Earth Community のユーザーが作成したさまざまなツールがあります。詳しくは、KML Developer Support Google グループをご覧ください。

KMZ ファイルを開くには

KMZ ファイルは、Google Earth で表示する 1 つ以上のファイルをまとめて圧縮したものです。圧縮は Zip 形式で行います。Windows 用の「WinZip」、「7-Zip」などの一般的な zip ツールか、デフォルトの Windows XP 圧縮フォルダ ツール、Mac OS 用の「Stuffit」、Mac OS や Linux 用の「zip」を使って、開くことができます。zip ツールによっては、ファイルを認識させるために、ファイル拡張子を .kmz から .zip に変更する必要があります。このファイルを改めて使用する前に、必ず拡張子を .kmz に戻してください。

天文データから KML ファイルを作成するには

KML を使用して天文データを記述し、Google Sky や Microsoft の WorldWide Telescope で読み込むことができます。詳しくは、KML の Sky データをご覧ください。

Google Earth でサポートされている KML タグ

Google Earth では、すべての KML タグがサポートされています。すべてのタグの一覧は、KML リファレンスをご覧ください。

デベロッパー ガイドを参照するには

デベロッパー ガイドは、https://developers.google.com/kml/documentation/topicsinkml.html でご覧ください。


ラインが表示されない

LineString に clampToGround を指定している場合は、地球の湾曲に沿って問題なく表示されます。「relativeToGround」を指定している場合は、ラインのポイントを増やさないと、地球や地形の内部を通る部分が多い直線となります。

たとえば、次の LineString は地球の内部を通るので、実際には表示されなくなります。

<kml xmlns="http://www.opengis.net/kml/2.2">
  <Placemark>
    <name>Untitled Path</name>
    <LineString>
      <tessellate>0</tessellate>
      <altitudeMode>absolute</altitudeMode>
      <coordinates>-115.415105,40.669016 -37.752364,34.879979</coordinates>
    </LineString>
  </Placemark>
</kml>

ポイントを増やすと、ラインが地下を通る部分が減ります。<tessellate> も「1」に設定して、ラインが地形に沿うようにする必要があります。

<Placemark>
  <name>Untitled Path</name>
  <LineString>
    <tessellate>1</tessellate>
    <altitudeMode>relativeToGround</altitudeMode>
    <coordinates>
      -134.148103,37.752967 -128.917074,38.803008
      -125.166954,39.583592 -122.137625,39.656880
      -120.421783,40.036311 -118.298157,40.235316
      -114.348386,40.631532 -112.670431,40.761033
      -111.916045,40.681939 -110.177711,40.653055
      -109.544331,40.619327 -107.155697,40.642007
      -105.410526,40.421505 -103.192299,40.430138
      -102.853712,40.427904 -98.168302,40.363524
      -97.093391,40.308754 -94.831304,40.479175
      -93.760070,40.395392 -84.913828,39.466651
      -84.414888,39.387332 -81.380660,39.188551
      -80.276261,38.977744 -77.811560,38.872542
      -75.062267,38.521146 -72.006956,38.101733
      -66.67819,37.664687
    </coordinates>
  </LineString>
</Placemark>
KML で円を描くには

KML には円の図形はありませんが、LineString で近接する座標を多く指定して、円に近い図形を作成できます。こちらにサンプルがあります。

LineString を破線や矢印に変更できますか

ラインの色、透明度、サイズを変更するには、<LineStyle> を使用します。ただし KML では現在、ラインの種類の変更はサポートされていません。

目印のラベルを非表示にするには

Google Earth で目印の横に表示されるラベルは、<name> 要素に基づいて指定されます。LabelStyle の scale 要素を 0 に設定すると、ラベルを非表示にできます。

<Style id="hideLabel">
  <LabelStyle>
    <scale>0</scale>
  </LabelStyle>
</Style>
解析エラーが表示される

解析エラーには、主に次の 2 つの種類があります。

  1. 大文字/小文字の区別: 他のすべての XML 言語と同様に、KML では大文字と小文字を区別します。要素の名前はすべて、大文字/小文字を正しく記述する必要があります。たとえば、<Placemark> は <PLACEMARK> ではなく、<href> は <Href> ではなく、<Link> は <lInk> ではありません。
  2. 不完全なタグ: すべての要素の最初と最後には、同じタグを指定する必要があります。タグを閉じ忘れたり、山かっこ(< または >)を付け忘れたりすることがあります。

    たとえば、
    <name>Atlanta</name> は正しい
    <name>Atlanta は正しくない
    <nameAtlanta</name> は正しくない
    <nameAtlanta<name> は正しくない

記述した KML ファイルが有効な KML ファイルかどうかを調べるには

KML は XML マークアップ言語です。次のような方法で検証できます。

  • XML エディタ(OxygenNetbeans など)を使用して、ドキュメントを検証できます。詳しくは、お使いの XML エディタのマニュアルをご覧ください。検証を行うには、KML スキーマが必要です。
  • FeedValidator.org などのオンライン検証ツールを使用すると、エラーを確認できます。また、スタイルに関する提案も表示されます。
  • XML 検証が可能なテキスト エディタもあります。たとえば、jEdit を使用して KML を検証できます。Google Earth Outreach チームのチュートリアルをご覧ください。
画面に表示されるアイテムの表示を制御して、ユーザーが Earth の地表に近付いたときにそのアイテムの詳細を表示する方法

Region タグを使用して、ユーザーに表示するアイテムをコントロールできます。Region についての詳しい説明は、下記のリソースをおすすめします。

MultiGeometry 要素の中の異なる図形に異なる色/スタイルを割り当てることはできますか

MultiGeometry 要素では、複数の図形を同じ Placemark 要素にまとめます。これによって、複数の図形が同じスタイルを共有し、Google Earth の [お気に入り] パネルなどの一覧に、1 つのアイテムとして表示されます。

スタイルは、styleUrl 要素または Style 要素のいずれかを使って、Placemark レベルで設定されます。したがって、その Placemark 内の個々の図形に異なるスタイルを指定することはできません。

よく使用される回避策は、ジオメトリごとに個別のプレイスマークを作成し、それぞれに異なるスタイルを設定できるようにすることです。一覧表示でアイテムが散乱するのを防ぐには、Folder にアイテムをまとめ、その ListStylelistItemType で checkHideChildren を指定します。たとえば Google Earth では、これによって [お気に入り] の中で、すべての Placemark が 1 つの Folder 要素内に配置され、ユーザーが開いたときに複数の要素が表示されるのを防ぎます。


KML ファイルを開くときにバルーンを開くことはできますか

現在のところ、KML ファイルを開くときにバルーンを開く機能はサポートされていません。ただし、アイテムのアンカーを使用することで、2 つ目の KML ファイルや別のバルーンを開くリンクを、バルーンの中に作成できます。

NetworkLink の更新時にバルーンを開いたままにすることはできますか

現在のところ、NetworkLink の更新時にバルーンの状態を保持する機能はサポートされていません。

ユーザーが作成した KML を表示できますか

現在のところ、NetworkLink を使用して、Google Earth や Google マップでユーザーが作成した KML を取り込むことはできません。ただし、Google Maps JavaScript API を KML 作成ツールとして使用し、その情報をサーバーにキャプチャすることは可能です。例として、GeoDataStore をご覧ください。

KML から時間スライダをコントロールできますか

TimeStamp 要素や TimeSpan 要素が指定された KML ファイルが開くとすぐに、KML の時間スライダが開きます。時間スライダは、その時点で選択されているすべての TimeStamp 要素と TimeSpan 要素を探し、指定されているすべての日付を含めるように調整します。KML では現在、タイムスライダーの制御を強化することはできません。たとえば、選択した現在時刻を設定したり、表示する期間の幅を選択したりすることはできません。時間データの使用方法について詳しくは、時間とアニメーションの記事をご覧ください。

ユーザーと対話する KML を作成するために、KML の説明バルーンの HTML にフォームを配置するには

現時点では、Google Earth の KML は、プレゼンテーションを記述する HTML のサブセットのみをサポートしており、インタラクションはサポートしていません。

Google Earth でも、使用する KML に Flash フォームを構築することはできます。これを行うには、KML 説明バルーンの HTML に Flash アプリケーションを埋め込みます。


スプレッドシートから KML を自動的に作成できますか

基本的な方法として、以下のものがあります。

  • 自分でプログラミングした独自のアプリケーションで、CSV ファイルを解析して KML を生成します。例として、CSV ファイルを KML に変換をご覧ください。
  • オンライン スプレッドシートを使用します。たとえば、Google Earth Outreach チームが Google スプレッドシートをベースとして作成した Spreadsheet Mapper があります。
  • Excel から KML を作成するツールを使用します。
  • Google Earth プラスや Google Earth プロを使用して、ファイルをロードし、KML ファイルまたは KMZ ファイルとして保存します。
ウェブ サーバーから KML ファイルを正しくダウンロードできない

ダウンロードするファイルの種類をウェブ サーバーに指定する必要があります。Firefox などのブラウザでは、ファイル形式を推測します。Internet Explorer などのブラウザでは、ウェブ サーバーの MIME タイプ設定を頼りにします。

Apache サーバーの場合は、httpd.conf の中に次の 2 行を含めます。

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

Microsoft の Internet Information Server(IIS)の場合は、次の説明を参照してください。

IIS バージョン 6.0:

http://support.microsoft.com/kb/326965

IIS バージョン 4.0 と 5.0:

http://www.microsoft.com/technet/prodtechnol/windows2000serv/technologies/iis/maintain/featusability/mimeiis.mspx

独自のウェブサーバーを管理している場合は、独自の構成を変更する必要があります。そうでない場合は、ウェブサイトのホスティング サービスに問い合わせて、上記の変更を依頼してください。


バルーンのコンテンツに、形式が正しくない画像 URL が使用されている可能性があると表示されるのはなぜですか?

Google Earth の最近の変更により、フィーチャー バルーン内のコンテンツのリンクの処理方法が変更され、以前は指定されていなかった動作がより明確になりました。その結果、リンク構造が無効な KMZ 内のリンクをクリックすると、「このページに移動したリンクの形式が正しくない可能性があります。以下のリンクをクリックして、レガシーモードをお試しください。」 このメッセージが表示された場合は、KML/KMZ コンテンツの構造を変更して、今後のバージョンの Google Earth との完全な互換性を確保する必要があります。

KMZ コンテンツを適切に再構成する方法など、詳しくは こちらの記事をご覧ください。

どのようなコンテンツが新しい相対パスのルールの影響を受けますか

現在、この変更の影響を受けるのは、機能バルーンのコンテンツ内のリンク(URL)のみです。これには、<BallonStyles> 内の <description> タグと <text> タグが含まれます。ただし、今後の Google Earth のバージョンでは、さらに一貫性が高まる可能性があるため、KMZ コンテンツの相対リンクのベース URL として親ディレクトリを使用することは常に避けるべきです。


Google Earth の [お気に入り] にある KML は Google のサーバーに送信されますか

いいえ。Google Earth で作成された KML や、ユーザーが Google Earth に読み込んだ KML が Google に送信されることはありません。このデータの処理と保存はすべてローカルマシンで行われます。

トップへ戻る