概要
マップ ドキュメントおよびすべての参照先データ ソースをパッケージ化し、単一の圧縮 *.mpk ファイルを作成します。
使用法
このツールはサポートされていないレイヤー タイプを見つけると警告を出します。サポートされていないレイヤーは出力に書き込まれません。
[マップのパッケージ化 (Package Map)] ツールを実行するには、説明を入力レイヤーに追加する必要があります。説明を追加するには、レイヤーを右クリックし、[プロパティ] をクリックして、説明を入力します。
マップ パッケージを展開するには、*.mpk ファイルを ArcMap にドラッグするか、*.mpk ファイルを右クリックして [展開] をクリックします。代わりに、[パッケージの抽出 (Extract Package)] ツールを使用して、出力フォルダーを指定しても解凍できます。
デフォルトでは、パッケージは次の格納場所にあるユーザー プロファイルに抽出されます。
- XP -C:\Documents and Settings\<username>\My Documents\ArcGIS\Packages
- Vista および Windows 7 - C:\Users\<username>\Documents\ArcGIS\Packages
パッケージを展開するデフォルトの場所を変更するには、[カスタマイズ] メニューから [ArcMap オプション] を開きます。[共有] タブの [パッケージ] セクションで、[ユーザーが指定した場所を使用する] をオンにして、新しいフォルダーの場所を参照して選択します。
[データをファイル ジオデータベースへ変換] をオン (Python では convert_data = 'CONVERT') にしたとき、以下が発生します。
- 一意のデータ ソースごとに、ファイル ジオデータベースが統合フォルダーまたはパッケージに作成されます。
- 圧縮されたラスター形式およびベクター形式は、ファイル ジオデータベースに変換され、圧縮は解除されます。
- エンタープライズ ジオデータベースのデータは統合されません。エンタープライズ ジオデータベースのデータをファイル ジオデータベースに変換するには、[データを参照せずにエンタープライズ ジオデータベースのデータを含める] をオンにします。
[データをファイル ジオデータベースへ変換] をオフ (Python では convert_data = 'PRESERVE') にしたとき、以下が発生します。
- 入力レイヤーのデータ ソース形式が維持されます。例外は、パーソナル ジオデータベース データ (*.mdb)、VPF データ、Excel スプレッドシートまたは OLEDB 接続に基づくテーブルなどの形式です。これらの形式は、64x 環境ではサポートされないため、常にファイル ジオデータベースに変換されます。
- ADRG、CADRG/ECRG、CIB、および RPF ラスター形式は、常にファイル ジオデータベース ラスターに変換されます。ArcGIS は、ネイティブにこれらの形式を書き出すことはできません。効率のために、それらは常にファイル ジオデータベース ラスターに変換されます。
- 出力フォルダー構造の中で、ファイル ジオデータベースはバージョン固有のフォルダーに統合され、それ以外の形式はすべて commonData フォルダーに統合されます。
- 圧縮されたラスターおよびベクター形式は、[範囲] パラメーターに範囲が指定されていても、クリップされません。
[ArcGIS Runtime のサポート] がオン (Python では arcgisruntime='RUNTIME') の場合、[バージョン] パラメーターがオーバーライドされ、パッケージには現在のリリース バージョンと互換性のあるジオデータベースとマップのみが含まれるようになります。
結合を含むか、リレーションシップ クラスに属するレイヤーの場合、結合したデータ ソースまたは関連付けられたデータ ソースはすべて出力フォルダーに統合されます。デフォルトでは、結合したデータ ソースまたは関連付けられたデータ ソースは、[範囲] パラメーターを使用して指定された範囲に基づいて、全体が統合されるか、[関連行の選択] パラメーターに応じて統合されます。
フィーチャ レイヤーの場合は、[範囲] パラメーターを使用して、統合するフィーチャを選択します。ラスター レイヤーの場合は、[範囲] パラメーターを使用して、ラスター データセットをクリップします。
一部のデータセットは、他のデータセットを参照しています。たとえば、4 つのフィーチャクラスを参照するトポロジ データセットなどがあります。他のデータセットを参照するそれ以外のデータセットの例として、ジオメトリック ネットワーク、ネットワーク、およびロケーターを挙げることができます。これらのタイプのデータセットを基にしてレイヤーを統合またはパッケージ化するときは、それに属しているデータセットも統合またはパッケージ化されます。
[スキーマのみ] パラメーターをオン (Python では schema_only = 'SCHEMA_ONLY') にすると、入力データ ソースのスキーマだけを統合またはパッケージ化できます。スキーマは、フィーチャクラスまたはテーブルの構造または設計であり、フィールドおよびテーブル定義、座標系プロパティ、シンボル、フィルター設定などで構成されます。データまたはレコードは統合またはパッケージ化されません。
スキーマのみをサポートしないデータ ソースは、統合またはパッケージ化されません。[スキーマのみ] パラメーターをオンにしているときに、スキーマのみではサポートされないレイヤーが検出されると、警告メッセージが表示され、そのレイヤーはスキップされます。指定した唯一のレイヤーがスキーマのみではサポートされない場合、ツールは失敗します。
構文
arcpy.management.PackageMap(in_map, output_file, {convert_data}, {convert_arcsde_data}, {extent}, {apply_extent_to_arcsde}, {arcgisruntime}, {reference_all_data}, {version}, {additional_files}, {summary}, {tags})
パラメーター | 説明 | データ タイプ |
in_map | パッケージ化するマップ ドキュメント。 | ArcMap Document |
output_file | 出力マップ パッケージ (*.mpk)。 | File |
convert_data (オプション) | 入力レイヤーをファイル ジオデータベースに変換するか、その元の形式で維持するかを指定します。
| Boolean |
convert_arcsde_data (オプション) | 入力エンタープライズ ジオデータベース レイヤーをファイル ジオデータベースに変換するか、その元の形式で維持するかを指定します。
| Boolean |
extent (オプション) | 範囲パラメーターに X-Min Y-Min X-Max Y-Max 形式で座標を入力して範囲を指定します。特定レイヤーの範囲を使用するには、レイヤー名を指定します。
| Extent |
apply_extent_to_arcsde (オプション) | 指定した範囲をすべてのレイヤーに適用するか、エンタープライズ ジオデータベースのレイヤーだけに適用するかを指定します。
| Boolean |
arcgisruntime (オプション) | パッケージが ArcGIS Runtime をサポートするかどうかを指定します。ArcGIS Runtime をサポートすると、すべてのデータ ソースがファイル ジオデータベースに変換され、出力パッケージに *.msd ファイルが作成されます。
| Boolean |
reference_all_data (オプション) | このオプションを REFERENCED にすると、データをコピーするのではなく、必要なデータを参照するパッケージが作成されます。これは、組織が 1 か所で管理している大きなデータセットをパッケージ化しようとする際に役に立ちます。
| Boolean |
version [version,...] (オプション) | 出力パッケージ内に作成される、ジオデータベースのバージョンを指定します。バージョンを指定すると、パッケージを ArcGIS の以前のバージョンと共有できるようになり、後方互換性がサポートされます。
| String |
additional_files [additional_files,...] (オプション) | ファイルをパッケージに追加します。*.doc、*.txt、*.pdf などの追加ファイルは、パッケージのコンテンツや目的に関する詳細を提供します。 | File |
summary (オプション) | 概要情報をパッケージのプロパティに追加します。 | String |
tags (オプション) | タグ情報をパッケージのプロパティに追加します。カンマやセミコロンで区切ることで、複数のタグを追加できます。 | String |
コードのサンプル
PackageMap (マップのパッケージ化) の例 1 (Python ウィンドウ)
次の Python スクリプトで、PackageMap ツールを Python ウィンドウから使用する方法を示します。
import arcpy
arcpy.env.workspace = "C:/arcgis/ArcTutor/Editing"
arcpy.PackageMap_management('Exercise1.mxd', 'EditingExercise1.mpk', "PRESERVE", "CONVERT_ARCSDE", "#", "ALL")
PackageMap (マップのパッケージ化) の例 2 (スタンドアロン スクリプト)
指定したフォルダー内に存在するすべてのマップ ドキュメント用のマップ パッケージを検索、作成します。
# Name: PackageMap.py
# Description: Find all the map documents that reside in a specified folder and create map packages for each map document.
# import system modules
import os
import arcpy
# Set environment settings
arcpy.env.overwriteOutput = True
arcpy.env.workspace = "C:/arcgis/ArcTutor/Editing"
# Loop through the workspace, find all the mxds and create a map package using the same name as the mxd
for mxd in arcpy.ListFiles("*.mxd"):
print("Packaging: {0}".format(mxd))
arcpy.PackageMap_management(mxd, os.path.splitext(mxd)[0] + '.mpk', "PRESERVE", "CONVERT_ARCSDE", "#", "ALL")
環境
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい