需求

图形存在大量重叠问题,需要对重叠做合并处理,有特定的对比规则(即判断应合并到哪个要素),人工处理耗时长,对因合并要素产生的图形变化而造成的误差不敏感。

思路

  1. 将重叠批量生成要素;
  2. 按照图形属性 or 几何特征判断各个重叠归属于相邻要素(可能是多个)中的哪一个;
  3. 将重叠要素合并到指定的要素中;
  4. 删除重叠要素。

实现

基于arcpy完成以上功能开发,主要运用到了按照空间关系搜索(SelectLayerByLocation_management)、按照属性搜索(SelectLayerByAttribute_management)、联合(Union)等功能。

  1. 选出属性为空的要素,说明为重叠要素;
  2. 选出与重叠相邻的要素(共享线段SHARE_A_LINE_SEGMENT_WITH 但是不完全一致ARE_IDENTICAL_TO,此外该要素也不能是重叠要素,注意不能是touch,因为可能仅仅只是touch于一个点),说明为产生该重叠的两个要素;
  3. 判断这两个要素合并优先次序;
  4. 重叠要素Union到合并次序高的要素,然后通过对Shape@属性赋值实现保存结果。

查看全文【Arcpy】批量合并重叠拓扑

【Arcpy】批量合并重叠拓扑相关推荐

  1. ArcPy批量合并矢量shape文件

    当有大量矢量(.shp)格式文件需要合并成一个矢量文件时,可以考虑使用 ArcPy 进行批量合并,代码如下: # coding:utf-8 import os import arcpy from ar ...

  2. arcpy脚本工具开发:批量合并文件地理数据库(gdb)

    文章目录 前言 一.ArcPy是什么? 二.GDB批量合并工具开发思路 三.GDB批量合并工具代码 四.GDB批量合并工具截图 总结 前言 有多个文件地理数据库(即.gdb格式的数据库),数据库内有多 ...

  3. mdb批量导入mysql,批量合并mdb文件

    环境 Arcgis 10.1 python 2.7 问题 在制图过程中,一个图幅的地图数据存放在一个mdb数据库中,当每个图幅都处理完了,需要多个图幅的数据存放到一个数据库中,如何写一个批处理程序自动 ...

  4. 2021版1:100万基础地理信息数据更新数据(整理GDB批量合并)

    01  前言 之前我们在<ArcGIS 10.X 入门实战视频教程>介绍GIS常用数据下载的时候就介绍了怎么在全国地理信息目录系统下载地表覆盖.1:100万.1:25万地理信息数据. Ar ...

  5. Python实现批量合并多张图片的方法(附源码)

    前言 如何通过Python快速实现批量将多张图片进行合并(重叠)处理呢,例如如下文件夹中,有两个图层文件夹,分别为: termap:天地图底图瓦片 overlay_t:天地图标注瓦片 我们是目标是将t ...

  6. 列名无效怎么解决_PowerQuery批量合并Excel,前面有空行且不相等的解决办法

    关于PowerQuery批量汇总多个Excel工作簿,该功能非常经典实用,操作起来也很简单,之前已经有几篇文章介绍过该功能以及可能遇到的各种问题, 使用Power Query是一种什么体验? 批量合并 ...

  7. excel 按数据拆分 xlam_利用EXCEL提升效率之五分钟缩短至五秒批量合并EXCEL批量转换PDF批量上传报关单随附单据___EXCELVBA...

    进出口报关中,需要对各种发票,装箱,合同等进行重复的操作: 打印---盖章---扫描---重命名等操作. 之后将上述文件上传至单一窗口的报关单随附单据, 报关行通常需要安排一人专门进行上述操作, 每套 ...

  8. python调用gitlab api自动合并分支_Python3使用 GitLab API 进行批量合并分支

    文章前言 每周五上午十二点前需要将项目上各组开发分支合并软集仓库分支, 需要在十个项目上进行 merge 程序员一般都是 很讨厌麻烦, 所以编写此脚本进行 批量 merge, 统一进行合并 另外, 如 ...

  9. vba 当前文件名_VBA实践+批量合并pdf

    VBA实践+批量合并pdf 声明:文章仅供参考,尝试,请注意备份文件. 作用:把文件夹下若干个小文档合并成一个大文档. 以下代码创建一个空白pdf文档,然后依次把文件夹下的所有小pdf文档插入到该文档 ...

最新文章

  1. Python TypeError: ‘int‘ object is not iterable
  2. 飞书×品玩邀请多位行业大咖,共谈跨境企业“战疫”秘籍!
  3. TaintDroid介绍
  4. Class.forName( )你搞懂了吗?——转
  5. Nature子刊 | 研究人员提出神经脆性可作为癫痫发作区(SOZ)的脑电图(EEG)标志物
  6. Normal Bayes 分类器过程详解
  7. Django使用Mysql时数据库配置
  8. JEPaas代码_((列表)输入字段值而改变值
  9. qt 设置串口起始位_【IT专家】Qt:如何设置主窗口的初始位置?
  10. NOIP2018-普及总结
  11. Mysql触发器与动态完整性
  12. 发一个自己原创的迷你博客的PHP源程序(支持QQ、MSN和飞信机器人和短息接口)
  13. java生成eml_用Java创建一个.eml(email)文件
  14. elasticsearch的父子_ElasticSearch 学习记录之父子结构的查询
  15. mysql生成类似qq号_【mysql】类似QQ的好友关系表是怎么设计的?
  16. 二维vector的输入
  17. 数据标注的作用及行业现状
  18. cairo-dock天气位置代码
  19. python程序设计丁亚涛版_Python程序设计
  20. 小程序两行金刚区以及进度条平滑滚动的实现

热门文章

  1. ssd内部是多个flash一起操作_固态硬盘容易坏吗 SSD固态硬盘坏掉前有什么征兆【详细介绍】...
  2. Android Rotating Image Wallpaper 自动切换壁纸
  3. 清爽的VS开发字体 -- Consolas
  4. 大盘为何回血以及盐湖股份和科达制造
  5. 深度!全球机器人产业趋势及特征分析
  6. 一份完整的报价单内容
  7. 2006-10-30 18:37:00 著名Linux内核程序员大鹰 ox啊
  8. SourceTree 对比工具配置
  9. 华为鸿蒙OS正式发布!教你如何升级
  10. linux下安装MySQL5.7及遇到的问题总结