インターセクト レイヤー マスク (Intersecting Layers Masks) (カートグラフィ)

サマリー

シンボル表示された 2 つの入力レイヤー (マスクするレイヤーとマスクされるレイヤー) の交差部に、指定した形状およびサイズでマスク ポリゴンを作成します。

フィーチャ アウトライン マスクおよびインターセクト レイヤー マスクの詳細

使用法

  • このツールでは、ポイント フィーチャ レイヤー、ライン フィーチャ レイヤー、ポリゴン フィーチャ レイヤー、およびジオデータベース アノテーション レイヤーを入力として指定できます。

  • 通常、余白は 0 より大きい値です。 余白サイズが 0 の場合、シンボル表示されたフィーチャの正確な形状を表すマスクが作成されます。

  • マップにマスクを追加するとマップが複雑になり、マップの描画が遅くなるため、マップの印刷やエクスポートに影響が及びます。 マップ用にマスクを作成する際の一般的な考慮点は、マスクの数、マスクの複雑度、マーカーまたはライン シンボルで塗りつぶされているポリゴン フィーチャをマスクするために使用するかどうかの 3 つです。 これらにより、画面上の描画速度が遅くなります。 さらに、印刷やエクスポートのパフォーマンスが低下し、有効な出力を生成できなくなるおそれもあります。 この理由は、マスク付きマップの印刷とエクスポートでは大量の処理を行う必要があることと、複雑なマスクが多用されたマップをグラフィック ファイル形式にエクスポートする方法には既知の制限があるためです。

  • 描画のパフォーマンスや、印刷/エクスポートのパフォーマンスと信頼性を向上させるためにも、マップの用途に必要なだけの最も単純なマスクを使用してください。 特に [マスク タイプ] パラメーターを使用してアノテーション テキストをマスクする場合、多くのマップの目的では [凸包] オプションで十分です。 より詳細なテキスト マスクには、[正確 (単純化)] オプションを使用します。 比較的大きなマップで多くのテキストをマスクする場合は通常、[正確] オプションを使用しないでください。なぜなら、複雑なマスクが大量に作成され、有効な出力を効率的に生成できないからです。

  • 余白の値をページ単位またはマップ単位のどちらかで指定できます。 通常、余白の距離値はページ単位で指定します。

    余白値の単位の解釈は、選択した単位に応じて異なります。 ポイント、インチ、ミリメートル、またはセンチメートルを選択した場合、ページ スペースで計算された余白の距離を使用して、マスクが作成されます (余白とは紙面上で測定された距離であると考えます)。 この計算では、[基準縮尺] パラメーター値が考慮されます。

    余白の値に対して他の単位を選択した場合、マップ上で計算された余白の距離を使用して、マスクが作成されます (余白とは地球上での実際の距離測定値であると考えます)。 また、この場合、[基準縮尺] パラメーター値は、計算の一部としては使用されません。

  • いずれかの入力レイヤーがアノテーション レイヤーである場合、基準縮尺はレイヤーのフィーチャクラスの基準縮尺に自動設定されるので、結果としてマスクを高い精度で計算できます。 2 つのアノテーション レイヤーを交差させる場合、その両方に同じ基準縮尺を使用する必要があります。

  • リアルタイムで投影されたアノテーションをマスクするときは、マップの空間参照を使用して [マスク レイヤーの空間参照] パラメーターで正しく設定して、マスクを作成する必要があります。 リアルタイムでテキストを投影しても読みやすさが保持されます。この理由から、投影ごとにテキストが占有する空間領域はそれぞれ異なることがあります。

  • アノテーション フィーチャのマスクは、フォント固有です。 テキストにマスクを使用するときは必ず、画面のフォントに出力と同じフォントを使用してください。 そのためには、ベクター出力にフォントを埋め込むか、または SoftFonts をプリンターまたはプロッターにダウンロードしてください。

  • 大きなデータセットを一括処理する場合は、メモリの制限を超えることがあります。 このような場合、「カートグラフィック パーティション」環境設定で、関連するポリゴン フィーチャクラスを特定することによって、パーティション単位で入力データを処理することを検討します。 パーティションの境界によって定義されたデータの一部が順次処理されます。 出力フィーチャクラスは、パーティション エッジにおいてシームレスでかつ一致しています。

  • マスクが現在のマップの回転に基づいて作成され、マスクの作成後にマップが別の回転に設定されると、マスクが無効になる可能性があります。

