测算土地面积并导出的新方法

2024-03-15 13:12

本文主要是介绍测算土地面积并导出的新方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

让每一个人,都有自己的地图!

我们在《如何测量显示多个距离和面积》一文中分享过测量距离和面积的方法,随着最近新版本的上线,该功能又有了新方法。

这里以测算土地面积并导出为例,分享这个新版本中的面积测量与导出功能。

最后,我们在文末附了一个比较受欢迎的面积分割工具,希望对你有用。

如何测算土地面积?

在图层树根节点的右键菜单中选择“新建图层”新建一个复合图层,点击“属性字段”添加用于自动存储长度和面积的字段。   

图片

新建图层

在“属性字段”中,点击“添加”按钮右侧的小箭头图标,将显示当前图层可以新建的系统字段。

图片

属性字段

在系统字段中,分别新建“we_length”和“we_area”两个字段。   

图片

新建系统字段

在属性字段中,以“we_”开头的字段都是系统字段,你可以再根据自己的需要新建其它的字段。

图片

完成新建字段

新建字段确认后,完成图层的新建。

新建图层完成之后,就可以开始在该图层绘制要素,要素绘制完成之后,将会在“we_length”和“we_area”字段中自动填写周长和面积。   

图片

绘制要素

注意:

(1)“we_length”和“we_area”字段,只有在完成要素绘制后自动填充一次初始值。

(2)如果对要素进行了修改,其数据不会进行再次更新。

(3)因此,当你手动对该数据修改之后,对要素的节点进行调整后,也就不会覆盖你的修改结果。

(4)但在以后的版本中,当要素被修改之后,会考虑添加一个“刷新”按钮,以便于可以更新数据。

标注与气泡显示

如果需要将面积在地图上标注显示或在气泡中显示,则可以在图层右键菜单中选择“属性”进行设置。   

图片

打开图层属性

在“图层属性”中,可以选择需要标注显示的字段,这里以“we_area”为例。   

图片

设置标注字段

在“气泡”设置功能中,可以选择需要在气泡中显示信息的字段,这里以“we_length”为例。   

图片

设置气泡字段

字段标注与气泡字段设置完成之后,就可以直接在地图要查看每一个地块的面积了,并且在鼠标为平移状态的情况下,单击要素会显示地块的边线长度值。   

图片

显示标注与气泡

如何导出土地面积

绘完地块之后,可以将地块面积导出为CSV文件。

在图层的右键菜单中选择“打开属性表”,查看所有地块的字段值。   

图片

打开图层属性表

在“图层属性表中”选择“导出全部”,可以将数据导出为CSV文件。

图片

导出全部

导出的CSV文件,可以通过WPS打开进行查看。

图片

面积测算结果

在导出的数据中,“we_length”字段中的值为自动测算出的地块周长,“we_area”中的值,则为自动测算出的面积。

注意:如果在要素绘制完后,又对要素进行过移动节点等修改,则字段中的值为修改前的值,

其原因已在前文有说明,这里不再赘述。

导出要素的常规属性值

为了避免“we_length”与“we_area”字段中的初始值,与要素被修改过后的值不一致的问题,可以直接导出要素常规属性值中的周长与面积。   

在“图层属性表”中,点击“导出设置”按钮,会显示当前默认导出的属性字段。

图片

导出设置

在“导出设置”中,单击“选择属性”按钮,可以选择导出常规属性。   

图片

导出设置

在“选择属性”中,除了支持选择属性字段外,还支持选择常规属性、要素样式属性、要素样式和WKT坐标值等。   

图片

选择属性

为了要导出地块的周长与面积,我们在这里只选择“常规”属性中的“周长”与“面积”属性。   

图片

周长与面积

最后导出数据结果如下图所示,除了原有属性字段外,就还会新增“周长”与“面积”字段。   

图片

导出结果

由于在本例中,有几个要素在绘制完成后又被修改过,因此通过要素坐标测算出的“周长”与“面积”字段值,就会与“we_length”和“we_area”字段中的初始值不同。

在本系统中测算的面积与距离,基于EPSG3857投影坐标系,在二维视图中绘制时不考虑地形起伏,在三维视图中绘制时则基于地形起伏进行了计算。

本系统中基于要素自动测算出的值,肯定还是会与专业测绘设备在现场所测出的值存在误差,因此该数值仅供参考,不适合用于严谨的工程预算或工程审核等工作中。

写在最后

面积分割工具的使用方法,请参阅《ArcGIS地块面积分割调整工具插件》一文中的详细说明。

这篇关于测算土地面积并导出的新方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python中提取文件名扩展名的多种方法实现

《Python中提取文件名扩展名的多种方法实现》在Python编程中,经常会遇到需要从文件名中提取扩展名的场景,Python提供了多种方法来实现这一功能,不同方法适用于不同的场景和需求,包括os.pa... 目录技术背景实现步骤方法一:使用os.path.splitext方法二:使用pathlib模块方法三

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

CSS实现元素撑满剩余空间的五种方法

《CSS实现元素撑满剩余空间的五种方法》在日常开发中,我们经常需要让某个元素占据容器的剩余空间,本文将介绍5种不同的方法来实现这个需求,并分析各种方法的优缺点,感兴趣的朋友一起看看吧... css实现元素撑满剩余空间的5种方法 在日常开发中,我们经常需要让某个元素占据容器的剩余空间。这是一个常见的布局需求

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

Maven 配置中的 <mirror>绕过 HTTP 阻断机制的方法

《Maven配置中的<mirror>绕过HTTP阻断机制的方法》:本文主要介绍Maven配置中的<mirror>绕过HTTP阻断机制的方法,本文给大家分享问题原因及解决方案,感兴趣的朋友一... 目录一、问题场景:升级 Maven 后构建失败二、解决方案:通过 <mirror> 配置覆盖默认行为1. 配置示

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

Java中Map.Entry()含义及方法使用代码

《Java中Map.Entry()含义及方法使用代码》:本文主要介绍Java中Map.Entry()含义及方法使用的相关资料,Map.Entry是Java中Map的静态内部接口,用于表示键值对,其... 目录前言 Map.Entry作用核心方法常见使用场景1. 遍历 Map 的所有键值对2. 直接修改 Ma

Mybatis Plus Join使用方法示例详解

《MybatisPlusJoin使用方法示例详解》:本文主要介绍MybatisPlusJoin使用方法示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录1、pom文件2、yaml配置文件3、分页插件4、示例代码:5、测试代码6、和PageHelper结合6

Java中实现线程的创建和启动的方法

《Java中实现线程的创建和启动的方法》在Java中,实现线程的创建和启动是两个不同但紧密相关的概念,理解为什么要启动线程(调用start()方法)而非直接调用run()方法,是掌握多线程编程的关键,... 目录1. 线程的生命周期2. start() vs run() 的本质区别3. 为什么必须通过 st