擦除 (分析)
摘要
通过将擦除要素的多边形与输入要素相叠加来创建要素类。只将输入要素处于擦除要素外部边界之外的部分复制到输出要素类。
插图
用法
-
将与擦除要素几何重叠的输入要素几何移除。
-
擦除要素可以为点、线或面,只要输入要素的要素类型等级与之相同或较低。面擦除要素可用于擦除输入要素中的面、线或点;线擦除要素可用于擦除输入要素中的线或点;点擦除要素仅用于擦除输入要素中的点。
-
输入要素类的属性值将被复制到输出要素类。但是,如果输入图层是通过创建要素图层工具创建的并且选中了字段的“使用比率策略”选项,则将计算输出属性值与输入属性值的比率。如果启用了“使用比率策略”选项,分割叠加操作中的要素时,将按输入要素属性值的一定比例生成要素的属性值。输出值将根据输入要素几何被分割的比率得出。例如,如果输入几何被分割成相等的两部分,则每个新要素的属性值都等于输入要素属性值的一半。“使用比率策略”仅适用于数值字段类型。
警告:地理处理工具不支持地理数据库要素类或表字段分割策略。
-
此工具通过切片的方式处理庞大的数据集以便提高性能和可扩展性。有关详细信息,请参阅对大型数据集进行地理处理。
-
即使所有输入要素均属于单部分要素,此工具仍能在输出中生成多部分 (multipart) 要素。如果不希望生成多部分要素,可对输出要素类使用多部分 (Multipart) 至单部分 (Singlepart) 工具。
语法
Erase_analysis (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 方向移动的距离。 | Linear unit |
代码示例
Erase 示例(Python 窗口)
以下 Python 窗口脚本演示了如何在立即模式下使用“擦除”功能。
import arcpy from arcpy import env env.workspace = "C:/data/data/gdb" arcpy.Erase_analysis(r'redlands.gdb\rdlswells\well',r'redlands.gdb\rdlsfloodzones\flood',r'redlands.gdb\wellsoutside_flood','#')
Erase 示例(独立脚本)
查找尚未被主要道路充斥的适合植被区域。
# Name: Erase.py # Description: Find areas of suitable vegetation which exclude areas heavily impacted by major roads # Author: ESRI # import system modules import arcpy from arcpy import env # Set environment settings 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.Select_analysis(veg, suitableVeg, whereClause) # Buffer areas of impact around major roads roads = "majorrds" roadsBuffer = "C:/output/Output.gdb/buffer_output" distanceField = "Distance" dissolveField = "Distance" arcpy.Buffer_analysis(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" xyTol = "1 Meters" arcpy.Erase_analysis(suitableVeg, roadsBuffer, eraseOutput, xyTol)
环境
相关主题
许可信息
ArcView: 否
ArcEditor: 否
ArcInfo: 是
7/10/2012