マップ → KML(Map to KML) (変換)

ライセンス レベル:BasicStandardAdvanced

サマリ

このツールは、マップ ドキュメントを、Esri ジオメトリおよびシンボルの変換を保存する KML ファイルに変換します。このファイルは ZIP 圧縮を使って圧縮され、拡張子は「.kmz」になります。ArcGIS Explorer、ArcGlobe、Google Earth などの KML クライアントで、このファイルを読み込むことができます。

ArcGIS での KML のサポートの詳細

使用法

構文

MapToKML_conversion (in_map_document, data_frame, out_kmz_file, {map_output_scale}, {is_composite}, {is_vector_to_raster}, {extent_to_export}, {image_size}, {dpi_of_client}, {ignore_zvalue})
パラメータ説明データ タイプ
in_map_document

KML に変換するマップ ドキュメント。

ArcMap Document
data_frame

KML に変換するマップ ドキュメントのデータ フレーム。

String
out_kmz_file

書き込み対象となる KML ファイル。このファイルは圧縮され、拡張子は .kmz になります。ArcGIS Explorer、ArcGlobe、Google Earth などのあらゆる KML クライアントを使って読み取ることができます。

File
map_output_scale
(オプション)

マップへ各レイヤをエクスポートする時の縮尺。このパラメータは、レイヤ表示または縮尺に依存したレンダリングなどの縮尺依存において重要です。レイヤがエクスポート時の縮尺で表示されなければ、そのレイヤは作成された KML ファイルに含まれません。縮尺依存がない場合、1 などの任意の値が使用できます。

3D ベクタとして表示されるレイヤをエクスポートしており、[is_composite] が NO_COMPOSITE に設定されている場合は、フィーチャに縮尺依存のレンダリングがない限り、任意の数値を設定できます。

入力できるのは数値だけです。たとえば、縮尺として「20000」は入力できますが、「1:20000」や「20,000」は使用できません。

Double
is_composite
(オプション)
  • COMPOSITE出力 KML ファイルには、このマップ内のすべてのフィーチャから作成された単一のラスタ イメージだけが含まれます。ラスタは KML GroundOverlay として地形上にドレープされます。出力 KMZ ファイルのサイズを縮小する場合にこのオプションを選択します。このボックスをオンにすると、KML のフィーチャやレイヤを個別に選択することができなくなります。また、次のパラメータの is_vector_to_raster は無視されます。
  • NO_COMPOSITEレイヤは個別に KML へ返されます。レイヤがすべてラスタとして返されるか、またはベクタとラスタの混合として返されるかは、次のパラメータの is_vector_to_raster によって決まります。
Boolean
is_vector_to_raster
(オプション)
  • VECTOR_TO_RASTERマップ内の各ベクタ レイヤを KML 出力の別のラスタ イメージに変換します。通常のラスタ レイヤも KML 出力に追加されます。個々の出力 KML ラスタ レイヤは選択可能で、一部の KML クライアントでは透過表示を調整できます。
  • VECTOR_TO_VECTORマップ内のベクタ レイヤを KML ベクタとして保存します。
Boolean
extent_to_export
(オプション)

エクスポート対象のエリアの表示範囲です。範囲矩形は、「右上がり」の形態で WGS84 座標系のスペース区切りの文字列として指定する必要があります(xmin、ymin、xmax、ymax)。

Extent
image_size
(オプション)

返される画像のピクセル単位のサイズ。出力 KML ドキュメントにおけるあらゆるラスタの垂直および水平の解像度を定義します。このパラメータと DPI パラメータを使用して、出力画像の解像度を制御します。

Long
dpi_of_client
(オプション)

出力 KML ドキュメントにおけるあらゆるラスタのデバイスの解像度を定義します。通常の画面解像度は 96 dpi です。マップ内のデータが高解像度をサポートしており、KML にそれが必要な場合は、値を大きくします。このパラメータと Imaze Size パラメータを使用して、出力画像の解像度を制御します。

Long
ignore_zvalue
(オプション)
  • ABSOLUTEKML を作成するときにフィーチャの Z 値を使用します。KML クライアント内では、フィーチャは海面を基準に描画されます。
  • CLAMPED_TO_GROUNDフィーチャ内の Z 値を無効にし、フィーチャを地面に固定して KML を作成します。フィーチャはテレイン上にドレープされます。Z 値を持たないフィーチャでは、この設定を使用します。これがデフォルトです。
Boolean

コードのサンプル

MapToKML(マップ → KML)の例 1(Python ウィンドウ)

次の Python ウィンドウ スクリプトは、イミディエイト モードで MapToKML(マップ → KML)関数を使用する方法を示しています。

import arcpy
from arcpy import env

env.workspace = "C:/data"
arcpy.MapToKML_3d("city.mxd", "Layers", "city.kmz", "1")
MapToKML(マップ → KML)の例 2(スタンドアロン スクリプト)

次の Python スクリプトは、スタンドアロン スクリプトで MapToKML(マップ → KML)関数を使用する方法を示しています。

'''*********************************************************************
Name: MapToKML Example
Description: This script demonstrates how to find 
             all map documents 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 MapToKML tool.
'''

# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"


# Use the ListFiles method to identify all layer files in workspace
if len(arcpy.ListFiles('*.mxd')) > 0:
    for mxd in arcpy.ListFiles('*.mxd'):
        # Set Local Variables
        dataFrame = 'Layers'
        composite = 'NO_COMPOSITE'
        vector = 'VECTOR_TO_VECTOR'
        pixels = 2048
        dpi = 96
        clamped = 'ABSOLUTE'
        for scale in range(10000, 30001, 10000):
           # Strips the '.mxd' part of the name and appends '.kmz'
           outKML = mxd[:-4]+'.kmz'
           #Execute MapToKML
           arcpy.MapToKML_conversion(mxd, dataFrame, outKML, scale, 
                                   composite, vector, '', pixels, dpi, clamped)
else:
    arcpy.AddMessage('There are no map documents (*.mxd) in '+env.workspace)

環境

関連トピック

ライセンス情報

ArcGIS for Desktop Basic: ○
ArcGIS for Desktop Standard: ○
ArcGIS for Desktop Advanced: ○
9/14/2013