在 Advanced 许可等级下可用。
描述
通过合并对于某一指定项具有相同值的相邻面、线或区域创建新 coverage。
插图
使用方法
此工具用于从较复杂的 coverage 创建简化的 coverage。尽管输入 coverage 可能包含有关多种要素属性的信息,但输出 coverage 仅包含有关融合项的信息。
使用此工具合并的面是叠加的相交面的副本。执行“融合”操作将移除边界。
输出 coverage 已不存在。
“融合”操作会保留相同 coverage 中属于不同平面图表的线性数据。这可能包括表示不同高度的公用设施电缆的弧或表示穿过溪流的道路的弧。对于多条弧看似相交(但实际没有)的情况,不会在视觉上的交点处插入结点。系统会保留重合与共线的线段,并且可能会插入其他折点。分别表示河流和沿着河流的道路的两条共线弧将以共线形式保留。
使用 POLY 选项时,“融合”操作将移除悬挂弧和伪结点。使用 POLY 选项的输出 coverage PAT 或者使用 LINE 选项的输出 coverage AAT 将仅包含融合项而不含其他属性。如果使用 #ALL 作为融合项,则输出 coverage 将保留输入 coverage 项定义和数据,但 User-ID 将发生更改。
如果伪结点具有非零非空的属性,则系统不会为面要素连接弧。
路线系统将被复制到输出 coverage。如果指定 NET 选项,则将移除附加到任何已删除弧线的弧段,并且会对 ARCLINK# 重新编号。如果指定 LINE 选项,则合并弧线上的弧段将调整其 F-POS 值和 T-POS 值,以占用与之前相同的一组位置。
此工具会保留所有弧段子类。
使用 POLY 和 NET 选项会保留区域子类。融合面或弧时,区域的形状可能会发生变化。
使用 NET 选项时,“融合”操作不会移除悬挂弧或伪结点。输出 coverage AAT 将具有与输入 coverage 相同的项,仅会移除融合弧的记录。
使用 NET 选项时,如果一条弧与另一条弧逐项比较所有项目值完全相同,则系统会连接这两条弧。
融合弧所对应的任何结点的 NAT 都将保留不变。
使用 POLY 选项的“融合”操作输出的面将同时包含拓扑和属性。PAT 中的项为 AREA、PERIMETER、COVER#、COVER-ID 和融合项。
如果所有面属性均使用相同的值编码,则使用 POLY 配合 #ALL 选项的“融合”会产生一个空集。如果要保留边界或外部面,请确保使用不同于集合其他部分的值来编码外多边形。
融合项可能是重新定义的项。如果使用重新定义的项,则其起始列必须是常规项的起始列,而其结束列也必须是常规项的结束列。重新定义的项可能跨越多个常规项。对于常规项或重新定义的项,完全包含在其范围内的所有重新定义项都会被传递到输出要素属性表中。
使用 LINE 选项的“融合”输出的线将包含属性。AAT 中的项为 FNODE#、TNODE#、LPOLY#、RPOLY#、LENGTH、COVER#、COVER-ID 和融合项。使用 LINE 选项时,将保留重新定义的项。方程项可以使用融合,会生成一个名为“EQUATION”的项。
使用 REGION.subclass 的“融合”输出的区域将包含拓扑和属性。区域 PAT 中的项为 AREA、PERIMETER、SUBCLASS#、SUBCLASS-ID 和融合项。如果在输入 coverage 中存在面和弧属性,则在输出 coverage 中这些属性将保留不变。
输出 coverage 的坐标精度由当前的处理环境设置决定。派生 coverage 的默认精度设置为“最高”,因此“融合”将创建一个与输入 coverage 具有相同精度的输出 coverage。
投影文件 (PRJ) 会被复制到输出 Coverage。
在 coverage 中“融合”操作可处理的与一个结点相连的最大的弧数为 100。
“融合”会为融合项消除包含相等值的相邻线或面之间的结点或弧。
使用 POLY 或 NET 选项时,如果合并的面包含标注点,则在输出 coverage 中将保留其中某一点。如果指定 POLY 选项,系统将移除任何长度的悬挂弧,同时,除非伪结点是面中的唯一结点(如一座岛或一个圆环),否则也将被移除。
使用 LINE 选项时,“融合”会为融合项消除包含相等值的相邻弧之间的结点。合并弧的新 cover-ID 会是组合弧中最小的 cover-ID。如果生成的弧达到了每条弧 500 个折点的大小限制,则会添加一个伪结点并产生一条新弧线。
使用 NET 选项时,系统将按单位连接弧,并且在连接两条弧之前会将折点的总数与限制值 500 个折点进行比较。如果大于 500,则不能完成连接。
语法
arcpy.arc.Dissolve(in_cover, out_cover, dissolve_item, {feature_type})
参数 | 说明 | 数据类型 |
in_cover | 包含要进行融合的要素的 coverage。 | Coverage |
out_cover | 要创建的 coverage。输出 coverage 已不存在。 | Coverage |
dissolve_item | in_cover 要素属性表中用于融合要素的项目。
| String |
feature_type (可选) | 要在输出 coverage 中保留的要素类:
| String |
代码示例
融合示例(独立脚本)
以下独立脚本演示了如何将面融合为更大的面。
# Name: Dissolve_Example.py
# Description: Dissolves polygons into larger sections
# Requirements: ArcInfo Workstation
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inCover = "tra_airport"
outCover = "C:/output/airport_sect"
dissolveItem = "section"
featureType = "POLY"
# Execute Dissolve
arcpy.Dissolve_arc(inCover, outCover, dissolveItem, featureType)
环境
许可信息
- Basic: 否
- Standard: 否
- Advanced: 需要 已安装 ArcInfo Workstation