パラメーター

ラベル説明データ タイプ
マスクするレイヤー

マスク付きレイヤーと交差してマスク ポリゴンを作成する、シンボル表示された入力レイヤー。 このレイヤーは、マスクされるレイヤーにマスキングが適用されているときに表示されます。

Layer
マスクされるレイヤー

マスク対象のシンボル表示された入力レイヤー。 このレイヤーはマスク ポリゴンによって隠されます。

Layer
出力フィーチャクラス

マスク フィーチャの格納先となるフィーチャクラス。

Feature Class
基準縮尺

マスクをページ単位で指定する場合に、マスキング ジオメトリの計算に使用される基準縮尺。 これは通常、マップの基準縮尺です。

Double
マスク レイヤーの空間参照

マスク ポリゴンが作成されるマップの空間参照。 これは、出力フィーチャクラスに割り当てられる空間参照とは異なります。 フィーチャを投影したときにシンボルの位置が変わる場合があるので、マスク ポリゴンが使用されるマップの空間参照を指定します。

Spatial Reference
余白

シンボル表示された入力フィーチャを囲むページ単位のスペース。マスク ポリゴンの作成に使用されます。 マスク ポリゴンを作成する際は通常、見栄えを良くするためにシンボルの周囲に小幅の余白を確保します。 余白の値をページ単位またはマップ単位のどちらかで指定できます。 ほとんどの場合、余白の距離値はページ単位で指定します。

余白は負にできません。

Linear Unit
マスク タイプ

作成するマスキング ジオメトリのタイプを指定します。

  • シンボル表示されたフィーチャの範囲を表すポリゴンが作成されます。
  • 凸包フィーチャのシンボル表示されたジオメトリの凸包が作成されます。 これがデフォルトです。
  • 正確 (単純化)シンボル表示されたフィーチャの正確な形状を表す、単純化ポリゴンが作成されます。 この方法で作成されたポリゴンは、[正確] オプションで作成されたポリゴンと比較して、頂点の数がはるかに少なくなります。
  • 正確シンボル表示されたフィーチャの正確な形状を表すポリゴンが作成されます。
  • シンボル表示されたフィーチャの範囲を表すポリゴンが作成されます。
  • 凸包フィーチャのシンボル表示されたジオメトリの凸包が作成されます。 これがデフォルトです。
  • 正確 (単純化)シンボル表示されたフィーチャの正確な形状を表す、単純化ポリゴンが作成されます。 この方法で作成されたポリゴンは、EXACT オプションで作成されたポリゴンと比較して、頂点の数がはるかに少なくなります。
  • 正確シンボル表示されたフィーチャの正確な形状を表すポリゴンが作成されます。
String
未配置アノテーションのマスクの作成

未配置アノテーション用のマスクを作成するかどうかを指定します。 このパラメーターが使用されるのは、ジオデータベース アノテーション レイヤーをマスクしている場合だけです。

  • すべてのアノテーション フィーチャマスクはすべてのアノテーション フィーチャに対して作成されます。 これがデフォルトです。
  • 配置アノテーション フィーチャのみマスクは、配置済みの状態のフィーチャに対してのみ作成されます。
String
属性の割り当て
(オプション)

入力フィーチャから出力フィーチャに渡す属性を指定します。

  • FID フィールドのみ入力フィーチャの FID フィールドのみを出力フィーチャに渡します。 これがデフォルトです。
  • すべての属性 (FID フィールドを除く)入力フィーチャの FID を除いたすべての属性を、出力フィーチャに渡します。
  • すべての属性入力フィーチャのすべての属性を出力フィーチャに渡します。
String

arcpy.cartography.IntersectingLayersMasks(masking_layer, masked_layer, output_fc, reference_scale, spatial_reference, margin, method, mask_for_non_placed_anno, {attributes})
名前説明データ タイプ
masking_layer

マスク付きレイヤーと交差してマスク ポリゴンを作成する、シンボル表示された入力レイヤー。 このレイヤーは、マスクされるレイヤーにマスキングが適用されているときに表示されます。

Layer
masked_layer

