ラベル | 説明 | データ タイプ |
入力レイヤー | KML 形式に変換されるフィーチャ レイヤーまたはラスター レイヤー、あるいはグループ レイヤー。 | Feature Layer; Raster Layer; Mosaic Layer; Group Layer; Layer File |
出力ファイル (KML または KMZ) | 出力 .kml ファイルまたは .kmz ファイル。 出力ファイルは、拡張子として .kmz を使用してアーカイブまたは圧縮ファイルを生成するか、.kml を使用して基本的な KML 形式ファイルを生成します。 出力 .kmz ファイルがデフォルトです。 出力 .kmz ファイルは、ラスター レイヤー、シンボルおよびその他のレイヤー プロパティ、アタッチメント、その他の高度なフィーチャをサポートします。 出力 .kml ファイルは、基本的な KML のシンボルおよびプロパティを使用します。 | File; Workspace; KML Layer |
レイヤーの出力スケール (オプション) | 出力ファイルの縮尺。 ラスター レイヤーの場合は、0 を設定してタイル化していない出力画像を作成することができます。 1 以上の値にすると、ラスターの出力解像度が決まります。 このパラメーターは、ラスター レイヤー以外のレイヤーには作用しません。 | Double |
単一コンポジット画像の作成 (オプション) | 出力を単一コンポジット画像にするかどうかを指定します。 出力 .kmz ファイルがグラウンド オーバーレイ画像またはラスターをサポートしていないため、このパラメーターは、出力 KML に .kml ファイルを指定した場合のみ使用されます。
| Boolean |
範囲 (オプション) | 変換されるレイヤーの地理範囲。 この範囲内のフィーチャまたはラスター セルのみが出力 KML に出力されます。
| Extent |
出力画像サイズ (ピクセル) (オプション) | [レイヤーの出力スケール] パラメーターの値が 1 以上の場合のラスター レイヤーのタイルのサイズ。 このパラメーターは、ラスター レイヤー以外のレイヤーには作用しません。 | Long |
出力画像の DPI (オプション) | [単一コンポジット画像を作成] パラメーターがオンの場合の KML 出力のデバイス解像度。 このパラメーターと [出力画像サイズ (ピクセル)] パラメーターを使用して、出力画像の解像度を制御します。 このパラメーターは、ソース ラスターをリサンプリングしません。 入力ラスターについてスナップショットが取得され、単一の .png 画像として KML 出力に含まれます。 | Long |
フィーチャを地表に固定 (オプション) | 入力フィーチャの Z 値が無視され、すべてのフィーチャが配置されて地表面の標高に固定されるかどうかを指定します。
| Boolean |
サマリー
フィーチャまたはラスター レイヤーを KML 形式 (.kmz または .kml ファイル) に変換します。 出力 KML には、Esri フィーチャのジオメトリ、ラスター、セル、ラスター シンボル、およびその他のプロパティの変換が出力されます。
使用法
このツールのデフォルト出力は、拡張子が .kmz で、.kml ファイルおよび他の補足ファイルを含むアーカイブまたは .zip ファイルです。 .kmz および ArcGIS Earth を含む多くのアプリケーションが Google Earth ファイルを読み取ることができます。
KML の外観は次の 2 つの方法で制御できます。
- デフォルトでは、ポップアップ表示はレイヤーのすべての表示可能なフィールドで構成されます。レイヤーのカスタマイズされたポップアップを使用してポップアップ表示を設定することもできます。レイヤーのポップアップがカスタマイズされていない場合、KML のフィーチャをクリックすると、フィーチャ レイヤーの PopupInfo フィールドの値がポップアップ表示されます。これらの値には、数値やテキスト属性、およびテキスト フィールドに格納された HTML コードが使用できます。
- レイヤー プロパティが設定されておらず、フィーチャクラスが特定の属性 (フィールド) を持っている場合は、フィールド プロパティが KML レイヤーの作成に使用されます。この KML レイヤーは [KML → レイヤー (KML To Layer)] ツールを使用して作成されたものであり、KML の作成方法を定義した属性が含まれています。属性から KML を作成する方法の詳細については、「KML 変換」をご参照ください。
-
入力に縮尺依存の表示プロパティがある場合は、適切な [レイヤーの出力スケール] パラメーター値を指定して、出力 .kmz ファイルのサイズを小さくします。
入力レイヤーは WGS84 に投影され、同様に、すべての .kml および .kmz ファイルがその座標系を使用する必要があります。 投影法でフィーチャとラスター セルを正確に配置できるようにするには、場合によっては地理座標系変換環境を指定する必要があります。 または、[投影変換 (Project)] ツールを使用し、KML への変換前に、有効な変換を使って入力レイヤーを WGS84 に再投影します。
アタッチメントのある入力フィーチャは、出力 .kmz ファイルに格納されます。 .kmz ファイル内のアタッチメントについては、次の条件に注意してください。
- アタッチメントにより、出力ファイルのサイズは大幅に増加します。
- KML クライアントで .kml ファイルを使用する場合、アタッチメントは KML ポップアップから利用できます。
- アタッチメントを除外するには、ツールを実行する前に「アタッチメントの保持」環境設定を無効化します。
- すべての KML クライアントがアタッチメントの表示を等しくサポートしているわけではありません。 一部の KML クライアント アプリケーションは、画像や PDF などのアタッチメントをより強力にサポートしています。
出力が .kml ファイルの場合、アタッチメントは含まれません。
タイル出力を作成するには、[レイヤーの出力スケール] および [出力画像サイズ (ピクセル)] パラメーターを一緒に使用します。 たとえば、7000 x 5000 ピクセルの画像で、[出力画像サイズ (ピクセル)] パラメーターの値が 1000 ピクセルの場合、出力画像は 7 x 5 または 35 のサブイメージで構成されます。 [レイヤーの出力スケール] パラメーターの値が 1 の場合、各サブイメージは 1000 x 1000 ピクセルになります。 [レイヤーの出力スケール] パラメーターの値が 10 の場合、各サブイメージは 100 x 100 ピクセルになります。
フィールド ドメインの説明を転送環境がオンの場合、ドメインの説明が出力に転送されます。
パラメーター
arcpy.conversion.LayerToKML(layer, out_kmz_file, {layer_output_scale}, {is_composite}, {boundary_box_extent}, {image_size}, {dpi_of_client}, {ignore_zvalue})
名前 | 説明 | データ タイプ |
layer | KML 形式に変換されるフィーチャ レイヤーまたはラスター レイヤー、あるいはグループ レイヤー。 | Feature Layer; Raster Layer; Mosaic Layer; Group Layer; Layer File |
out_kmz_file | 出力 .kml ファイルまたは .kmz ファイル。 出力ファイルは、拡張子として .kmz を使用してアーカイブまたは圧縮ファイルを生成するか、.kml を使用して基本的な KML 形式ファイルを生成します。 出力 .kmz ファイルがデフォルトです。 出力 .kmz ファイルは、ラスター レイヤー、シンボルおよびその他のレイヤー プロパティ、アタッチメント、その他の高度なフィーチャをサポートします。 出力 .kml ファイルは、基本的な KML のシンボルおよびプロパティを使用します。 | File; Workspace; KML Layer |
layer_output_scale (オプション) | 出力ファイルの縮尺。 ラスター レイヤーの場合は、0 を設定してタイル化していない出力画像を作成することができます。 1 以上の値にすると、ラスターの出力解像度が決まります。 このパラメーターは、ラスター レイヤー以外のレイヤーには作用しません。 | Double |
is_composite (オプション) | 出力を単一コンポジット画像にするかどうかを指定します。 出力 .kmz ファイルがグラウンド オーバーレイ画像またはラスターをサポートしていないため、このパラメーターは、出力 KML に .kml ファイルを指定した場合のみ使用されます。
| Boolean |
boundary_box_extent (オプション) | 変換されるレイヤーの地理範囲。 この範囲内のフィーチャまたはラスター セルのみが出力 KML に出力されます。 範囲は、次のオプションを使用して指定できます。
| Extent |
image_size (オプション) | layer_output_scale パラメーターの値が 1 以上の場合のラスター レイヤーのタイルのサイズ。 このパラメーターは、ラスター レイヤー以外のレイヤーには作用しません。 | Long |
dpi_of_client (オプション) | is_composite パラメーターが COMPOSITE に設定されている場合の KML 出力のデバイス解像度。 このパラメーターと image_size パラメーターを使用して、出力画像の解像度を制御します。 このパラメーターは、ソース ラスターをリサンプリングしません。 入力ラスターについてスナップショットが取得され、単一の .png 画像として KML 出力に含まれます。 | Long |
ignore_zvalue (オプション) | 入力フィーチャの Z 値が無視され、すべてのフィーチャが配置されて地表面の標高に固定されるかどうかを指定します。
| Boolean |
コードのサンプル
次の Python ウィンドウ スクリプトは、イミディエイト モードで LayerToKML 関数を使用する方法を示しています。
import arcpy
arcpy.conversion.LayerToKML("buildings", "c:/outputKMZs/bldg.kmz")
次の Python スクリプトは、スタンドアロン スクリプトで LayerToKML 関数を使用する方法を示しています。
# Description: The following stand-alone script demonstrates how to find
# all layer files in a given workspace and export each to
# a KML at the 1:10,000, 1:20,000, and 1:30,000 scale using
# the LayerToKML tool.
import arcpy
arcpy.env.workspace = "C:/data"
# Set Local Variables
composite = 'NO_COMPOSITE'
pixels = 2048
dpi = 96
clamped = 'CLAMPED_TO_GROUND'
# Use the ListFiles method to identify all lyr and lyrx files in workspace
layers = arcpy.ListFiles("*.lyr*")
if len(layers) > 0:
for layer in layers:
# Strips the '.lyr(x)' part of the name and appends '.kmz'
outKML = os.path.join(os.path.splitext(layer), ".kmz")
for scale in range(10000, 30001, 10000):
# Run LayerToKML
arcpy.conversion.LayerToKML(layer, outKML, scale, composite,
'', pixels, dpi, clamped)
else:
arcpy.AddMessage('There are no layer files in {}'.format(arcpy.env.workspace))