ユニオン (Union) (解析)

概要

入力フィーチャの幾何学的ユニオンを求めます。すべてのフィーチャとその属性が出力フィーチャクラスに書き込まれます。

[ユニオン (Union)] ツールの詳細

[ユニオン (Union)] の図

使用法

  • すべての入力フィーチャクラスおよびフィーチャ レイヤーに、ポリゴン ジオメトリが含まれる必要があります。

  • [ギャップを許可] パラメーターは、[結合する属性] パラメーターの [すべての属性] または [フィーチャ ID のみ] 設定と組み合わせて使用できます。これによって、結果として生成されるポリゴンによって完全に囲まれた、生成される領域を特定できるようになります。これらのギャップ フィーチャの FID 属性は、すべて -1 になります。

  • 出力フィーチャクラスには、各入力フィーチャクラスの FID_<name> 属性が含まれています。たとえば、入力フィーチャクラスの 1 つに Soils という名前が付いている場合、出力フィーチャクラスにも FID_Soils 属性ができます。別の入力フィーチャと交差しない入力フィーチャ (または入力フィーチャの一部) の FID_<name> 値は -1 になります。この場合、交差部分が検出されないユニオンの他のフィーチャクラスの属性値は、出力フィーチャに転送されません。

  • 入力フィーチャクラスの属性値が出力フィーチャクラスにコピーされます。ただし、[フィーチャ レイヤーの作成 (Make Feature Layer)] ツールで作成した 1 つ以上のレイヤーを入力として使用し、フィールドの [比率ポリシーの使用] をオンにしている場合は、入力属性値の比率が計算され、出力属性値に適用されます。[比率ポリシーの使用] が有効な場合、オーバーレイ操作でフィーチャが分割されると、入力フィーチャの属性値の比率が出力フィーチャの属性に適用されます。入力フィーチャ ジオメトリが分割された比率に基づいて、出力値が決定されます。たとえば、入力ジオメトリが等分割された場合は、入力フィーチャの属性値の 1/2 が、新しい各フィーチャの属性値として割り当てられます。[比率ポリシーの使用] は数値フィールドにのみ適用されます。

    注意:

    ジオプロセシング ツールは、ジオデータベース フィーチャクラスまたはテーブル フィールドのスプリット ポリシーに従いません。

  • このツールは、すべての入力がシングルパートの場合でも、出力としてマルチパート フィーチャを作成します。マルチパート フィーチャが望ましくない場合は、出力フィーチャクラスで [マルチパート → シングルパート (Multipart to Singlepart)] ツールを使用します。

  • ライセンス:

    ArcGIS Desktop Basic および Desktop Standard ライセンスの場合、入力フィーチャクラスまたはレイヤーの数が 2 つに制限されます。

  • このツールは、並列処理ファクター環境を優先します。環境が設定されていない場合 (デフォルト) または 0 に設定されている場合、並列処理は無効になります。この環境を 100 に設定すると、並列処理が有効化されます。

構文

arcpy.analysis.Union(in_features, out_feature_class, {join_attributes}, {cluster_tolerance}, {gaps})
パラメーター説明データ タイプ
in_features
[[in_features, {Rank}],...]

入力フィーチャクラスまたはレイヤーのリスト フィーチャ間の距離がクラスター許容値より小さい場合、低ランクのフィーチャが高ランクのフィーチャにスナップします。最高ランクは 1 です。入力フィーチャのすべてがポリゴンである必要があります。

Value Table
out_feature_class

結果を含めるフィーチャクラス

Feature Class
join_attributes
(オプション)

入力フィーチャのどの属性を出力フィーチャクラスへ渡すかを指定します。

  • ALL入力フィーチャのすべての属性を出力フィーチャクラスへ渡します。これがデフォルトです。
  • NO_FID入力フィーチャの FID を除いたすべての属性を出力フィーチャクラスへ渡します。
  • ONLY_FID入力フィーチャの FID フィールドのみを出力フィーチャクラスへ渡します。
String
cluster_tolerance
(オプション)

すべてのフィーチャ座標 (ノードと頂点) の最短距離、および X 方向、Y 方向、XY 方向に座標を移動できる距離。

注意:

このパラメーターの値を変更すると、失敗または予期しない結果が発生する可能性があります。このパラメーターを変更しないことをお勧めします。ツール ダイアログのビューからは削除されています。デフォルトでは、入力フィーチャクラスの空間参照の [XY許容値] プロパティが使用されます。

Linear Unit
gaps
(オプション)

ギャップは、他のポリゴンで完全に囲まれた出力フィーチャクラスの領域です。この状態は無効ではありませんが、できればギャップを検出して、解析してください。出力内のギャップを検出するには、このオプションを NO_GAPS に設定します。ギャップ領域にフィーチャが作成されます。これらのフィーチャを選択するには、値が -1 であるすべての入力フィーチャ FID を条件とし、出力フィーチャクラスに対してクエリを実行します。

  • GAPSポリゴンで完全に囲まれた出力の領域に、フィーチャが作成されません。これがデフォルトです。
  • NO_GAPSポリゴンで完全に囲まれた出力の領域に、フィーチャが作成されます。このフィーチャの属性は空になり、FID 値は -1 になります。
Boolean

コードのサンプル

Union (ユニオン) の例 (Python ウィンドウ)

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

import arcpy
arcpy.env.workspace = "C:/data/data/gdb"
arcpy.Union_analysis(["well_buff50", "stream_buff200", "waterbody_buff500"], 
                     "water_buffers", "NO_FID", 0.0003)
arcpy.Union_analysis([["counties", 2], ["parcels", 1], ["state", 2]], 
                     "state_landinfo")
Union (ユニオン) の例 2 (スタンドアロン スクリプト)

次のスタンドアロン スクリプトは、Union (ユニオン) 関数をスクリプティングに適用する 2 つの方法を示しています。

# unions.py
# Purpose: union 3 feature classes
# Import the system modules
import arcpy
# Set the current workspace (to avoid having to specify the full path to the 
# feature classes each time)
arcpy.env.workspace = "c:/data/data.gdb"
 
# Union 3 feature classes but only carry the FID attributes to the output
inFeatures = ["well_buff50", "stream_buff200", "waterbody_buff500"]
outFeatures = "water_buffers"
arcpy.Union_analysis(inFeatures, outFeatures, "ONLY_FID")
# Union 3 other feature classes, but specify some ranks for each 
# since parcels has better spatial accuracy
inFeatures = [["counties", 2], ["parcels", 1], ["state", 2]]
outFeatures = "state_landinfo" 
arcpy.Union_analysis(inFeatures, outFeatures)

ライセンス情報

  • Basic: 制限付き
  • Standard: 制限付き
  • Advanced: はい

関連トピック