【ArcGIS Pro二次开发】(49):村规数据入库【福建省】

之前用Arcpy脚本工具做了一个村规数据入库和主要图纸生成工具。

在使用过程中,感觉对电脑环境比较高,换电脑用经常会一些莫名其妙的错误,bug修得很累。近来随着ArcGIS Pro SDK的熟悉,就有了移植的想法。

这里先把村规数据入库工具做出来,后续还将继续做主要图纸生成工具。


一、要实现的功能

如上图所示,在【村庄规划】组,有两个工作面板:【准备工作】和【入库】。

【准备工作】面板的2个工具主要是检查准备的村庄数据。

【村规_数据完整性检查】是为了检查是否缺失数据,要素是否缺少必要的字段。
【村规_要素几何检查】是为了检查要素是否存在几何错误,类型错误以及拓扑错误。

执行【村规_数据完整性检查】结果如下:

执行【村规_要素几何检查】结果如下:

至于怎么修正这些错误,后面的数据准备工作会详细再讲。

当你把这两部检查都通过后,就可以执行【入库】面板里的工具了。

【入库】面板的11个工具是入库的主程序。
后面10个工具如字面意思分别对应8个要素类和2个表格的自动生成。
【村庄_入库汇总】则是一次性执行上述10个工具。
如果你想一次性得到完整入库数据,直接执行【村庄_入库】

如果数据没问题,输出结果如下:

这个单个村的结果,如果是多个村也没问题。

为了工具的使用方便,以上13个工具都没有设置输入参数。
工具所需参数全部由固定位置的数据中提取,因此要求把规定格式的数据放在规定的位置。


二、准备数据

首先,需要一个输入文件夹,名为【1-输入文件】,位于当前工程的根目录下。
该文件夹下放置村庄的.gdb文件和.xlsx文件。
一个村庄对应两个文件,两个文件的文件名要完全一致。
注意,这里的Excel文件不能使用.xls文件。
工具可以同时处理多个村庄,如右图程序可以同时给后张村和前张村入库。

【gdb文件】(要素名固定,不要更改)
如图需要准备7个要素,其中文保为可选要素,如果没有可以不放。
其他都是必选要素,如果生态保护红线或永农没有,也要放一个同名的空要素。
生态保护红线或永农可以超出村域范围,工具会按村域范围裁剪。

【现状用地】
就是三调数据,需包含【JQDLBM】、【JQDLMC】和【CZCSXM】3个字段(其中【CZCSXM】是三调数据固定字段,正常不用处理)

 【规划用地】
需包含【GHDLBM】、【GHDLMC】和【SSBJLX】3个字段(别名可以是中文,但字段名发必须为英文)
【SSBJLX】字段内容的意思:Z代表城镇建设用地,T代表弹性用地。(有城镇建设用地和弹性用地的话一定要标注,没有的话可为空)

【现状公服、规划公服】
点要素,需包含【SSLXMC】和【GHSSLXMC】字段(字段值严格按指南附表36填写)

【文保】
(如果有),面要素,需包含【LSWHLX】和【JBDM】字段。
【LSWHLX】的字段值:(严格按指南附表39填写)。
【JBDM】的字段值:(国家级、省级、市级、县级、其他)。

【生态保护红线、永久基本农田】
无字段要求。

【xlsx文件】(文件下要有sheet1表,新建文件默认就有)


村庄名称:需包含三级行政区划,如县、镇、村
村庄类型:按规范填写
规划期限:
现状人口:
规划人口:
现状自然和文化遗产
规划自然和文化遗产

PS:虽然上面的数据要求有点多,但其实熟悉之后,按着模板来一般不会出什么错。

上面数据检查工具也很方便,哪里有问题一下也能找出来,过了检查工具,基本入库就不会有什么问题了。

至于代码部分就不放出来了,代码量有点大,篇幅也不够。有想一起学习的可以私聊。


三、工具文件分享

我把工具都集合成工具箱,不再单独放单个工具,可以到这里下载完整工具箱,会不断更新:

