ラベル | 説明 | データ タイプ |
入力マップ | その範囲が使用される現在のマップ。 | Map |
タイル スキーマ | 定義済みタイル スキーマの .xml ファイル。 | File |
出力フィーチャクラス | 出力ポリゴン フィーチャクラス。 | Feature Class |
マップ範囲と重なるポリゴンの生成 | タイル スキーマ範囲全体にポリゴン フィーチャを作成するか、それともマップの全範囲と交差するタイルのみにポリゴン フィーチャを作成するかを選択します。
| Boolean |
タイルを座標系の水平線上にクリップ | マップの地理座標系、または投影座標系のどちらの有効使用領域に対して、ポリゴンを拘束するかを指定します。
| Boolean |
アンチエイリアスが有効化されたマップ サービス キャッシュと一致するポリゴンを生成 (オプション) | アンチエイリアスが有効化されたマップ サービス キャッシュと一致するポリゴンを、生成するかどうかを指定します。 マップ サービス キャッシュのスーパータイルのサイズは 2048 x 2048 ピクセル (アンチエイリアスを使用)、または 4096 x 4096 ピクセル (アンチエイリアスを不使用) です。 アンチエイリアスが既存のキャッシュで使用されているかどうかを判別するには、タイル スキーマ ファイル (conf.xml) を開いて、<Antialiasing> タグが true に設定されているかどうかを確認します。
| Boolean |
縮尺 (オプション) | ポリゴンを作成する縮尺レベル。 これらの縮尺レベルは、入力タイル スキーマの縮尺レベルに基づいて自動的に設定されます。 タイル スキーマに収録されている縮尺レベルの一部または全部に対してポリゴンを作成できます。 しかし、別途に縮尺レベルを追加する場合は、タイル スキーマ ファイルを変更するか、新規に作成する必要があります。このツールでは [値の追加] ボタンは無効になるためです。 | Double |
サマリー
既存のタイル スキーマに基づいてポリゴン フィーチャクラスを作成します。
このツールは、既存のマップ サービス キャッシュ タイル スキーマと同じ縮尺を使用してマップ範囲を細分化します。また、大規模領域にスーパータイルと呼ばれるタイルを作成します。 スーパータイル範囲は、タイル スキーマ内に定義されている実際のタイルに比べて大規模です。そのため、[ラベル → タイル分割されたアノテーション (Tiled Labels To Annotation)] ツールへの入力として使用されたタイルに基づいて、ラベルを大規模領域に対応したアノテーションに一括変換できるようになっています。 このプロセスによって、タイル全体のアノテーションの複製が最小化されます。
使用法
既存のタイル スキーマを読み込むには次のオプションを使用できます。
- ArcGIS Online、Google Maps、Bing Maps、Yahoo などのオンライン マッピング サービスからタイル スキーマを読み込みます。 これらのタイル スキーマは、ArcGIS Pro のインストール ディレクトリの Resources\TilingSchemes フォルダーにあります。
- 既存のマップ サービス キャッシュからタイル スキーマ ファイルを読み込みます。 どのマップ キャッシュにも、キャッシュ ディレクトリ内にタイル スキーマ ファイル (conf.xml) があります (たとえば、C:\arcgisserver\arcgiscache\MyService\MyDataFrame\conf.xml)。
- [マップ サービス キャッシュ タイル スキーマの生成 (Generate Map Server Cache Tiling Scheme)] ツールを使用して、タイル スキーマ ファイルを生成します。
このツールからの出力フィーチャクラスは、[ラベル → タイル分割されたアノテーション (Tiled Labels to Annotation)] ツールで入力として使用できます。
[タイルを座標系の水平線上にクリップ] パラメーターで、特定の地理座標系または投影座標系の有効使用領域を、座標系の水平線として指定します。
パラメーター
arcpy.cartography.MapServerCacheTilingSchemeToPolygons(input_map, tiling_scheme, output_feature_class, use_map_extent, clip_to_horizon, {antialiasing}, {levels})
名前 | 説明 | データ タイプ |
input_map | その範囲が使用される現在のマップ。 | Map |
tiling_scheme | 定義済みタイル スキーマの .xml ファイル。 | File |
output_feature_class | 出力ポリゴン フィーチャクラス。 | Feature Class |
use_map_extent | タイル スキーマ範囲全体にポリゴン フィーチャを作成するか、それともマップの全範囲と交差するタイルのみにポリゴン フィーチャを作成するかを選択します。
| Boolean |
clip_to_horizon | マップの地理座標系、または投影座標系のどちらの有効使用領域に対して、ポリゴンを拘束するかを指定します。
| Boolean |
antialiasing (オプション) | アンチエイリアスが有効化されたマップ サービス キャッシュと一致するポリゴンを、生成するかどうかを指定します。 マップ サービス キャッシュのスーパータイルのサイズは 2048 x 2048 ピクセル (アンチエイリアスを使用)、または 4096 x 4096 ピクセル (アンチエイリアスを不使用) です。 アンチエイリアスが既存のキャッシュで使用されているかどうかを判別するには、タイル スキーマ ファイル (conf.xml) を開いて、<Antialiasing> タグが true に設定されているかどうかを確認します。
| Boolean |
levels [level,...] (オプション) | ポリゴンを作成する縮尺レベル。 タイル スキーマに収録されているすべての縮尺レベルでポリゴンを作成する場合は、このパラメーターを空白のままにしてください。 タイル スキーマに収録されている縮尺レベルの一部または全部に対してポリゴンを作成できます。 しかし、別途に縮尺レベルを追加する場合は、タイル スキーマ ファイルを変更するか、新規に作成する必要があります。 | Double |
コードのサンプル
次のスタンドアロン スクリプトで、MapServerCacheTilingSchemeToPolygons 関数を使用する方法を示します。
import arcpy
import os
arcpy.env.workspace = "C:/data/data.gdb"
arcpy.cartography.MapServerCacheTilingSchemeToPolygons(
"C:/data/Annotation.mxd", os.path.join(arcpy.GetInstallInfo()['InstallDir'],
'Resources\\TilingSchemes\\WGS84_Geographic_Coordinate_System_V2.xml'),
"Tiles", "USE_MAP_EXTENT", "CLIP_TO_HORIZON", "NONE")
次のスクリプトは、MapServerCacheTilingSchemeToPolygons 関数と TiledLabelsToAnnotation 関数を使用するワークフローを示しています。
# Name: MapServerCacheTilingSchemeToPolygons_Example2.py
# Description: Create a tile feature class and use those tiles to create annotation.
# Import system modules
import arcpy
import os
# Set environment settings
arcpy.env.workspace = "C:/data/data.gdb"
# Set local variables
inMapDocument = "C:/data/Annotation.mxd"
# Change path below to match your system
inTilingScheme = os.path.join(arcpy.GetInstallInfo()['InstallDir'],
'Resources\\TilingSchemes\\ArcGIS_Online_Bing_Maps_Google_Maps.xml')
outFeatureClass = "C:/data/data.gdb/Tiles"
inTileExtent = "USE_MAP_EXTENT"
inClipping = "CLIP_TO_HORIZON"
inAntialiasing = "NONE"
inScales = ""
# Run MapServerCacheTilingSchemeToPolygons
arcpy.cartography.MapServerCacheTilingSchemeToPolygons(
inMapDocument, inTilingScheme, outFeatureClass,
inTileExtent, inClipping, inAntialiasing, inScales)
# Set local variables
inMapDocument = "C:/data/Annotation.mxd"
inPolygonIndexLayer = "Tiles"
inOutGeodatabase = "C:/data/data.gdb"
outOutLayer = "GroupAnno"
inAnnoSuffix = "Anno"
inRefScaleValue = ""
inRefScaleField = "Tile_Scale"
inTileIDField = "OID"
inCoordSysField = ""
inMapRotationField = ""
inFeatureLinked = "STANDARD"
inGenerateUnplaced = "GENERATE_UNPLACED_ANNOTATION"
# Run TiledLabelsToAnnotation
arcpy.cartography.TiledLabelsToAnnotation(
inMapDocument, inPolygonIndexLayer, inOutGeodatabase,
outOutLayer, inAnnoSuffix, inRefScaleValue, inRefScaleField,
inTileIDField, inCoordSysField, inMapRotationField,inFeatureLinked,
inGenerateUnplaced)
環境
ライセンス情報
- Basic: Yes
- Standard: Yes
- Advanced: Yes