关于国土系统中二调地类权属汇总统计问题

2024-02-04 01:40

本文主要是介绍关于国土系统中二调地类权属汇总统计问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第一章 项目背景

1.1 项目背景

       在国土系统中,往往需要统计相关地块的土地利用现状地类及权属,地类信息依据第二次全国土地利用现状调查成果及每年进行年度变更后的更新成果(以下简称二调),权属信息依全国农村集体土地所有权确权成果(以下简称所有权)。二调数据库和所有权数据库是两个独立的数据库,且二调数据库中土地利用现状分类只分到二级类,实际工作中往往要求合并到三大类(农用地、建设用地、未利用地),为方便统计权属地类,需要将现有二调及所有权成果整合到一起。

1.2 工作思路

        通过gis软件将二调数据库与所有权数据库进行整合,将目标地块套合到整合后的数据库,导出目标地块范围内二调地类和所有权成果权属的excel表,然后通过vba代码对excel表进行分类汇总并排版,生成最终权属地类汇总表。

第二章 二调数据库及所有权数据库的整合

2.1 二调数据库信息

                                      (上图为二调现状图及属性字段信息)

上图为二调现状图及现状图中地类图斑的属性表(arcgis软件中操作),DLBM字段即为图斑的地类编码,地类编码为二级类名称(关于地类编码及分类可参考《第二次全国土地调查土地分类》及《GBT 21010-2007 土地利用现状分类》)。操作步骤为:首先在属性表中增加一个字段“三大类名称”,通过gis软件中字段计算器写入二级类转三大类vb脚本,可快速根据二级类代码生成对应的三大类名称,见下图:

vb脚本代码如下:

Dim density
if [DLBM] ="012"Then
density ="农用地"
elseif [DLBM] ="013"Then
density= "农用地"
elseif [DLBM] ="021"Then
density= "农用地"
elseif [DLBM] ="023"Then
density= "农用地"
elseif [DLBM] ="031"Then
density= "农用地"
elseif [DLBM] ="033"Then
density= "农用地"
elseif [DLBM] ="104"Then
density= "农用地"
elseif [DLBM] ="114"Then
density= "农用地"
elseif [DLBM] ="117"Then
density= "农用地"
elseif [DLBM] ="122"Then
density= "农用地"
elseif [DLBM] ="043"Then
density= "农用地"
elseif [DLBM] ="201"Then
density= "建设用地"
elseif [DLBM] ="202"Then
density= "建设用地"
elseif [DLBM] ="203"Then
density= "建设用地"
elseif [DLBM] ="204"Then
density= "建设用地"
elseif [DLBM] ="205"Then
density= "建设用地"
elseif [DLBM] ="101"Then
density= "建设用地"
elseif [DLBM] ="102"Then
density= "建设用地"
elseif [DLBM] ="113"Then
density= "建设用地"
elseif [DLBM] ="118"Then
density= "建设用地"
elseif [DLBM] ="111"Then
density= "未利用地"
elseif [DLBM] ="116"Then
density= "未利用地"
elseif [DLBM] ="125"Then
density= "未利用地"
else
density= "错误"
end if 
此代码根据当地实际地类情况进行编写,当地不存在的二级类地类未写进代码,不同地区应根据实际情况参考《第二次全国土地调查土地分类》及《GBT 21010-2007 土地利用现状分类》进行代码编写。通过此步操作,可将“三大类名称”属性加入二调数据库中所有图斑。

2.2 所有权数据库信息

下图为所有权数据库信息:

所有权数据库中的“QSDWMC”字段即为权属单位名称,若当地所有权数据库中集体土地使用证证号信息,根据工作需要可在所有权数据库中增加属性信息,通过所有权与发证excel表中相同字段(如地籍号或宗地号)进行属性挂接。

2.3对二调数据库与所有权数据库进行属性合并

