【ArcGIS超级工具】基于ArcPy的矢量数据批量自动化入库工具

        最近,有很多做规划的朋友私信我,想让我帮忙开发一款ArcGIS自动化脚本工具,实现点、线、面的自动化入库操作,帮他们在平时的内业数据处理工作中减少机械式重复性的工作,提高工作效率。为此,我详细了解了下目前绝大多数内业处理工作人员的矢量数据入库业务流程:

        首先,收集汇总上报的矢量数据(点、线、面),然后根据已建立的规范化标准数据库(空数据库,只有标准化字段),将这些收集上来的矢量数据的几何图形和属性信息导入到标准数据库中,当然这个标准数据库也是一个矢量图层。当然,在入库的时候,入库的矢量数据与标准数据库的几何类型是相同的,比如点层只能导入到点层数据库中,面层数据导入到对应的面层数据库中。比如下图是一个空的面层标准数据库,名为JTTDSYQ:

  而我们现在有两个收集上来的矢量面层数据ZD1和ZD2,见下图

ZD1的内部属性表结构见下图:

ZD2的内部属性表结构见下图:

        而我们现在要做的工作是把ZD1和ZD2图层中的图斑导入到JTTDSYQ中,此外还要将对应字段的属性信息也导入到其中。但是这里要注意,通过观察,发现需要入库的两个图层的属性表结构跟标准数据库JTTDSYQ的属性表结构是不完全一致的,这意味着它们中的有些字段无法进行正确的映射,通过观察,发现虽然ZD1和ZD2两者的属性表字段完全一致,但是它们与JTTDSYQ图层中的字段只有“BSM”、“YSDM”和“QXDM”是一一对应的。

        如果用常规的入库操作,我们的操作步骤是先让图层JTTDSYQ处于编辑状态,然后分别复制ZD1和ZD2的属性表,再将选择的要素连同及属性信息粘贴到JTTDSYQ中,这样就完成了基本的入库操作。具体操作步骤见下图:

步骤1:JTTDSYQ处于编辑状态下

步骤2:打开ZD1的属性表,并选择其中所有的要素

步骤3:连续点击工具栏上的“复制”按钮2次

 步骤4:点击工具栏上的“粘贴”,会弹出选择目标图层的弹窗,然后选择粘贴的目标图层

步骤5:点击OK后,即可完成对ZD1选择的要素粘贴到目标图层JTTDSYQ的入库操作

        细心的你可能会发现,虽然我们已经将ZD1的几何图形和字段内容都复制到了标准数据库图层中(所谓的入库操作),但是ZD1中只有“BSM”、“YSDM”和“QXDM”三个字段的内容复制入库,其他字段对应的内容均为0或空值~很明显,之所以会出现这种情况,是因为ZD1中仅有这三个字段与标准数据库中的其中三个字段名称完全一致,根据ArcGIS内部的逻辑,只有字段名称完全相同的内容才能被复制。

        当然,假设ZD1和ZD2中的所有字段名称都与标准数据库图层中的字段名称一致的话,所有字段内容当然会完全被复制进去,不会出现入库后某些字段内容为空值的情况。然而,由于上报的矢量数据没有统一标准,内业人员在对矢量数据进行处理时很多字段没有按照标准数据库中的字段来进行规范化命名。这就可能导致大部分字段匹配不上,仅能完成少量字段的入库操作,对于其他未能匹配的字段,后续只能通过挂接属性表或Excel表的方式来完成匹配。如果需要入库的图层非常多,并且每个图层中都有很多字段需要二次挂接来匹配入库,我们的工作效率就会变的非常低,内业人员大部分时间都在做一些机械化重复性的工作。

        为了极大提高入库工作的效率,减少重复性机械化的操作,ArcGIS超级工具-矢量数据批量自动化入库工具经过不断优化和改进,受到很多内业处理人员的欢迎,极大帮他们提高了工作效率,可谓好评如潮~关于这款工具的工作原理和使用效果,大家可以仔细看下面的视频,工具可以适用于ArcGIS10.0-10.8之间的任意版本,工具的获取在视频中有详细的介绍~

