【干货】ArcGIS中消除矢量多边形的重叠区

【干货】ArcGIS中消除矢量多边形的重叠区

GIS数据在生产过程中需要进行拓扑检查,比如悬挂节点、重叠或者缝隙多边形,造成拓扑错误的原因除了数据生产人员的常规编辑错误外,还有一种特殊情况就是编辑过程中一不小心移动几何图形,导致整个要素类中出现大量的多边形重叠,使用常规的拓扑工具工作量大而且容易漏掉,甚至会导致其他误操作。本篇文章将为大家讲解如何用ArcGIS工具消除重叠多边形,非重叠区保留要素原有的属性数据,重叠区属性随机到临近多边形。以下图为例进行操作:

在这里插入图片描述

图1 示例数据:因编辑误操作导致多边形重叠


一、去除重叠

首先将shapfile文件转换为coverage格式,重叠区会自动消除并作为单独要素存在,工具:Conversion Tools->To Coverage->Feature Class To Coverage,如下图
在这里插入图片描述

图2 Feature Class To Coverage工具

在这里插入图片描述

图3 重叠区已经编程单独要素

二、空间连接

上述转换过程中会导致属性丢失(图3显示的是底图属性),为了保留属性信息,还需要使用空间连接工具:Analysis Tools->Overlay->Spatial Join,空间关系选择WITHIN,映射字段选择我们要保留的属性(这里只保留NAME),具体参数如下图:
在这里插入图片描述

图4 Spatial Join 工具

三、重叠区属性处理

按照上述操作使用空间连接工具能够保证非重叠区与原几何图形的属性一致,但重叠区的属性可能是空值,首先使用dissolve工具将相同属性要素合并(可选操作),然后使用Eliminate工具把空要素合与临近要素合并(需要选中空要素),如下图:
在这里插入图片描述

图5 dissolve工具

在这里插入图片描述

图6 融合后还存在部分属性为空值的要素

在这里插入图片描述

图7 选中属性为空值的要素

在这里插入图片描述

图8 Eliminate 工具

在这里插入图片描述

图9 最终结果

四、总结

本篇文章提供的方法能够保证非重叠区的属性不变,但重叠区的属性是随机的(随机到临近要素),因此,如果重叠区较小,该方法比较实用,如果重叠区过大,则需要重新编辑数据。以上方法可以使用pyhon编写批处理脚本,如果您对相关技术细节感兴趣,请关注以下公众号以及东北亚资源环境大数据中心(http://www.igadc.cn/),可获取更多技术资料和数据资源。
在这里插入图片描述