【ArcGIS Pro二次开发】(39):选择面要素并统计面积(含椭球面积)

news2024/10/7 10:23:30

写在最前面的话:

这个工具的原型是博主学学GIS做的一个工具
,用于统计当前所选择的面要素的面积,主要是为了解决“亩”的转换,确实是一个很方便好用的工具。大家可移步原贴参观:

ArcGIS Pro 加载项(5)——以“亩”为单位统计地块面积

基于个人以及网友方面的需求,我加入了椭球面积的汇总统计,方便在国土空间规划中的应用。


一、要实现的功能

如上图所示,在地图框中,选择部分的面要素,右键单击,在弹出的右键列表中,点击【面积汇总】按钮即可。

在弹出的【面积统计】工具框中,显示了两部分共8个面积指标。

包括【投影面积和椭球面积】,并分别按【平方米、公顷、平方公里、亩】4个单位进行显示。

目前我经常用到的就是这些,如果大家还有其它表达方式上的需求,可以在评论区留言,后面再补充。


二、实现流程

至于实现流程的核心代码,我这里就不贴出来了。不过可以在文章放出的工程文件里自行查看。

这里就说一下椭球面积的计算方法:

// 初始化椭球面积
double geoArea = 0;
// 获取活动地图视图中选定的要素集合
var selectedSet = MapView.Active.Map.GetSelection();
// 将选定的要素集合转换为字典形式
var selectedList = selectedSet.ToDictionary();
// 创建一个新的 Inspector 对象以检索要素属性
var inspector = new Inspector();
// 遍历每个选定图层及其关联的对象 ID
foreach (var layer in selectedList)
{
   // 计算椭球面积
   var area = GeometryEngine.Instance.GeodesicArea(inspector.Shape);
   // 累加得到最终的汇总面积
   geoArea += Math.Abs(area);
}    

这里关键的一个方法就是【GeometryEngine.Instance.GeodesicArea(inspector.Shape)】,这是【ArcGIS.Core.Geometry】自带的一个计算椭球面积的方法,就这么一行简单的代码,花了很长的时间才找到。

是时候再回头学基础了。


三、工程文件分享

 最后,放上工程文件的链接:

AreaStatistichttps://pan.baidu.com/s/1ebLReG25EclGVrEz6XTi4w?pwd=r0jgPS:可以直接点击...bin\Debug\net6.0-windows\下的.esriAddinX文件直接安装。

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

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

相关文章

上线新装ap

1.查找ap型号 1.1视频完整版 1.得到这个ap是在5教汇聚的2/0/8口连着的,且这个口是一个互连口 <NYIST-5#J-QY-HuiJu>dis mac-address 9820-449B-10A0<NYIST-5#J-QY-HuiJu>dis lldp neighbor-information list3.得到5教汇聚的2/0/8口所连接的交换机的ip地址为192.…

直播网站如何实现?

现在的年轻人基本都爱刷 B 站和抖音&#xff0c;空闲时间还喜欢去拉勾教育看看大厂面试、热门技术分享直播&#xff0c;以及各类游戏直播。不知道你有没有思考过&#xff0c;我们每天看到的这么多音视频内容&#xff0c;是如何从采集端&#xff0c;最终呈现到我们的手机 App 上…

华为OD机试真题 JavaScript 实现【Linux 发行版的数量】【2023Q1 100分】

一、题目描述 Linux 操作系统有多个发行版&#xff0c;distrowatch.com 提供了各个发行版的资料。这些发行版互相存在关联&#xff0c;例如 Ubuntu 基于 Debian 只开发而 Mint 又基于 Ubuntu 开发&#xff0c;那么我们认为 Mint 同 Debian 也存在关联。 发行版集是一个或多个…

openEuler 开源汇智赢未来|2023开放原子全球开源峰会 openEuler 论坛成功召开

2023年6月12日&#xff0c;开放原子全球开源峰会OpenAtom openEuler论坛成功召开。论坛以“openEuler汇众智&#xff0c;奔涌向前赢未来”为主题&#xff0c;众多openEuler社区成员、重磅开发者用户以及技术专家参与本次论坛。论坛充分展示了openEuler 社区的最新成果&#xff…

LabVIEW开发呼吸分析系统

LabVIEW开发呼吸分析系统 在日常生活中&#xff0c;许多人都在练习调息法&#xff0c;但大多数人都不知道如何以完美的方式做。不当的做法不会带来适当的结果。一种使用LabVIEW分析呼吸信号的方法&#xff0c;以使人们以完美的方式练习调息。这有助于从业者按照系统指定的说明…

Linux 用yum安装软件提示 cannot find a valid baseurl for repo:base/7/x86_64 的解决方法

文章目录 一、问题原因二、处理方案&#xff1a;1. 编辑修改网卡配置文件2. 在文件末尾&#xff08;或中间&#xff09;追加DNS3. 重启网络4. 验证&#xff0c;安装想要安装的软件 一、问题原因 如下&#xff1a; 出现这个问题是因为yum在安装包的过程中&#xff0c;虽然已经联…

【NOR闪存】MT25TL256BBA8ESF-0AAT 256Mbit、MT25TL01GBBB8ESF-0AAT 1Gbit 16-SOP