【GIS人必用】地表最强矢量数据快速自动化批量入库GIS工具来啦!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/724679.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

这本书太好了!150页就能让你上手大模型应用开发

如果问个问题:有哪些产品曾经创造了伟大的奇迹?ChatGPT 应该会当之无愧入选。仅仅发布 5 天,ChatGPT 就吸引了 100 万用户——当然,数据不是关键,关键是其背后的技术开启了新的 AI 狂潮,成为技术变革的点火…

数据结构与算法学习【算法思想之二分法基础】

文章目录 数据结构与算法学习【算法思想之二分查找基础】本文学习目标或巩固的知识点 最基础的二分查找🟢通过题目可知题解结果验证 数据结构与算法学习【算法思想之二分查找基础】 本文学习目标或巩固的知识点 学习二分法类题目 巩固基础的二分法 提前说明&#…

Jmeter之Ramp-up Period(in seconds)

1、Ramp-up Period概念 (in seconds)–并发用户启动周期,告知JMeter 要在多长时间内启动全部Vuser用户。 2、为什么需要有“ramp-up period”,立即启动所有的并发用户数不是更好? 对于绝大多数的网址或应用&#xf…

【数据结构】堆的TopK问题

大家好,我是苏貝,本篇博客带大家了解堆的TopK问题,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️ 目录 一. 前言二. TopK三. 代码 一. 前言 TOP-K问题:即求数据结合中前K个最大的元…

【Docker】技术架构演变

【Docker】技术架构演变 目录 【Docker】技术架构演变架构中的概念架构演进单机架构相关软件 应用数据分离架构应用服务集群架构相关软件 读写分离/主从分离架构相关软件 引入缓存——冷热分离架构相关软件 垂直分库(分布式数据库架构)相关软件 业务拆分…

Day14:单元测试、Junit单元测试框架、反射、注解

