需求
图形存在大量重叠问题,需要对重叠做合并处理,有特定的对比规则(即判断应合并到哪个要素),人工处理耗时长,对因合并要素产生的图形变化而造成的误差不敏感。
思路
- 将重叠批量生成要素;
- 按照图形属性 or 几何特征判断各个重叠归属于相邻要素(可能是多个)中的哪一个;
- 将重叠要素合并到指定的要素中;
- 删除重叠要素。
实现
基于arcpy完成以上功能开发,主要运用到了按照空间关系搜索(SelectLayerByLocation_management
)、按照属性搜索(SelectLayerByAttribute_management
)、联合(Union
)等功能。
- 选出属性为空的要素,说明为重叠要素;
- 选出与重叠相邻的要素(共享线段
SHARE_A_LINE_SEGMENT_WITH
但是不完全一致ARE_IDENTICAL_TO
,此外该要素也不能是重叠要素,注意不能是touch
,因为可能仅仅只是touch
于一个点),说明为产生该重叠的两个要素; - 判断这两个要素合并优先次序;
- 重叠要素
Union
到合并次序高的要素,然后通过对Shape@
属性赋值实现保存结果。
查看全文【Arcpy】批量合并重叠拓扑