ArcGIS for Desktop での KML ファイルの作成
ArcGIS for Desktop で KML を作成するプロセスは簡単で、主に次の 3 つの手順で実行できます。
- ArcGIS for Desktop アプリケーションの 1 つ(ArcMap、ArcGlobe、および ArcScene)でレイヤとマップを作成します。
- レイヤとマップに対して KML に変換するための準備をします。これには、作成される KML が要件を満たし、ユーザにわかりやすく正しい形式になるように、特定のプロパティやデータ属性を設定します。
- KML 変換ツールの [レイヤ → KML(Layer to KML)] ツールまたは [マップ → KML(Map to KML)] ツールのいずれかを使用して KML ファイルを作成します。また、[マルチパッチ → COLLADA(Multipatch To COLLADA)] ツールを使用して、3D マルチパッチ フィーチャクラスから KML を作成することもできます。
レイヤとマップの作成
フィーチャおよびラスタ レイヤと ArcMap マップ ドキュメント(*.mxd)は、KML に変換できます。KML に変換する前に、まずフィーチャクラスまたはラスタ データセットを画面に追加するか(データセットからレイヤが自動的に作成されます)、[フィーチャ レイヤの作成(Make Feature Layer)] ツールまたは [ラスタ レイヤの作成(Make Raster Layer)] ツールを使用して、レイヤを作成する必要があります。
ArcGIS for Desktop で作成された KML は、KML に変換した時点におけるレイヤとマップのスナップショットを表します。ArcGIS for Desktop でのレイヤの外観は、KML にしたときの外観とほとんど一致します。たとえば、KML に特定のシンボルや色を使用する場合、ArcMap でもマップ レイヤに必要なシンボルを加えてから、KML にエクスポートします。
KML に変換するレイヤとマップの準備
レイヤ
ArcGIS for Desktop で作成されたレイヤは、表示される属性フィールド、透過表示、ラベル、ポップアップ表示、シンボルなど、さまざまな側面やプロパティが変換中に KML に適用されます。レイヤ プロパティとデータ属性を設定することで、要件を満たし、ユーザにわかりやすく正しい形式の KML を作成することができます。以下で特に指定していない限り、レイヤまたはマップを KML に変換するときのルールは「What You See is What You Get - 見たものが、そのまま手に入るもの」です。次の表は、KML に変換するレイヤに対して準備できる内容を示しています。
プロパティ |
表示設定 |
説明 | ||
---|---|---|---|---|
レイヤ名 |
ArcGIS のフィーチャ レイヤは KML のフォルダになります。レイヤ名は KML のフォルダ名として使用されます。 |
|||
レイヤの説明 |
|
レイヤの説明は、フォルダのポップアップ表示コンテンツとして使用されます。 |
||
レイヤのシンボル |
|
レイヤのシンボルは KML のシンボルとして使用されます。 フィーチャ レイヤの場合、すべての ArcGIS シンボルが KML でサポートされる訳ではありません。ライン フィーチャの場合、基本的な色とライン幅のプロパティを持つ単純なシンボルだけがサポートされます。ダッシュや矢印、マルチレベルやレイヤ化されたシンボルなど、高度なエフェクトはサポートされません。ポリゴン フィーチャの場合、単純な外枠の付いた単純な色の塗りつぶしだけがサポートされます。パターン、ハッチング、グラデーションの塗りつぶしはサポートされません。ポリゴンの境界には、ラインと同じ規則が適用されます。フィーチャにシンプルなシンボル以上のものが必要な場合は、[レイヤ → KML(Layer To KML)] ツールまたは [マップ → KML(Map to KML)] ツールの [単一コンポジット画像の作成] パラメータを使用して、シンボル表示されたフィーチャを、複雑なシンボルを維持しているラスタ イメージに変換します。 |
||
フィーチャ名 |
|
フィーチャ ラベルをオンにすると、レイヤのラベル フィールドまたは式が名前に使用されます。ラベルをオンにしないと、レイヤの表示フィールドまたは式が名前に使用されます。いずれのレイヤ プロパティも設定しない場合、[名前] フィールドの値が名前に使用されます。 |
||
フィーチャ ラベル |
|
レイヤ ラベルが有効な場合、レイヤ ラベル フィールドまたは式が各 KML フィーチャの名前に使用され、ラベルが有効になります。 注意: ポイント フィーチャのみでラベルが作成されます。ポリゴン フィーチャのラインでは、重心を作成したりラベルを作成したりして、ラベル効果を利用することができます。 |
||
フィーチャ スニペット |
|
既存のフィールドのエイリアスを KMLSnippet に変更して、フィーチャのスニペットを設定できます。または、フィーチャ レイヤの Snippet フィールドの値が KML の各フィーチャのスニペットとして使用されます。 |
||
フィーチャのポップアップ表示 |
|
デフォルトでは、ポップアップ表示はレイヤのすべての表示可能なフィールドで構成されます。KML のフィーチャのポップアップ表示は、レイヤの HTML ポップアップ プロパティを使用して設定することもできます。レイヤの HTML ポップアップ表示をオフにすると、KML のフィーチャをクリックしたときに、フィーチャ レイヤの PopupInfo フィールドの値がポップアップ表示されます。これらの値には、数値やテキスト属性、およびテキスト フィールドに格納された HTML 形式のコードが使用できます。 |
||
フォルダとサブフォルダ |
|
レイヤに FolderPath という名前のフィールドがある場合、このフィールドの値は KML フォルダとサブフォルダを定義するために使用されます。このフィールド内では、フォルダとサブフォルダ間のパスの区切り文字はスラッシュ(/)である必要があります。レイヤに FolderPath フィールドがない場合は、グループ レイヤを使用してフォルダとサブフォルダの構造を定義できます。[レイヤ → KML(Layer To KML)] ツールへの入力としてグループ レイヤ自体を指定し、KML のグループ レイヤ構造を取得します。 |
||
フィーチャの標高 |
|
フィーチャ レイヤが Z 対応でジオメトリに Z 値を持つ場合、KML は 3D で作成されます。また、レイヤに ArcGlobe または ArcScene で適用された 3D 表示効果がある場合(基準高度または立ち上げ)、これらの 3D 効果は出力 KML で維持されます。これらのレイヤ効果が適用されていない場合、3D 効果を制御するためにフィールド属性が使用されます。詳細については、次の「3D の作成」セクションをご参照ください。 |
3D の作成
3D 空間(サーフェスの一番上またはフローティング)のフィーチャの配置とプロパティを制御するために、次のフィールド属性(タイプはすべて整数)が使用されます。
KML は WGS84 座標系と、計測単位にメートルを使用します。KML の作成時、すべての標高値はメートルと想定されます。
フィールド |
値 |
説明 |
---|---|---|
AltMode |
0 または -1 |
値が 0 の場合、高さが絶対値の KML 設定に設定されます。これは、フィーチャが Z 対応している場合に使用する必要があります。値が -1 の場合、地球表面を基準としてフィーチャを配置します。 |
ベース |
任意の数値 |
任意の数値を使用できます。この値は、相対配置(AltMode=-1)とともに使用される場合、地球表面からのフィーチャの高さを制御します。 注意: フィーチャの Z 値が 100 で、地球表面が 100 より高い地理エリアにある場合、絶対設定にするとフィーチャは地球表面より下に配置されます。 |
立ち上げ |
0 または -1 |
値が 0 の場合、立ち上げは設定されません。-1 の場合、立ち上げ効果が適用されます。フィーチャの立ち上げを行うと、側面がポリゴンから地表面に続くブロックのようなポリゴンが作成されます。 |
次の画像の左奥にある緑色のポリゴンは、標高(Z 値)のないフィーチャで、手前右にある赤と灰色のフィーチャには標高値があります。Z 値を持つフィーチャにも持たないフィーチャにも、同様の効果を適用できます。たとえば、緑色の立ち上げたポリゴンは、Z 値を持たず、次のフィールドが設定されます。AltMode = -1、Base = 25、Extruded = -1。立ち上げた赤のポリゴンは、Z 値が 1300 で、次のフィールドが設定されます。AltMode = 0、Base = 0、Extruded = -1。赤のフィーチャは標高値があるため、その位置は絶対値で設定され、立ち上げだけが使用されます。
[レイヤ → KML(Layer To KML)] ツールのオプションのパラメータである [フィーチャを地表に固定] は 3D 設定に優先し、すべてのフィーチャが地球表面にドレープされます。このパラメータは、地表面より低い Z 値を持つフィーチャから KML を作成し、3D 効果が必要ない場合に便利です。あるいは、Clamped というフィールドに -1 を設定すると、オプション パラメータを使用した場合と同じ効果をフィーチャごとに与えることができます。
マップ
マップにも、KML に変換するマップ ドキュメントの外観と振舞いを制御するのに使用できるプロパティがあります。次の表は、KML に変換するマップに対して準備できる内容を示しています。
設定 |
表示設定 |
説明 | ||
---|---|---|---|---|
マップのデータ フレーム名 |
|
KML に一度にエクスポートできるデータ フレームは 1 つだけです。マップのデータ フレーム名は、KML 内で最上位の名前として使用されます。 |
||
マップのデータ フレームの説明 |
|
データ フレームの説明は、最上位の KML アイテムのポップアップ表示コンテンツとして使用されます。 |
||
凡例 |
|
凡例は、ArcGIS for Desktop で作成する KML に加えることのできる唯一のスクリーン オーバーレイです。マップ ドキュメントのレイアウト ビューに加えられた凡例は、KML のスクリーン オーバーレイと、画面上で凡例が表示される場所を変更できるボタン フォルダとして加えられます。凡例のオーバーレイを KML に加える場合は、必ず [マップ → KML(Map To KML)] ツールを使用します。 |
KML ファイルの作成
ArcGIS データから KML ファイルを作成するには、[レイヤ → KML(Layer To KML)] と [マップ → KML(Map to KML)] という 2 つのジオプロセシング ツールを使用することができます。両方のツールとも、出力場所に KMZ(圧縮された KML)を作成します。また、[マルチパッチ → COLLADA(Multipatch To COLLADA)] ツールは、マルチパッチ フィーチャクラスを COLLADA ファイルに変換するときに、関連する KML ファイルを作成します。
レイヤ → KML(Layer To KML)
[レイヤ → KML(Layer To KML)] ツールでは、個々のレイヤを ArcMap、ArcGlobe、または ArcScene から直接エクスポートすることができます。
マップ → KML(Map to KML)
[マップ → KML(Map to KML)] ツールを使用すると、ArcMap マップ ドキュメントのデータ フレーム内にある複数のレイヤを KML ファイルに一度にエクスポートできます。各レイヤは、すべてのレイヤを 1 つの平面化された画像に変換するオプションを使用していない限り、KML 内では別々のフォルダとして保持されます。
マルチパッチ → COLLADA(Multipatch To COLLADA)
[マルチパッチ → COLLADA(Multipatch To COLLADA)] ツールを使用すると、マルチパッチをディスク上の COLLADA ファイルにエクスポートすることができます。COLLADA は、Google Earth を含む多くの 3D アプリケーションでサポートされている 3D モデル形式です。変換しているマルチパッチ フィーチャクラスが投影座標系の場合、このツールは出力フォルダに、COLLADA ファイル内の 3D モデルに地理座標を割り当てる KML ファイルを作成します。