ラベル | 説明 | データ タイプ |
入力レイヤー | マスクを作成する対象の、シンボル表示された入力レイヤー。 | Annotation Layer |
出力フィーチャクラス | マスク フィーチャの格納先となるフィーチャクラス。 | Feature Class |
基準縮尺 | マスクをページ単位で指定する場合に、マスキング ジオメトリの計算に使用される基準縮尺。 これは通常、マップの基準縮尺です。 | Double |
マスク レイヤーの空間参照 | マスキング ポリゴンが作成されるマップの空間参照。 これは、出力フィーチャクラスに割り当てられる空間参照とは異なります。 フィーチャを投影したときにシンボルの位置が変わる場合があるので、マスキング ポリゴンが使用されるマップの空間参照を指定します。 | Spatial Reference |
余白 | シンボル表示された入力フィーチャを囲むページ単位のスペース。マスキング ポリゴンの作成に使用されます。 マスキング ポリゴンを作成する際は通常、見栄えを良くするためにシンボルの周囲に小幅の余白を確保します。 余白の値をページ単位またはマップ単位のどちらかで指定できます。 余白は負にできません。 | Linear Unit |
マスク タイプ | 作成するマスキング ジオメトリのタイプを指定します。
| String |
未配置アノテーションのマスクの作成 | 未配置アノテーション用のマスクを作成するかどうかを指定します。 このパラメーターが使用されるのは、ジオデータベース アノテーション レイヤーをマスクしている場合だけです。
| String |
属性の割り当て (Transfer Attributes) (オプション) | 入力フィーチャから出力フィーチャに渡す属性を指定します。
| String |
小規模フィーチャを保持 (オプション) | 小さいマスク フィーチャが出力フィーチャクラスに含まれるかどうかを指定します。
| Boolean |
使用法
このツールでは、ポイント フィーチャ レイヤー、ライン フィーチャ レイヤー、ポリゴン フィーチャ レイヤー、およびジオデータベース アノテーション レイヤーを入力として指定できます。
マップにマスクを追加するとマップが複雑になり、マップの描画が遅くなるため、マップの印刷やエクスポートに影響が及びます。 マップ用にマスクを作成する際の一般的な考慮点は、マスクの数、マスクの複雑度、マーカーまたはライン シンボルで塗りつぶされているポリゴン フィーチャをマスクするために使用するかどうかの 3 つです。 これらにより、画面上の描画速度が遅くなります。 さらに、印刷やエクスポートのパフォーマンスが低下し、有効な出力を生成できなくなるおそれもあります。 この理由は、マスク付きマップの印刷とエクスポートでは大量の処理を行う必要があることと、複雑なマスクが多用されたマップをグラフィック ファイル形式にエクスポートする方法には既知の制限があるためです。
描画のパフォーマンスや、印刷/エクスポートのパフォーマンスと信頼性を向上させるためにも、マップの用途に必要なだけの最も単純なマスクを使用してください。 特に [マスク タイプ] パラメーターを使用してアノテーション テキストをマスクする場合、多くのマップの目的では [凸包] オプションで十分です。 より詳細なテキスト マスクには、[正確 (単純化)] オプションを使用します。 比較的大きなマップで多くのテキストをマスクする場合は通常、[正確] オプションを使用しないでください。なぜなら、複雑なマスクが大量に作成され、有効な出力を効率的に生成できないからです。
このツールは、デフォルトで非常に小さなマスク フィーチャを出力から除外します。 マップの基準縮尺では表示されないような小さなマスクは消去され、管理しやすく効率的なフィーチャクラスが作成されます。 ワークフローで非常に小さなマスクが必要な場合は、[小規模フィーチャを保持] パラメーターをオンにし、サイズに関係なく出力フィーチャクラスのすべてのマスクを保持します。 小さなマスクが多数あると、マップとマップ出力が複雑になることがあります。
通常、余白値はページ単位で指定されますが、マップ単位も使用できます。
通常、余白は 0 より大きい値です。 余白サイズが 0 の場合、シンボル表示されたフィーチャの正確な形状を表すマスクが作成されます。
入力レイヤーがアノテーション レイヤーである場合、基準縮尺はレイヤーのフィーチャクラスの基準縮尺に自動設定されるので、結果としてマスクを高い精度で計算できます。
リアルタイムで投影されたアノテーションをマスクするときは、マップの空間参照を使用して [マスク レイヤーの空間参照] パラメーターで正しく設定して、マスクを作成する必要があります。 リアルタイムでテキストを投影しても読みやすさが保持されます。この理由から、投影ごとにテキストが占有する空間領域はそれぞれ異なることがあります。
アノテーション フィーチャのマスクは、フォント固有です。 テキストにマスクを使用するときは必ず、画面のフォントに出力と同じフォントを使用してください。 そのためには、ベクター出力にフォントを埋め込むか、または SoftFonts をプリンターまたはプロッターにダウンロードしてください。
マスクが現在のマップの回転に基づいて作成され、マスクの作成後にマップが別の回転に設定されると、マスクが無効になる可能性があります。
パラメーター
arcpy.cartography.FeatureOutlineMasks(input_layer, output_fc, reference_scale, spatial_reference, margin, method, mask_for_non_placed_anno, {attributes}, {preserve_small_sized_features})
名前 | 説明 | データ タイプ |
input_layer | マスクを作成する対象の、シンボル表示された入力レイヤー。 | Annotation Layer |
output_fc | マスク フィーチャの格納先となるフィーチャクラス。 | Feature Class |
reference_scale | マスクをページ単位で指定する場合に、マスキング ジオメトリの計算に使用される基準縮尺。 これは通常、マップの基準縮尺です。 | Double |
spatial_reference | マスキング ポリゴンが作成されるマップの空間参照。 これは、出力フィーチャクラスに割り当てられる空間参照とは異なります。 フィーチャを投影したときにシンボルの位置が変わる場合があるので、マスキング ポリゴンが使用されるマップの空間参照を指定します。 | Spatial Reference |
margin | シンボル表示された入力フィーチャを囲むページ単位のスペース。マスキング ポリゴンの作成に使用されます。 マスキング ポリゴンを作成する際は通常、見栄えを良くするためにシンボルの周囲に小幅の余白を確保します。 余白の値をページ単位またはマップ単位のどちらかで指定できます。 余白は負にできません。 | Linear Unit |
method | 作成するマスキング ジオメトリのタイプを指定します。
| String |
mask_for_non_placed_anno | 未配置アノテーション用のマスクを作成するかどうかを指定します。 このパラメーターが使用されるのは、ジオデータベース アノテーション レイヤーをマスクしている場合だけです。
| String |
attributes (オプション) | 入力フィーチャから出力フィーチャに渡す属性を指定します。
| String |
preserve_small_sized_features (オプション) | 小さいマスク フィーチャが出力フィーチャクラスに含まれるかどうかを指定します。
| Boolean |
コードのサンプル
次の Python ウィンドウ スクリプトは、イミディエイト モードで FeatureOutlineMasks 関数を使用する方法を示しています。
import arcpy
arcpy.env.workspace = "C:/data"
sr = arcpy.SpatialReference(4326)
arcpy.cartography.FeatureOutlineMasks("C:/data/cartography.gdb/transportation/roads",
"C:/data/cartography.gdb/transportation/fom_polys",
"25000", sr, "5 meters","EXACT_SIMPLIFIED",
"ALL_FEATURES", "ALL")
このスタンドアロン スクリプトは、FeatureOutlineMasks 関数の使用例を示しています。
# Name: FeatureOutlineMasks_standalone_script.py
# Description: Creates mask polygons at a specified distance and shape
# around symbolized features.
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
# Set local variables
input_layer = "roads.lyrx"
output_fc = "cartography.gdb/transportation/roads_fom_polys"
reference_scale = "25000"
spatial_reference = arcpy.SpatialReference(4326)
margin = "5 meters"
method = "EXACT_SIMPLIFIED"
mask_for_non_placed_anno = "ONLY_PLACED"
attributes = "ALL"
# Execute Feature Outline Masks
arcpy.FeatureOutlineMasks_cartography(input_layer,
output_fc,
reference_scale,
spatial_reference,
margin, method,
mask_for_non_placed_anno,
attributes)
ライセンス情報
- Basic: No
- Standard: No
- Advanced: Yes