シンメトリカル ディファレンス (Symmetrical Difference) (解析)

Advanced のライセンスで利用可能。

サマリー

入力フィーチャと更新フィーチャの交差部分を求め、重複しない入力フィーチャと更新フィーチャを返します。 入力フィーチャおよび更新フィーチャ内で重なり合わないフィーチャまたはフィーチャ部分が出力フィーチャクラスに書き出されます。

シンメトリカル ディファレンス ツールの図

使用法

  • 入力およびアップデートのフィーチャクラスまたはフィーチャ レイヤーは、同じジオメトリ タイプである必要があります。

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

    注意:

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

  • このツールは非常に大きなデータセットをタイル化し、パフォーマンスとスケーラビリティを向上します。詳細については、「大きなデータセットのジオプロセシング」をご参照ください。

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

パラメーター

ラベル説明データ タイプ
入力フィーチャ

入力フィーチャクラスまたはレイヤー。

Feature Layer
更新フィーチャ

更新フィーチャクラスまたはレイヤー。 ジオメトリ タイプは入力フィーチャクラスまたはレイヤーと同じものである必要があります。

Feature Layer
出力フィーチャクラス

結果が書き込まれるフィーチャクラス。

Feature Class
結合する属性
(オプション)

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

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

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

注意:

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

Linear Unit

arcpy.analysis.SymDiff(in_features, update_features, out_feature_class, {join_attributes}, {cluster_tolerance})
名前説明データ タイプ
in_features

入力フィーチャクラスまたはレイヤー。

Feature Layer
update_features

更新フィーチャクラスまたはレイヤー。 ジオメトリ タイプは入力フィーチャクラスまたはレイヤーと同じものである必要があります。

Feature Layer
out_feature_class

結果が書き込まれるフィーチャクラス。

Feature Class
join_attributes
(オプション)

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

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

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

注意:

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

Linear Unit

コードのサンプル

SymDiff の例 (Python ウィンドウ)

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

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.analysis.SymDiff("climate.shp", "elevlt250.shp", "C:/output/symdiff.shp", 
                       "ALL", 0.001)
SymDiff の例 2 (スタンドアロン スクリプト)

次のスタンドアロン スクリプトで、SymDiff 関数を使用する方法を示します。


# Name: SymDiff_Example2.py
# Description: Create symmetrical difference between input and update features
 
# Import system modules
import arcpy
 
# Set environment settings
arcpy.env.workspace = "C:/data"
 
# Set local variables
inFeatures = "climate.shp"
updateFeatures = "elevlt250.shp"
outFeatureClass = "C:/output/symdiff.shp"
clusterTolerance = 0.001
 
# Run SymDiff
arcpy.analysis.SymDiff(inFeatures, updateFeatures, outFeatureClass, "ALL",
                       clusterTolerance)

環境

特殊なケース

並列処理ファクター

このツールは、並列処理ファクター環境を優先します。 環境が設定されていない場合 (デフォルト) または 0 に設定されている場合、並列処理は無効になります。並列処理は使用されず、処理は順番に実行されます。 環境を 100 に設定すると並列処理が有効になります。並列処理が使用され、処理は並列で実行されます。 並列処理を有効にすると、最大 10 個のコアが使用されます。

ライセンス情報

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

関連トピック