ラベル → タイル分割されたアノテーション (Tiled Labels To Annotation) (カートグラフィ)

概要

ポリゴン インデックス レイヤーを基にして、ラベルをマップ内のレイヤーのアノテーションに変換します。

このツールでは、マップを複数のタイルに分割してから、各タイルのアノテーションを作成します。この方法は、多数のラベルをアノテーションに変換するときに便利です。ポリゴン インデックス レイヤーは、[マップ サービス キャッシュ タイル スキーマ → ポリゴン (Map Server Cache Tiling Scheme To Polygons)] ツールまたは [インデックス フィーチャ (格子状) の作成 (Grid Index Features)] ツール、あるいはアノテーションを作成する領域が含まれる任意のポリゴン フィーチャクラスで生成されます。

使用法

  • ラベルを、単一レイヤーまたはマップ全体のアノテーションに変換できます。単一レイヤーのオプションを選択した場合、マップ内にあるレイヤーを指定する必要があります。

  • ラベル クラスの縮尺範囲が考慮されます。このツールで特定の基準縮尺のアノテーションを作成すると、その縮尺で表示がオンになっているラベル クラスのみが変換されます。

    メモ:

    ラベル クラスの縮尺範囲は、ArcGIS Pro のレイヤーのプロパティで設定します。ラベルのプロパティを設定した後は、プロジェクトを保存してからこのツールを実行してください。

  • このツールを実行する前にタイルを選択すると、選択したタイルのみに対してアノテーションが作成されます。

  • ポリゴン インデックス レイヤー内の一部のタイルのみに対してアノテーションを更新するには、初めに、該当する TileID の値を持つアノテーション フィーチャを選択して削除します。次にポリゴン フィーチャを選択してツールを実行します。

  • このツールの出力の 1 つは、一連のグループ レイヤーになります。1 つのグループ レイヤーには、アノテーションの作成対象となった各基準縮尺のグループ レイヤーが含まれます。

  • [カタログ] ウィンドウまたは ModelBuilder での作業中は、[レイヤー ファイルの保存 (Save To Layer File)] ツールを使用して出力グループ レイヤーをレイヤー ファイルに書き込むことができます。

  • 同じレイヤー名が指定されるか、出力の上書きが明示的に許可された場合は、既存のグループ レイヤーが上書きされます。

  • マップ内でフィーチャクラス名の重複が見つかった場合は、フィーチャクラス名に続くアノテーションに数字が追加されます (たとえば、Cities01Anno10000、Cities02Anno10000)。

  • アノテーション フィーチャクラスは、すでに存在する接尾辞を指定しても上書きされません。その場合、アノテーション フィーチャクラスの接尾辞に数字が追加されます (たとえば、CitiesAnno10000、CitiesAnno10000_1 など)。

  • アノテーション フィーチャクラスの基準縮尺は、次の 2 つの方法で指定できます。

    • 1 つ目の方法では、ポリゴン インデックス レイヤーのフィールドを使用して、出力アノテーション フィーチャクラスの基準縮尺を決定します。この方法は、さまざまな縮尺レベルに対してアノテーションを作成する場合に使用します。
    • 2 つ目の方法では、基準縮尺の値を明示的に指定します。すべてのアノテーション フィーチャクラスでこの基準縮尺が使用されます。基準縮尺がマップで設定されている場合は、その縮尺がツールに入力されるデフォルト値になります。基準縮尺がマップで設定されていない場合は、現在の縮尺がデフォルト値になります。

  • [マップ サービス キャッシュ タイル スキーマ → ポリゴン (Map Server Cache Tiling Scheme To Polygons)] ツールで作成したポリゴン インデックス レイヤーを使用している場合は、[基準縮尺フィールド] パラメーターの Tile_Scale フィールドを使用します。レイヤーとタイルの縮尺の組み合わせごとに新しいアノテーション フィーチャクラスが作成されます。

  • 異なる基準縮尺でアノテーションを作成する場合は、縮尺ごとにマップを設計し、基準縮尺を設定しないでください。

  • ポリゴン インデックス レイヤーの座標系フィールドが指定されている場合は、描画および配置の目的で、各タイルのアノテーションがその座標系に投影されます。

  • [フィーチャリンク アノテーションの作成] パラメーターがオフである場合、[ラベルをすべてのレイヤーから単一の出力フィーチャクラスに変換] パラメーターを使用して、マップ全体の単一のアノテーション フィーチャクラスを作成できます。

    マップの単一のアノテーション フィーチャクラスを作成する場合、[類似するラベル クラスのマージ] パラメーターを使用して、類似するプロパティを持つラベル クラスを 1 つのアノテーション クラスにマージできます。

  • フィーチャリンク アノテーションは、ジオデータベースの別のフィーチャクラスに含まれている特定のフィーチャに関連付けられます。オンになっている場合は、出力アノテーション フィーチャクラスを作成すると、リレーションシップ クラスも自動的に生成されます。

  • フィーチャリンク アノテーションを作成するときは、出力ワークスペースを、リンク先のフィーチャクラスと同じものにする必要があります。

  • 表示スペースが不足しているために、一部のラベルがマップ上に表示されない場合があります。これらのラベルを変換するには、[未配置アノテーションの生成] チェックボックスをオンにします。これにより、アノテーション フィーチャクラスの未配置のラベルを保存して、後から編集セッションで一度に配置することができます。

  • メモリ ワークスペースと in_memory ワークスペースは、フィーチャリンク アノテーションをサポートしていません。

