描述
通过将擦除 Coverage 的面与输入 Coverage 的要素进行叠加来创建新的输出 Coverage。仅将输入 Coverage 处于擦除多边形外部边界之外的那些部分复制到输出 Coverage。
插图
使用方法
输出 coverage 已不存在。
如果注记的左下起点位于擦除多边形内部,则擦除该注记。
新结点的属性将设置为零。
移除与擦除 coverage 多边形重叠的输入 coverage 多边形。
擦除 coverage 必须具有面拓扑。
输出 coverage 中所有要素的 User-ID 与输入 coverage 中所有要素的用户 ID 相同。
如果选择了 POLY 和 NET 选项,面拓扑将在输出 coverage 中重新构建。输入面标注点将尽量保留在输出中。如果各旧面均位于擦除 coverage 多边形之外,则它们将保持其初始的标注点位置不变。
使用“擦除”功能时,不会使用擦除 coverage 中内部面的边界。内部编号大于一的任何擦除 coverage 面均将视为位于擦除窗口内部;如果面的内部编号为一,则将视为位于窗口外部。只有位于擦除区域以外的那些输入要素(或输入要素的部分)会存储在输出 coverage 中。
擦除 coverage 的外部边界可定义要移除的输入 coverage 要素的区域。内部编号大于一的任何擦除 coverage 面均将视为位于擦除窗口内部;如果面的内部编号为一,则将视为位于窗口外部。
如果擦除 coverage 多边形碰巧完全落在输入面内部,则没有面需要擦除。此时,将在输出 coverage 中另外插入一个由擦除 coverage 的面轮廓定义的面,并为标注点指定 User-ID = 0。这适用于 POLY 选项。如果使用的是 LINE 选项,则不会添加任何额外的面。输出 coverage 与输入 coverage 将保持相同。
对于 LINE、NET、LINK 和 RAW 选项,路线系统将重建,但对于 POLY 选项,将随之忽略路线系统。如果弧分成多个部分,则路线系统将进行相应复制;如果弧已消除,则移除路线系统。“擦除”功能将保留所有路线系统子类。
使用 POLY 选项时,输入 coverage 的区域子类会被保留。根据擦除 coverage 的范围从输出 coverage 中擦除掉输入 coverage 中的区域。
不会保留擦除 coverage 中的区域子类。
如果擦除之前存在结点属性表 (NAT),则擦除之后将保留未被擦除的结点的属性表。新结点的属性将设置为零。
输出 coverage 的控制点将从输入 coverage 中复制。
投影文件 (PRJ) 会被复制到输出 coverage。
输出 Coverage 的坐标精度由派生 Coverage 的精度环境设置所设置的当前处理规则确定。如果未建立处理规则,输出 coverage 的精度将与输入 coverage 相同。
如果输入 coverage 包含不同平面图表中的线性数据,则这些数据将保留在输出 coverage 中。例如,如果存在重合或共线的弧(表示不同高度的公用设施电缆的弧或表示沿着溪流的道路的弧等),那么重合与共线的线段将被保留。但是,可能会插入其他折点。对于诸如穿过溪流的道路之类的相交弧,将不会在视觉上的交点处插入结点。
语法
arcpy.arc.Erase(in_cover, erase_cover, out_cover, {feature_type}, {fuzzy_tolerance})
参数 | 说明 | 数据类型 |
in_cover | 包含要擦除的要素的 coverage。 | Coverage |
erase_cover | 使用自身的外部面对擦除区域进行定义的 coverage。 | Coverage |
out_cover | 要创建的 coverage。 | Coverage |
feature_type (可选) | 要擦除的要素集:
| String |
fuzzy_tolerance (可选) | 输出 coverage 中坐标之间的最小距离。默认情况下,使用输入 coverage 和擦除 coverage 的最小模糊容差值。 | Double |
代码示例
Erase 示例(独立脚本)
以下独立脚本演示了如何从 coverage 中擦除区域。
# Name: Erase_Example.py
# Description: Creates an empty area inside a polygon coverage.
# Requirements: ArcInfo Workstation
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inCover = "tongass1"
eraseCover = "tong_azone"
outCover = "C:/output/tong_nozone"
featureType = "POLY"
# Execute Erase
arcpy.Erase_arc(inCover, eraseCover, outCover, featureType, "")
环境
许可信息
- Basic: 否
- Standard: 否
- Advanced: 需要 已安装 ArcInfo Workstation