【ArcGIS Pro二次开发】:CC工具箱https://blog.csdn.net/xcc34452366/article/details/131506345PS:可以直接点击...bin\Debug\net6.0-windows\下的.esriAddinX文件直接安装。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

TabLayout+ViewPager实现滚动页面

目录 一、TabLayout介绍 二、TabLayout的常用属性和方法 常用属性: 常用方法: 三、适配器介绍 (一)、PagerAdapter介绍: (二)、FragmentPagerAdapter介绍: (三&am…

Python结巴中文分词笔记

📚 jieba库基本介绍 🌐 jieba库概述 Jieba是一个流行的中文分词库,它能够将中文文本切分成词语,并对每个词语进行词性标注。中文分词是自然语言处理的重要步骤之一,它对于文本挖掘、信息检索、情感分析等任务具有重要…

Android.mk 文件使用解析

和你一起终身学习,这里是程序员Android 经典好文推荐,通过阅读本文,您将收获以下知识点: 一、Android.mk 简介二、Android.mk 的基本格式三、Android.mk 深入学习一四、 Android.mk 深入学习二五、 Android.mk 深入学习三六、 Android.mk 判断…

引入头文件#include <iostream>的时候发生了什么?

<iostream> namespace std {extern istream cin;extern ostream cout;extern ostream cerr;extern ostream clog;extern wistream wcin;extern wostream wcout;extern wostream wcerr;extern wostream wclog;};cin是什么&#xff1f; cin extern istream cin; The objec…

关于Windows 11 docker desktop 运行doris 容器时vm.max_map_count=2000000的设置问题

需要一个简单的测试环境&#xff0c;于是准备用docker启动一个1fe 1be的简单玩一下 如果be容器启动后再去修改 /etc/sysctl.conf sysctl -w vm.max_map_count2000000 这个参数是没用的&#xff0c;be仍然会启动失败 这时可以打开cmd wsl --list C:\Users\pc>wsl --list …

TeeChart for.NET Crack

TeeChart for.NET Crack TeeChart for.NET为各种图表需求提供了图表控件&#xff0c;包括金融、科学和统计等重要的垂直领域。它可以处理您的数据&#xff0c;在各种平台上无缝创建信息丰富、引人入胜的图表&#xff0c;包括Windows窗体、WPF、带有HTML5/Javascript渲染的ASP.N…

用户、角色、权限、菜单--数据库设计

用户角色关联表--user_role id-------------------主键 user_id------------用户ID role_id-------------角色ID create_time------创建时间 is_deleted--------状态&#xff08;0&#xff1a;未删除 1&#xff1a;删除&#xff09; 角色权限关联表--role_permission id------…

JVM回收算法(标记-清除算法, 复制算法, 标记-整理算法)

1.标记-清除算法 最基础的算法&#xff0c;分为两个阶段&#xff0c;“标记”和“清除” 原理&#xff1a; - 标记阶段&#xff1a;collector从mutator根对象开始进行遍历&#xff0c;对从mutator根对象可以访问到的对象都打上一个标识&#xff0c;一般是在对象的header中&am…

LiveGBS流媒体平台GB/T28181功能-作为上级平台对接海康大华华为宇视等下级平台监控摄像机NVR硬件执法仪等GB28181设备

LiveGBS作为上级平台对接海康大华华为宇视等下级平台监控摄像机NVR硬件执法仪等GB28181设备 1、背景说明2、部署国标平台2.1、安装使用说明2.2、服务器网络环境2.3、信令服务配置 3、监控摄像头设备接入3.1、海康GB28181接入示例3.2、大华GB28181接入示例3.3、华为IPC GB28181接…

Mybatis架构简介

文章目录 1.整体架构图2. 基础支撑层2.1 类型转换模块2.2 日志模块2.3 反射工具模块2.4 Binding 模块2.5 数据源模块2.6缓存模块2.7 解析器模块2.8 事务管理模块3. 核心处理层3.1 配置解析3.2 SQL 解析与 scripting 模块3.3 SQL 执行3.4 插件4. 接口层1.整体架构图 MyBatis 分…

程序员的自我修养(2)

目标文件的学习 1.什么是目标文件以及格式 目标文件为编译器编译后生成的文件&#xff0c;就是window下的.obj&#xff0c;linux下的.o文件。与可执行文件格式几乎一样&#xff0c;因为只是缺少链接过程。所以可执行文件&#xff0c;动态链接库&#xff0c;静态链接库&#xf…

【从零到Offer】反射那些事

什么是反射&#xff1f; ​ 反射简单来说&#xff0c;就是在代码运行期间&#xff0c;通过动态指定任意一个类&#xff0c;从而构建对象&#xff0c;并了解该类的成员变量和方法&#xff0c;甚至可以调用任意一个对象的属性和方法。以String对象为例子&#xff0c;传统构造方式…

计算机网络 - http协议 与 https协议(2)

前言 本篇介绍了构造http请求的的五种方式&#xff0c;简单的使用postman构造http请求&#xff0c;进一步了解https, 学习https的加密过程&#xff0c;了解对称密钥与非对称密钥对于加密是如何进行的&#xff0c;如有错误&#xff0c;请在评论区指正&#xff0c;让我们一起交流…

SPEC CPU 2006 在 CentOS 5.0 x86_64 古老系统测试【3】静态编译 invalid run

上篇 SPEC CPU 2006 在 CentOS 5.0 x86_64 古老系统测试【2】_hkNaruto的博客-CSDN博客 修改gcc41.cfg&#xff0c;全部添加上-static 测试指令 runspec -c gcc41.cfg -T all -n 3 -r 1 -I -i ref all 结果&#xff1a;正常运行并生成报告 invalid run Invalid SPEC CFP2006…

自学网络安全(成为黑客)

一、前言 黑客这个名字一直是伴随着互联网发展而来&#xff0c;给大家的第一印象就是很酷&#xff0c;而且技术精湛&#xff0c;在网络世界里无所不能。目前几乎所有的公司企业甚至国家相关部门都会争相高薪聘请技术精湛的黑客作为互联网机构的安全卫士&#xff0c;所以黑客也…

rapid_latex_ocr: 更快更好用的公式图像转latex工具

Rapid Latex OCR rapid_latex_ocr是一个将公式图像转为latex格式的工具。仓库中的推理代码来自修改自LaTeX-OCR&#xff0c;模型已经全部转为ONNX格式&#xff0c;并对推理代码做了精简&#xff0c;推理速度更快&#xff0c;更容易部署。仓库只有基于ONNXRuntime或者OpenVINO推…

【Linux】基础开发工具——make

文章目录 前言&#xff1a;一、认识make和makefile二、依赖关系和依赖方法三、make工作原理 前言&#xff1a; 上一期分享了在Linux下编译源代码的两个工具&#xff0c;gcc和g。每次编译源代码&#xff0c;都要输入一串很长的指令&#xff0c;这个过程显然是十分复杂&#xff…

【Go|第8期】Lorca读取HTML的三种方式

日期&#xff1a;2023年7月16日 作者&#xff1a;Commas 签名&#xff1a;(ง •_•)ง 积跬步以致千里,积小流以成江海…… 注释&#xff1a;如果您觉得有所帮助&#xff0c;帮忙点个赞&#xff0c;也可以关注我&#xff0c;我们一起成长&#xff1b;如果有不对的地方&#xf…

天天刷题-->LeetCode(最长回文子串)

个人名片&#xff1a; &#x1f405;作者简介&#xff1a;一名大二在校生&#xff0c;热爱生活&#xff0c;爱好敲码&#xff01; \ &#x1f485;个人主页 &#x1f947;&#xff1a;holy-wangle ➡系列内容&#xff1a; &#x1f5bc;️ tkinter前端窗口界面创建与优化 &…

JVM内存结构——前言

前提 1. 认识JVM&#xff0c;什么是JVM 简单来说&#xff0c;就是java程序的运行环境&#xff08;java二进制字节码的运行环境&#xff09; 1.1 JVM &#xff08;java虚拟机&#xff09;的好处 &#xff1a; 一次编写&#xff0c;到处运行的机制 &#xff08;因为java语言是跨…