構文

TiledLabelsToAnnotation(input_map, polygon_index_layer, out_geodatabase, out_layer, anno_suffix, {reference_scale_value}, {reference_scale_field}, {tile_id_field}, {coordinate_sys_field}, {map_rotation_field}, {feature_linked}, {generate_unplaced_annotation}, {which_layers}, {single_layer}, {require_symbol_id}, {auto_create}, {update_on_shape_change}, {multiple_feature_classes}, {merge_label_classes})
パラメーター説明データ タイプ
input_map

アノテーションに変換するラベルが含まれるマップ。

Map
polygon_index_layer

タイル フィーチャが含まれるポリゴン レイヤー。

Table View
out_geodatabase

出力フィーチャクラスが保存されるワークスペース。ワークスペースには、既存のジオデータベースまたは既存のフィーチャ データセットを指定できます。

Workspace; Feature Dataset
out_layer

作成されるアノテーションを格納するグループ レイヤー。[レイヤー ファイルの保存 (Save To Layer File)] ツールを使用して出力グループ レイヤーをレイヤー ファイルに書き込むことができます。

Group Layer
anno_suffix

新しいアノテーション フィーチャクラスのそれぞれに追加される接尾辞。この接尾辞は、新しいアノテーション フィーチャクラスのそれぞれのソース フィーチャクラスの名前に追加されます。この接尾辞の後に、アノテーションの基準縮尺が続きます。

String
reference_scale_value
(オプション)

アノテーションの基準として使用される縮尺値。これは、アノテーション内のすべてのシンボル サイズとテキスト サイズの基準になる縮尺です。

Double
reference_scale_field
(オプション)

アノテーションの基準縮尺を決定するポリゴン インデックス レイヤーのフィールド。これは、アノテーション内のすべてのシンボル サイズとテキスト サイズの基準になる縮尺です。

Field
tile_id_field
(オプション)

タイル分割された領域を一意に識別するポリゴン インデックス レイヤー内のフィールド。この値は、アノテーション フィーチャクラスの属性テーブルの「TileID」フィールドに入力されます。

Field
coordinate_sys_field
(オプション)

各タイルの座標系情報が格納されるポリゴン インデックス レイヤーのフィールド。座標系情報を保存するフィールドには特定の長さが必要になるため、座標系フィールドが格納されるポリゴン インデックス レイヤーはジオデータベースのフィーチャクラスにする必要があります。

Field
map_rotation_field
(オプション)

データフレームの回転に使用する角度が格納されるポリゴン インデックス レイヤーのフィールド。

Field
feature_linked
(オプション)
ライセンス:

このパラメーターは ArcGIS Desktop Standard および ArcGIS Desktop Advanced ライセンスでのみ利用可能です。

出力アノテーション フィーチャクラスが別のフィーチャクラスのフィーチャにリンクされるかどうかを指定します。

  • STANDARD 出力アノテーション フィーチャクラスは別のフィーチャクラスのフィーチャにリンクされません。これがデフォルトです。
  • FEATURE_LINKED出力アノテーション フィーチャクラスは別のフィーチャクラスのフィーチャにリンクされます。
Boolean
generate_unplaced_annotation
(オプション)

未配置アノテーションが未配置ラベルから作成されるかどうかを指定します。

  • NOT_GENERATE_UNPLACED_ANNOTATIONアノテーションは、現在ラベルが配置されているフィーチャに対してのみ作成されます。これがデフォルトです。
  • GENERATE_UNPLACED_ANNOTATION未配置アノテーションがアノテーション フィーチャクラスに格納されます。これらのアノテーションのステータス フィールドは [未配置] に設定されます。
Boolean
which_layers
(オプション)

アノテーションがマップ内のすべてのレイヤーに対して作成されるのか、それとも単一レイヤーに対して作成されるのかを指定します。単一レイヤーを指定する必要があります。

  • ALL_LAYERSラベルが、マップ全体のアノテーションに変換されます。 これがデフォルトです。
  • SINGLE_LAYERラベルが、単一レイヤーのアノテーションに変換されます。レイヤーを指定する必要があります。
String
single_layer
(オプション)

which_layers パラメーターが SINGLE_LAYER に設定された場合に変換されるレイヤー。このレイヤーがマップ内にある必要があります。

Feature Layer
require_symbol_id
(オプション)

すべてのテキスト シンボル プロパティを編集できるかどうかを指定します。

  • NO_REQUIRE_IDすべてのテキスト シンボル プロパティを編集できます。これがデフォルトです。
  • REQUIRE_IDアノテーション フィーチャがコレクション内の関連先のテキスト シンボルへの参照を維持できるシンボル プロパティのみを編集できます。
Boolean
auto_create
(オプション)