マスク対象のシンボル表示された入力レイヤー。 このレイヤーはマスク ポリゴンによって隠されます。

Layer
output_fc

マスク フィーチャの格納先となるフィーチャクラス。

Feature Class
reference_scale

マスクをページ単位で指定する場合に、マスキング ジオメトリの計算に使用される基準縮尺。 これは通常、マップの基準縮尺です。

Double
spatial_reference

マスク ポリゴンが作成されるマップの空間参照。 これは、出力フィーチャクラスに割り当てられる空間参照とは異なります。 フィーチャを投影したときにシンボルの位置が変わる場合があるので、マスク ポリゴンが使用されるマップの空間参照を指定します。

Spatial Reference
margin

シンボル表示された入力フィーチャを囲むページ単位のスペース。マスク ポリゴンの作成に使用されます。 マスク ポリゴンを作成する際は通常、見栄えを良くするためにシンボルの周囲に小幅の余白を確保します。 余白の値をページ単位またはマップ単位のどちらかで指定できます。 ほとんどの場合、余白の距離値はページ単位で指定します。

余白は負にできません。

Linear Unit
method

作成するマスキング ジオメトリのタイプを指定します。

  • BOXシンボル表示されたフィーチャの範囲を表すポリゴンが作成されます。
  • CONVEX_HULLフィーチャのシンボル表示されたジオメトリの凸包が作成されます。 これがデフォルトです。
  • EXACT_SIMPLIFIEDシンボル表示されたフィーチャの正確な形状を表す、単純化ポリゴンが作成されます。 この方法で作成されたポリゴンは、EXACT オプションで作成されたポリゴンと比較して、頂点の数がはるかに少なくなります。
  • EXACTシンボル表示されたフィーチャの正確な形状を表すポリゴンが作成されます。
String
mask_for_non_placed_anno

未配置アノテーション用のマスクを作成するかどうかを指定します。 このパラメーターが使用されるのは、ジオデータベース アノテーション レイヤーをマスクしている場合だけです。

  • ALL_FEATURESマスクはすべてのアノテーション フィーチャに対して作成されます。 これがデフォルトです。
  • ONLY_PLACEDマスクは、配置済みの状態のフィーチャに対してのみ作成されます。
String
attributes
(オプション)

入力フィーチャから出力フィーチャに渡す属性を指定します。

  • ONLY_FID入力フィーチャの FID フィールドのみを出力フィーチャに渡します。 これがデフォルトです。
  • NO_FID入力フィーチャの FID を除いたすべての属性を、出力フィーチャに渡します。
  • ALL入力フィーチャのすべての属性を出力フィーチャに渡します。
String

コードのサンプル

IntersectingLayersMasks の例 1 (Python ウィンドウ)

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

import arcpy
arcpy.cartography.IntersectingLayersMasks("C:/data/cartography.gdb/transportation/roads",
                                          "C:/data/cartography.gdb/transportation/railroads",
                                          "C:/data/cartography.gdb/transportation/ilm_polys",
                                          "25000", "", "5 meters", "EXACT_SIMPLIFIED", "", "ALL")
IntersectingLayersMasks の例 2 (スタンドアロン スクリプト)

このスタンドアロン スクリプトは、IntersectingLayersMasks 関数の使用例を示しています。

# Name: IntersectingLayersMasks_standalone_script.py
# Description: Creates masking polygons at a specified
#              shape and size at the intersections of symbolized features. 
 
# Import system modules
import arcpy

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

# Set local variables
masking_layer = "roads.lyrx"
masked_layer = "buildings_poly.lyrx"
outpuf_fc = "cartography.gdb/transportation/ilm_polys"
reference_scale = "25000"
spatial_reference = arcpy.Describe(masking_layer).spatialReference
margin = "5 Points"
method = "CONVEX_HULL"
mask_for_non_placed_anno = "ALL_FEATURES"
attributes = "ALL"

# Execute Intersecting Layers Masks
arcpy.IntersectingLayersMasks_cartography(masking_layer,
                                          masked_layer,
                                          output_fc,
                                          reference_scale,
                                          spatial_reference,
                                          margin, method,
                                          mask_for_non_placed_anno,
                                          attributes)

ライセンス情報

  • Basic: No
  • Standard: No
  • Advanced: Yes

関連トピック