交集取反 (分析)

在 Advanced 许可等级下可用。

摘要

用于计算输入要素和更新要素的几何交集并返回未重叠的输入要素和更新要素。 输入要素和更新要素中不叠置的要素或要素的各部分将被写入到输出要素类。

插图

交集取反工具图示

使用情况

  • 输入和更新要素类或要素图层必须具有相同的几何类型。

  • 此工具支持并行处理因子环境。 如果环境未设置(默认值)或者设置为 0,则将禁用并行处理。 如将环境设置为 100,则将启用并行处理。 启用并行处理时,最多将使用 10 个内核。

  • 输入要素类的属性值将被复制到输出要素类。但是,如果输入是一个或多个通过创建要素图层工具创建的图层并且选中了字段的使用比率策略设置项,那么计算输出属性值时将按输入属性值的一定比例进行计算。如果启用了使用比率策略选项,执行叠加操作时,对于任一要素的分割都将按照输入要素属性值的一定比率来生成输出要素的属性值。输出值将根据输入要素几何被分割的比率得出。例如,如果输入几何被分割成相等的两部分,则每个新要素的属性值都等于输入要素属性值的一半。使用比率策略仅适用于数值字段类型。

    警告:

    地理处理工具不支持地理数据库要素类或表字段分割策略

  • 此工具通过切片的方式处理庞大的数据集以便提高性能和可扩展性。有关详细信息,请参阅对大型数据集进行地理处理

  • 即使所有输入要素均属于单部件要素,此工具仍能在输出中生成多部件要素。如果不希望生成多部件要素,请对输出要素类使用多部件至单部件工具。

参数

标注说明数据类型
输入要素

输入要素类或图层。

Feature Layer
更新要素

更新要素类或图层。 其几何类型必须与输入要素类或图层的几何类型相同。

Feature Layer
输出要素类

将要写入结果的要素类。

Feature Class
要连接的属性
(可选)

指定要传递到输出要素类的属性。

  • 所有属性输入要素的所有属性都将传递到输出要素类。 这是默认设置。
  • 除要素 ID 外的所有属性除 FID 外,将输入要素的其余所有属性都传递到输出要素类。
  • 仅要素 ID仅输入要素的 FID 字段将传递到输出要素类。
String
XY 容差
(可选)

所有要素坐标(节点和折点)之间的最小距离以及坐标可以沿 x 和/或 y 方向移动的距离。

警告:

更改此参数的值可能会导致出现故障或意外结果。建议不要修改此参数。已将其从工具对话框的视图中移除。默认情况下,将使用输入要素类的空间参考 x,y 容差属性。

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 方向移动的距离。

警告:

更改此参数的值可能会导致出现故障或意外结果。建议不要修改此参数。已将其从工具对话框的视图中移除。默认情况下,将使用输入要素类的空间参考 x,y 容差属性。

Linear Unit

代码示例

SymDiff 示例(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 SymDiff 函数。

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.SymDiff_analysis("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
 
# Execute SymDiff
arcpy.SymDiff_analysis(inFeatures, updateFeatures, outFeatureClass, "ALL",
                       clusterTolerance)

许可信息

  • Basic: 否
  • Standard: 否
  • Advanced: 是

相关主题