feature_linked パラメーターを FEATURE_LINKED に設定した場合、新しいフィーチャがリンクされたフィーチャクラスに追加されたときにアノテーションを作成するかどうかを指定します。

  • AUTO_CREATE新しいフィーチャがリンクされたフィーチャクラスに追加されたときに、フィーチャリンク アノテーションが作成されます。これがデフォルトです。
  • NO_AUTO_CREATE新しいフィーチャがリンクされたフィーチャクラスに追加されたときに、フィーチャリンク アノテーションが作成されません。
Boolean
update_on_shape_change
(オプション)

feature_linked パラメーターを FEATURE_LINKED に設定した場合、リンクされたフィーチャの形状が更新されたときにアノテーションの位置を更新するかどうかを指定します。

  • SHAPE_UPDATEリンクされたフィーチャの形状が変更されたときにアノテーションの位置を更新します。これがデフォルトです。
  • NO_SHAPE_UPDATEリンクされたフィーチャの形状が変更されたときにアノテーションの位置を更新しません。
Boolean
multiple_feature_classes
(オプション)

ラベルを個別のアノテーション フィーチャクラスまたは単一のアノテーション フィーチャクラスのいずれに変換するかを指定します。単一のアノテーション フィーチャクラスに変換する場合、アノテーションをフィーチャ リンクにすることはできません。

  • SINGLE_FEATURE_CLASSすべてのレイヤーのラベルが、単一のアノテーション フィーチャクラスに変換されます。
  • FEATURE_CLASS_PER_FEATURE_LAYERラベルが、それらのレイヤーに対応する個別のアノテーション フィーチャクラスに変換されます。これがデフォルトです。
Boolean
merge_label_classes
(オプション)

multiple_feature_classes パラメーターを SINGLE_FEATURE_CLASS に設定した場合に、類似するラベル クラスをマージするかどうかを指定します。

  • MERGE_LABEL_CLASS単一のフィーチャクラスを作成するときに、類似するプロパティを持つラベル クラスがマージされます。
  • NO_MERGE_LABEL_CLASSラベル クラスはマージされません。これがデフォルトです。
Boolean

派生した出力

名前説明データ タイプ
out_workspace

出力フィーチャクラスが保存されるワークスペース。

ワークスペースまたはフィーチャ データセット

コードのサンプル

TiledLabelsToAnnotation (ラベル → タイル分割されたアノテーション) の例 (Python ウィンドウ)

ポリゴン インデックス レイヤーを基にして、ラベルをマップ内の単一レイヤーのアノテーションに変換する TiledLabelsToAnnotation の Python サンプルです。

import arcpy
arcpy.env.workspace = "C:/data/data.gdb"
arcpy.TiledLabelsToAnnotation_cartography("Map1", "Tiles", "data.gdb", 
                                          "GroupAnno", "Anno", "", "Tile_Scale",  
                                          "OID", "", "", "FEATURE_LINKED", 
                                          "GENERATE_UNPLACED_ANNOTATION", 
                                          "SINGLE_LAYER", "Towns", 
																																										"REQUIRE_ID", "AUTO_CREATE", 
                                          "SHAPE_UPDATE", "", "")
TiledLabelsToAnnotation (ラベル → タイル分割されたアノテーション) の例 2 (ワークフロー スクリプト)

次のスクリプトは、MapServerCacheTilingSchemeToPolygons 関数と TiledLabelsToAnnotation 関数を使用するワークフローを示しています。

# Name: TiledLabelsToAnnotation_Example2.py
# Description: Create a tile feature class and use those tiles to create annotation.
# Requirements: ArcGIS Desktop Advanced license
# Import system modules
import arcpy
import os
# Set environment settings
arcpy.env.workspace = "C:/data/data.gdb"
# Set local variables
aprx = arcpy.mp.ArcGISProject(r"C:/data/Annotation.aprx")
inMap = aprx.listMaps("Map")[0]
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 = ""
# Execute MapServerCacheTilingSchemeToPolygons
arcpy.MapServerCacheTilingSchemeToPolygons_cartography(
    inMap, inTilingScheme, outFeatureClass, inTileExtent, inClipping, 
    inAntialiasing, inScales)
# Set local variables
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"
inWhichLayers = "ALL_LAYERS"
inSingleLayer = ""
inRequireSymbolID = ""
inAutoCreate = ""
inUpdateOnShapeChange = ""
inMultipleFeatureClasses = "SINGLE_FEATURE_CLASS"
inMergeFeatureClasses = "MERGE_LABEL_CLASS"
 
# Execute TiledLabelsToAnnotation
arcpy.TiledLabelsToAnnotation_cartography(
    inMap, inPolygonIndexLayer, inOutGeodatabase, outOutLayer, inAnnoSuffix, 
    inRefScaleValue, inRefScaleField, inTileIDField, inCoordSysField, 
    inMapRotationField, inFeatureLinked, inGenerateUnplaced, inWhichLayers, 
    inSingleLayer, inRequireSymbolID, inAutoCreate, inUpdateOnShapeChange, 
    inMultipleFeatureClasses, inMergeFeatureClasses)

ライセンス情報

  • Basic: はい
  • Standard: はい
  • Advanced: はい

関連トピック