单元测试 针对最小的功能单元(方法)进行正确性测试编写正规的单元测试框架传统的无法执行自动化测试,且无法得到测试报告 Junit单元测试框架 Junit的作用: 具体步骤 测试类取名:原类名Test(大驼峰&#…

蓝桥杯备战刷题four(自用)

1.砝码称重 #include <iostream> #include <vector> using namespace std; const int N110; const int M100010; int w[N]; int n; int f[N][M]; int m; int ans; //f[i][j]表示到第i个砝码进行放置时的称得的重量为j的方案数 int main() {cin>>n;for(int i1…

DbSchema导出HTML/PDF版表结构

一、连接数据库 登录成功默认显示当前用户的所有资源&#xff08;表、视图、序列、方法、触发器等&#xff09;&#xff0c;如果不操作将导出此用户的全部信息。 至此连接数据库完成 二、表结构导出 本次不想给用户全部导出&#xff0c;只给导出几张&#xff0c;选择需要…

分享7款前端动画特效(附效果图及在线演示)

分享7款好玩的前端动画特效 其中有CSS动画、SVG动画、js小游戏等等 下方效果图可能不是特别的生动 那么你可以点击在线预览进行查看相应的动画特效 同时也是可以下载该资源的 canvas彩色画树特效 基于canvas实现的画树特效 同时还可选择树枝的初始数目进行彩色树生成 以下效果…

企业对接Walmart平台API流程 On-request Reports API(二)

对接On-request Reports API 1、对接指南1.1 报告生成时间1.2 报告保留期1.3 请求限制1.4 报告请求工作流如何申请报告第 1 步&#xff1a;申请取消报告第 2 步&#xff1a;获取报表可用性状态第 3 步&#xff1a;下载报告 URL 2、代码实现2.1、获取访问API的token2.2、构建公共…

【教育部白名单赛事】C语言编程题解析--软件编程邀请赛(决赛)

文章目录 1、保留12位小数的浮点数2、气温统计3.大写字母的判断4、【递归】母鸡的故事5、小白免再排队 1、保留12位小数的浮点数 输入一个双精度浮点数&#xff0c;保留12位小数&#xff0c;输出这个浮点数。 时间限制&#xff1a;1000 内存限制&#xff1a;65536 【输入】 只…

【DPDK】基于dpdk实现用户态UDP网络协议栈

文章目录 一.背景及导言二.协议栈架构设计1. 数据包接收和发送引擎2. 协议解析3. 数据包处理逻辑 三.网络函数编写1.socket2.bind3.recvfrom4.sendto5.close 四.总结 一.背景及导言 在当今数字化的世界中&#xff0c;网络通信的高性能和低延迟对于许多应用至关重要。而用户态网…

【python基础学习10课_面向对象、封装、继承、多态】

一、类与对象 1、类的定义 在类的里面&#xff0c;称之为方法。 在类的外面&#xff0c;称之为函数。类&#xff1a;人类&#xff0c;一个族群&#xff0c;是一个群体类的语法规则&#xff1a;class 自定义的类名():属性 -- 变量方法 -- 函数类&#xff0c;首字母大写&#x…

SpringBoot集成图数据库neo4j实现简单的关联图谱

社交领域&#xff1a;Facebook, Twitter&#xff0c;Linkedin用它来管理社交关系&#xff0c;实现好友推荐 图数据库neo4j安装&#xff1a; 下载镜像&#xff1a;docker pull neo4j:3.5.0运行容器&#xff1a;docker run -d -p 7474:7474 -p 7687:7687 --name neo4j-3.5.0 ne…

Android开发真等于废人,历经30天

前言 回顾一下自己这段时间的经历&#xff0c;三月份的时候&#xff0c;疫情原因公司通知了裁员&#xff0c;我匆匆忙忙地出去面了几家&#xff0c;但最终都没有拿到offer&#xff0c;我感觉今年的寒冬有点冷。到五月份&#xff0c;公司开始第二波裁员&#xff0c;我决定主动拿…

超简单Windows-kafka安装配置

参考大佬文章&#xff1a; Kafka&#xff08;Windows&#xff09;安装配置启动&#xff08;常见错误扫雷&#xff09;教程_kafka在windows上的安装、运行-CSDN博客Kafka&#xff08;Windows&#xff09;安装配置启动&#xff08;常见错误扫雷&#xff09;教程_kafka在windows上…

基于ERNIR3.0文本分类的开发实践

参考&#xff1a;基于ERNIR3.0文本分类&#xff1a;(KUAKE-QIC)意图识别多分类(单标签) - 飞桨AI Studio星河社区 (baidu.com) https://zhuanlan.zhihu.com/p/574666812?utm_id0 遇到的问题&#xff1a;如下 采用paddleNLP下文本分类实例进行分类训练后发现 生成的模型分类不…

嵌入式学习-FreeRTOS-Day1

一、重点 1、VCC和GND VCC&#xff1a; 1、电路中为电源&#xff0c;供应电压 2、3.3v-5v 3、数字信号中用1表示GND&#xff1a; 1、表示地线 2、一般为0v 3、数字信号中用0表示2、电容和电阻 电容 存储电荷 存储能量&#xff1a; 电容器可以在其两个导体板&#xff08;极…

C++之智能指针

为什么会有智能指针 前面我们知道使用异常可能会导致部分资源没有被正常释放, 因为异常抛出之后会直接跳转到捕获异常的地方从而跳过了一些很重要的的代码, 比如说下面的情况&#xff1a; int div() {int a, b;cin >> a >> b;if (b 0)throw invalid_argument(&q…

第三天 Kubernetes进阶实践

第三天 Kubernetes进阶实践 本章介绍Kubernetes的进阶内容&#xff0c;包含Kubernetes集群调度、CNI插件、认证授权安全体系、分布式存储的对接、Helm的使用等&#xff0c;让学员可以更加深入的学习Kubernetes的核心内容。 ETCD数据的访问 kube-scheduler调度策略实践 预选与…