因地类名称与权属单位名称分别位于两个数据库中,故需通过arcgis的地理处理功能将两个数据库进行相交,生成一个带有二调通过地类名称和所有权权属单位名称的综合数据库。如图所示,该属性表包含三大类名称及所有权权属信息。

第三章 excel VBA编程进行分类汇总出表

3.1 提取地块权属地类信息

将地块坐标(shp格式)导入gis软件中,通过地理处理(相交)功能可生成地块范围内图斑,图斑属性已包含三大类、所有权等字段,之后导出到excel表中,见下图。

3.2 根据原始excel表数据进行vba编程生成地类权属汇总表

通过excel自带vba编辑器进行代码输入并调试,下图为调试代码界面

(此处未展示完整vba代码)代码完成后保存为宏,直接运行宏即可。

3.3 成果展示

下图为宏运行后的表格

经过以上步骤,已实现对地块进行权属和地类统计汇总出表工作。

这篇关于关于国土系统中二调地类权属汇总统计问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/676038

相关文章

mybatis和mybatis-plus设置值为null不起作用问题及解决

《mybatis和mybatis-plus设置值为null不起作用问题及解决》Mybatis-Plus的FieldStrategy主要用于控制新增、更新和查询时对空值的处理策略,通过配置不同的策略类型... 目录MyBATis-plusFieldStrategy作用FieldStrategy类型每种策略的作

linux下多个硬盘划分到同一挂载点问题

《linux下多个硬盘划分到同一挂载点问题》在Linux系统中,将多个硬盘划分到同一挂载点需要通过逻辑卷管理(LVM)来实现,首先,需要将物理存储设备(如硬盘分区)创建为物理卷,然后,将这些物理卷组成... 目录linux下多个硬盘划分到同一挂载点需要明确的几个概念硬盘插上默认的是非lvm总结Linux下多

Python Jupyter Notebook导包报错问题及解决

《PythonJupyterNotebook导包报错问题及解决》在conda环境中安装包后,JupyterNotebook导入时出现ImportError,可能是由于包版本不对应或版本太高,解决方... 目录问题解决方法重新安装Jupyter NoteBook 更改Kernel总结问题在conda上安装了

pip install jupyterlab失败的原因问题及探索

《pipinstalljupyterlab失败的原因问题及探索》在学习Yolo模型时,尝试安装JupyterLab但遇到错误,错误提示缺少Rust和Cargo编译环境,因为pywinpty包需要它... 目录背景问题解决方案总结背景最近在学习Yolo模型,然后其中要下载jupyter(有点LSVmu像一个

解决jupyterLab打开后出现Config option `template_path`not recognized by `ExporterCollapsibleHeadings`问题

《解决jupyterLab打开后出现Configoption`template_path`notrecognizedby`ExporterCollapsibleHeadings`问题》在Ju... 目录jupyterLab打开后出现“templandroidate_path”相关问题这是 tensorflo

如何解决Pycharm编辑内容时有光标的问题

《如何解决Pycharm编辑内容时有光标的问题》文章介绍了如何在PyCharm中配置VimEmulator插件,包括检查插件是否已安装、下载插件以及安装IdeaVim插件的步骤... 目录Pycharm编辑内容时有光标1.如果Vim Emulator前面有对勾2.www.chinasem.cn如果tools工

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动

Java多线程父线程向子线程传值问题及解决

《Java多线程父线程向子线程传值问题及解决》文章总结了5种解决父子之间数据传递困扰的解决方案,包括ThreadLocal+TaskDecorator、UserUtils、CustomTaskDeco... 目录1 背景2 ThreadLocal+TaskDecorator3 RequestContextH

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

关于Spring @Bean 相同加载顺序不同结果不同的问题记录

《关于Spring@Bean相同加载顺序不同结果不同的问题记录》本文主要探讨了在Spring5.1.3.RELEASE版本下,当有两个全注解类定义相同类型的Bean时,由于加载顺序不同,最终生成的... 目录问题说明测试输出1测试输出2@Bean注解的BeanDefiChina编程nition加入时机总结问题说明