器件说明&#xff1a; Micron串行NOR闪存可满足消费电子、工业、有线通信以及计算应用的需求。这些器件采用行业标准封装、引脚分配、命令集和芯片组兼容性&#xff0c;易于为各类设计所采用。这样可节省宝贵的开发时间&#xff0c;同时确保与现有和未来设计的兼容性。 这些串…

超越科幻:揭秘马斯克公司在AI、机器人、脑机接口和太空探索领域的重大突破

原创 | 文 BFT机器人 得益于特斯拉股价暴涨&#xff0c;马斯克今年财富增长超过553亿美元。 根据彭博亿万富翁指数&#xff0c;马斯克目前的净资产约为1923亿美元&#xff0c;超过前世界首富Bernard Arnault的1866亿美元&#xff0c;重回世界首富。 马斯克一直以来都是科技领域…

【JavaWeb】使用Servlet实现输出 hello world

文章目录 1. 前言2. 重写doGet方法3. Smart Tomcat的下载和使用4. 访问时出现问题 1. 前言 之前讲过如何使用IDEA创建Servlet项目. 因此创建项目这一步就不过多介绍了 有需要的可以看一下➡IDEA专业版和社区版创建Servlet项目 今天介绍如何使用Servlet输出一个"hello wo…

深度学习-小目标检测训练技巧

强烈感谢 公众号CVHub 提供的文章思路&#xff0c;该文章仅作为学习记录。 导读 小目标检测是计算机视觉领域中的一个极具挑战性的问题。随着深度学习和计算机视觉领域的不断发展&#xff0c;越来越多的应用场景需要对小目标进行准确的检测和识别。本文将从小目标的定义、意义…

被抄袭声明

我&#xff08;受害者&#xff09;的博客主页&#xff1a; ChuckieZhu的博客_CSDN博客-MATLAB,Python,Django领域博主 抄袭者&#xff08;施害者&#xff09;博客主页&#xff1a; 洋洋菜鸟的博客_CSDN博客-python实例,数学建模,python基础领域博主 问题说明&#xff1a; …

优思学院|什么是六西格玛?一文解答你对六西格玛最常见的疑问

什么是六西格玛&#xff1f; 六西格玛&#xff08;Six Sigma&#xff09;是一种管理方法和质量改进体系&#xff0c;旨在减少组织过程中的变异性&#xff0c;提高业务绩效&#xff0c;并实现客户满意度的持续提升。它是由美国Motorola公司在20世纪80年代发展起来的&#xff0c…

公司新来了个测试开发,据说是00后,上来一顿操作给我惊呆了.....

开年公司新来了个同事&#xff0c;听说大学是学的广告专业&#xff0c;因为喜欢IT行业就找了个培训班&#xff0c;后来在一家小公司实习半年&#xff0c;现在跳槽来我们公司。来了之后把现有项目的性能优化了一遍&#xff0c;服务器缩减一半&#xff0c;性能反而提升4倍!给公司…

Roxel 创世 NFT 作品集

Roxel 宇宙中的 Roxel 机器人、复古未来主义设备和生动机器的集合。在 Roxel 游戏的第一关「The Ascension」中&#xff0c;与它们一起玩耍或对抗&#xff0c;解锁访问独家内容。 该系列于北京时间 6 月 5 日晚上 11 点在 The Sandbox 市场平台上线。 作品一览 巨大的机械挖掘机…

QT学习之旅 - 自定义控件

文章目录 QT中horizontalLayout组件中调整长度在其他组件中使用自定义控件关于ComboBox控件关于QStringList ico添加失败获取windows端口号pro文件(添加)cpp文件(添加) 关于表格设置背景布(ui界面)设置网格.h文件 我们选择 widget 以上是选QT Froms的模板 我们可以选择QT设计师…

基于html+css的图展示124

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

Python 基于招聘数据可视化界面

1 简介 随着国内的经济不断的快速发展&#xff0c;现在学生的就业压力也在逐年增加&#xff0c;网络上的招聘信息非常的丰富&#xff0c;但是对于学生而言岗位是否适合&#xff0c;自身技能是否满足企业需要等仍然需要进一步的进行研究。本次的开发就是帮助应届毕业生在选择工…

012 - STM32学习笔记 - DMA_存储器到存储器

011 - STM32学习笔记 - DMA直接存储器 1、DMA简介 我们知道stm32在实际应用过程中具有很强大的功能&#xff0c;包含数据的采集、处理、逻辑功能的运算等&#xff0c;因此stm32一直在处理大量的事务&#xff0c;但是在实际使用过程中&#xff0c;我们知道有些事情实际上不需要…

探索智慧文旅:沉浸式VR导览与个性化数字人带你畅游景区

导语&#xff1a; 随着科技的不断进步和智能化的兴起&#xff0c;智慧文旅已经成为旅游业的新趋势。在这个数字化时代&#xff0c;旅游体验已经不再局限于传统的观光和游玩&#xff0c;而是通过创新科技为游客提供了全新的旅行方式和更加丰富的体验。 在智慧文旅中&#xff0c…

Pycharm配置远程调试

原文链接 在搞深度学习的时候&#xff0c;我们在本地开发&#xff0c;但是需要在服务器去运行工程&#xff0c;所以需要使用Pycharm进行远程配置&#xff0c;可以实现本地代码自动同步到服务器&#xff0c;并在本地使用服务器的解释器。 条件&#xff1a;需要使用专业版Pycha…