成对擦除 (分析)

摘要

计算输入和擦除要素的成对交集。 只将输入要素处于擦除要素之外的部分复制到输出要素类。

备用工具可用于擦除操作。 有关详细信息,请参阅擦除工具文档。

插图

成对擦除工具图示

使用情况

  • 擦除要素参数值可以为点、线或面,只要输入要素参数值的要素类型等级与之相同或较低。 面擦除要素可用于擦除输入要素中的面、线或点;线擦除要素可用于擦除输入要素中的线或点;点擦除要素仅用于擦除输入要素中的点。

    输入要素参数值必须为简单要素:点、多点、线或面。 输入不能是诸如注记要素、尺寸要素或网络要素等复杂要素。

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

    警告:

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

  • 输入曲线要素将于输出中进行增密。

  • 要使用此工具,输入要素必须具有空间索引。 使用添加空间索引工具创建索引(专门针对 shapefile)或重新构建现有索引(如果无法确定其是否正确)。

  • 当输入要素具有 m- 值或 z- 值时,则只有第一个要素类的 m- 值和 z- 值将会传递到输出要素。 如果第一个要素类不包含 m- 值或 z- 值,则输出将不含 m 值或 z 值。

  • 输出要素类的空间参考将为输入要素参数中第一个要素类的空间参考。 有关详细信息,请参阅空间参考和地理处理

  • 默认情况下,来自输入的曲线要素将在输出中进行增密。 要支持输出中的曲线,请使用保留曲线段环境。

  • 此工具支持并行处理因子环境。 如果环境未设置(默认情况下)或已设置为 100,则将启用完全并行处理,同时该工具尝试将工作分配给计算机上的所有逻辑内核。 将环境设置为 0 将禁用并行处理。 在 1 到 99 之间指定一个因子时,工具将通过应用公式(并行处理因子 / 100 * 逻辑内核数)确定要使用的逻辑内核的百分比,其结果将向上舍入到最近的整数值。 如果此公式的结果是 0 或 1,则将不启用并行处理。

  • 成对擦除工具与擦除工具的相似之处在于二者均计算几何交集,但其不同之处在于,“成对擦除”工具根据要素对而非所有要素组合来计算交集。 如果输入或擦除要素类包含大量密集打包的要素,此工具非常有效。

参数

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

输入要素类或图层。

Feature Layer
擦除要素

将用于擦除重叠输入要素的要素。

Feature Layer
输出要素类

输出要素类。

Feature Class
XY 容差
(可选)

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

警告:

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

Linear Unit

arcpy.analysis.PairwiseErase(in_features, erase_features, out_feature_class, {cluster_tolerance})
名称说明数据类型
in_features

输入要素类或图层。

Feature Layer
erase_features

将用于擦除重叠输入要素的要素。

Feature Layer
out_feature_class

输出要素类。

Feature Class
cluster_tolerance
(可选)

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

警告:

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

Linear Unit

代码示例

PairwiseErase 示例 1(Python 窗口)

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

import arcpy
arcpy.env.workspace = 'C:/data/gdb'
arcpy.analysis.PairwiseErase(r'redlands.gdb\rdlswells\well', 
                             r'redlands.gdb\rdlsfloodzones\flood', 
                             r'redlands.gdb\wellsoutside_flood')
PairwiseErase 示例 2(独立脚本)

查找尚未受主要道路严重影响的相应植被区域。

# Name: PairwiseErase.py
# Description: Find areas of suitable vegetation that exclude areas heavily 
#              impacted by major roads.

# Import system modules 
import arcpy

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

# Select suitable vegetation patches from all vegetation
veg = "vegtype"
suitableVeg = "C:/output/Output.gdb/suitable_vegetation"
whereClause = "HABITAT = 1" 
arcpy.analysis.Select(veg, suitableVeg, whereClause)

# Buffer areas of impact around major roads
roads = "majorrds"
roadsBuffer = "C:/output/Output.gdb/buffer_output"
distanceField = "Distance"
dissolveField = "Distance"
arcpy.analysis.Buffer(roads, roadsBuffer, distanceField, "FULL", "ROUND", 
                      "LIST", dissolveField)

# Erase areas of impact around major roads from the suitable vegetation patches
eraseOutput = "C:/output/Output.gdb/suitable_vegetation_minus_roads"
arcpy.analysis.PairwiseErase(suitableVeg, roadsBuffer, eraseOutput)

许可信息

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

相关主题