シンメトリカル ディファレンス(Symmetrical Difference) (解析)
サマリ
入力フィーチャにアップデート フィーチャを重ねたとき、互いに重なり合っていないフィーチャまたはフィーチャ部分が出力フィーチャクラスに書き出されます。
図
使用法
-
入力およびアップデートのフィーチャクラスまたはフィーチャ レイヤは、同じジオメトリ タイプである必要があります。
-
入力フィーチャクラスの属性値が出力フィーチャクラスにコピーされます。ただし、[フィーチャ レイヤの作成(Make Feature Layer)] ツールで作成したレイヤを入力として使用し、フィールドの [比率ポリシーの使用] をチェックしている場合は、入力属性値の比率が計算され、出力属性値に適用されます。[比率ポリシーの使用] が有効な場合、オーバーレイ操作でフィーチャが分割されるときは、入力フィーチャの属性値の比率が出力フィーチャの属性に適用されます。入力フィーチャ ジオメトリが分割された比率に基づいて、出力値が決定されます。たとえば、入力ジオメトリが等分割された場合、入力フィーチャの属性値の 2 分の 1 が新しいフィーチャの属性値となります。[比率ポリシーの使用] は数値フィールドにのみ適用されます。
注意:ジオプロセシング ツールは、ジオデータベース フィーチャクラスまたはテーブル フィールドのスプリット ポリシーに従いません。
-
このツールは非常に大きなデータセットをタイル化し、パフォーマンスとスケーラビリティを向上します。詳細については、「大きなデータセットのジオプロセシング」をご参照ください。
-
このツールは、すべての入力がシングルパートの場合でも、出力としてマルチパート フィーチャを作成します。マルチパート フィーチャが望ましくない場合は、出力フィーチャクラスで [マルチパート → シングルパート(Multipart to Singlepart)] ツールを使用します。
構文
パラメータ | 説明 | データ タイプ |
in_features |
入力フィーチャクラスまたはレイヤ。 | Feature Layer |
update_features |
アップデート フィーチャクラスまたはレイヤ。ジオメトリ タイプは入力フィーチャクラスまたはレイヤと同じものである必要があります。 | Feature Layer |
out_feature_class |
結果が書き込まれるフィーチャクラス。 | Feature Class |
join_attributes (オプション) |
どの属性を出力フィーチャクラスへ渡すかを指定します。
| String |
cluster_tolerance (オプション) |
すべてのフィーチャ座標(ノードと頂点)の最短距離、および X 方向、Y 方向、XY 方向に座標を移動できる距離。 | Linear unit |
コードのサンプル
次の Python ウィンドウ スクリプトは、イミディエイト モードでシンメトリカル ディファレンス関数を使用する方法を示しています。
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.SymDiff_analysis("climate.shp", "elevlt250.shp", "C:/output/symdiff.shp", "ALL", 0.001)
次のスタンドアロン スクリプトは、シンメトリカル ディファレンス関数を使用する方法を示しています。
# Name: SymDiff_Example2.py # Description: Create symmetrical difference between input and update features # Author: ESRI # Import system modules import arcpy from arcpy import env # Set environment settings env.workspace = "C:/data" # Set local variables inFeatures = "climate.shp" updateFeatures = "elevlt250.shp" outFeatureClass = "C:/output/symdiff.shp" clusterTolerance = 0.001 # Execute SymDiff arcpy.SymDiff_analysis(inFeatures, updateFeatures, outFeatureClass, "ALL", clusterTolerance)