当前位置: 首页 > news >正文

【ArcGIS Pro二次开发】(70):杂七杂八的记录

本文用于记录一些使用频率较高但归类繁杂,非系统性的一些代码。

主要方便自己使用和查阅,随时更新。


1、从GDB数据库中打开【FeatureDataset\FeatureClass\Table】

using Geodatabase gdb = new Geodatabase(new FileGeodatabaseConnectionPath(new Uri(gdbPath)));
FeatureDataset featureDataset = gdb.OpenDataset<FeatureDataset>(featureDatasetName);
FeatureClass featureClass = gdb.OpenDataset<FeatureClass>(featureClassName);
Table table = gdb.OpenDataset<Table>(tableName);

2、从GDB数据库中获取【FeatureDatasetDefinition\FeatureClassDefinition\TableDefinition】

// 扩展用法:GetDefinitions<>
FeatureDatasetDefinition featureDatasetDefinition = gdb.GetDefinition<FeatureDatasetDefinition>(featureDatasetName);
FeatureClassDefinition featureClassDefinition = gdb.GetDefinition<FeatureClassDefinition>(featureClassName);
TableDefinition tableDefinition = gdb.GetDefinition<TableDefinition>(tableName);

3、从【FeatureLayer\FeatureClass】中获取【Feature\Row】

using (RowCursor rowCursor = featureLayer.Search())
{while (rowCursor.MoveNext()){using Feature feature2 = rowCursor.Current as Feature;using Row row = rowCursor.Current;}
}

4、Feature转换为Geometry

Geometry geometry1 = feature.GetShape();

5、Geometry转换为Polygon

Polygon polygon1 = geometry as Polygon;

6、设置Feature的几何形状

feature.SetShape(geometry);

7、获取线、面要素的折点、首末点

ReadOnlyPointCollection mapPoints = polygon.Points;
ReadOnlyPointCollection mapPoints2 = polyline.Points;
MapPoint startPoint = mapPoints.First();
MapPoint endPoint = mapPoints.Last();

8、switch用法示例

string featureclass_type = esriGeometryType switch
{esriGeometryType.esriGeometryPoint => "Point",esriGeometryType.esriGeometryPolyline => "Polyline",esriGeometryType.esriGeometryPolygon => "Polygon",_ => "",
};

9、获取活动地图视图中选择框选定的要素【SelectiontSet】

SelectionSet selectedSet = MapView.Active.Map.GetSelection();

10、在MapTool中获取选择的要素【SelectiontSet】

SelectionSet selectedSet2 = MapView.Active.GetFeatures(geometry);

11、从【SelectionSet】中获取【Geometry】

var selectionList = selectedSet.ToDictionary();
Inspector inspector = new Inspector();
foreach (var selection in selectionList)
{MapMember mapMember = selection.Key;List<long> oids = selection.Value;foreach (var oid in oids){inspector.Load(mapMember, oid);Polygon polygon2 = inspector.Shape as Polygon;}
}

12、Geometry的属性

double polygonArea = polygon.Area;  // 面积
Envelope polygonExtent = polygon.Extent;   // 范围
GeometryType geometryType = geometry.GeometryType;  // 要素类型
SpatialReference spatialReference = geometry.SpatialReference;   // 坐标系
int pointCount = polyline.PointCount;    // 折点数

相关文章:

【ArcGIS Pro二次开发】(70):杂七杂八的记录

本文用于记录一些使用频率较高但归类繁杂&#xff0c;非系统性的一些代码。 主要方便自己使用和查阅&#xff0c;随时更新。 1、从GDB数据库中打开【FeatureDataset\FeatureClass\Table】 using Geodatabase gdb new Geodatabase(new FileGeodatabaseConnectionPath(new Uri…...

竞赛选题 深度学习 机器视觉 人脸识别系统 - opencv python

文章目录 0 前言1 机器学习-人脸识别过程人脸检测人脸对其人脸特征向量化人脸识别 2 深度学习-人脸识别过程人脸检测人脸识别Metric Larning 3 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 深度学习 机器视觉 人脸识别系统 该项目…...

【工具】SSH端口转发管理器,专门管理SSH Port Forwarding

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhang.cn] 开源代码看这里&#xff1a;http://xfxuezhang.cn/index.php/archives/1151/ 背景介绍 有时候需要用到ssh的端口转发功能。目前来说&#xff0c;要么是cmd里手敲指令&#xff0c;但每次敲也太麻烦了&#xff1b;或…...

opencv-phase 函数

计算梯度强度和方向 梯度的方向与边缘的方向总是垂直的。图像中的边缘可以指向各个方向&#xff0c;通常会取水平&#xff08;左、右&#xff09;、垂直&#xff08;上、下&#xff09;、对角线&#xff08;左上、右上、左下、右下&#xff09;等八个不同的方向计算梯度。 角度…...

44.ES

一、ES。 &#xff08;1&#xff09;es概念。 &#xff08;1.1&#xff09;什么是es。 &#xff08;1.2&#xff09;es的发展。 es是基于lucene写的。 &#xff08;1.3&#xff09;总结。 es是基于lucene写的。 &#xff08;2&#xff09;倒排索引。 &#xff08;3&#xf…...

分权分域有啥内容?

目前的系统有什么问题&#xff1f; 现在我们的系统越来越庞大&#xff0c;可是每一个人进来的查看到的内容完全一样&#xff0c;没有办法灵活的根据不同用户展示不同的数据 例如我们有一个系统&#xff0c;期望不同权限的用户可以看到不同类型的页面&#xff0c;同一个页面不…...

6.Docker搭建RabbitMQ

1、端口开放 如果在云服务上部署需在安全组开通一下端口&#xff1a;15672、5672、25672、61613、1883。 15672(UI页面通信口)、5672(client端通信口)、25672(server间内部通信口)、61613(stomp 消息传输)、1883(MQTT消息队列遥测传输)。 2、安装镜像 docker pull rabbitmq 3、…...

用 docker 创建 jmeter 容器, 实现性能测试,该如何下手?

用 docker 创建 jmeter 容器, 实现性能测试 我们都知道&#xff0c;jmeter可以做接口测试&#xff0c;也可以用于性能测试&#xff0c;现在企业中性能测试也大多使用jmeter。docker是最近这些年流行起来的容器部署工具&#xff0c;可以创建一个容器&#xff0c;然后把项目放到…...

4年软件测试,突破不了20K,太卷了。。。

先说一个插曲&#xff1a;上个月我有同学在深圳被裁员了&#xff0c;和我一样都是软件测试&#xff0c;不过他是平安外包&#xff0c;所以整个组都撤了&#xff0c;他工资和我差不多都是14K。 现在IT互联网已经比较寒冬&#xff0c;特别是软件测试&#xff0c;裁员先裁测试&am…...

机器人控制算法——两轮差速驱动运动模型

1.Introduction 本文主要介绍针对于两轮差速模型的逆运动学数学推导。因为在机器人控制领域&#xff0c;决策规划控制层给执行器输出的控制指令v(车辆前进速度)和w(角速度)&#xff0c;因此&#xff0c;我们比较关心&#xff0c;当底层两个驱动电机接收到此信息&#xff0c;如何…...

Queue简介

概念&#xff1a; 队列&#xff08;Queue&#xff09;是一种常见的线性数据结构&#xff0c;在Java中用于存储和操作元素序列。它基于先进先出&#xff08;First-In-First-Out, FIFO&#xff09;原则&#xff0c;即最早入队的元素首先出队。只能在队尾添加元素&#xff0c;在队…...

被面试官问到分布式ID,别再傻乎乎只会答雪花算法了...

文章目录 1. 分布式ID2. 数据库主键自增3. 数据库号段模式4. Redis自增5. UUID6. Snowflake (雪花算法)7. Leaf (美团分布式ID生成系统)7.1 Leaf-segment 号段方案7.1.2 双buffer优化 7.2 Leaf-snowflake方案7.3 Leaf-snowflake Demo 1. 分布式ID 在分布式系统中&#xff0c;通…...

使用Boto3访问AWS S3服务

安装Boto3&#xff0c;执行如下命令&#xff1a; python -m venv .venv . .venv/bin/activate python -m pip install boto3创建配置文件&#xff0c;执行如下命令&#xff1a; mkdir -p ~/.aws touch ~/.aws/credentials touch ~/.aws/config编辑 ~/.aws/credentials&#x…...

ODrive移植keil(五)—— 开环控制和电流变换

目录 一、开环控制1.1、控制原理1.2、硬件接线1.3、代码说明1.4、程序演示1.5、程序架构的体现 二、电流变换2.1、理论说明2.2、代码说明 ODrive、VESC和SimpleFOC 教程链接汇总&#xff1a;请点击 一、开环控制 在SimpleFOC系列中有开环控制的教程&#xff0c;SimpleFOC移植S…...

【Java学习之道】日期与时间处理类

引言 在前面的章节中&#xff0c;我们介绍了Java语言的基础知识和核心技能&#xff0c;现在我们将进一步探讨Java中的常用类库和工具。这些工具和类库将帮助我们更高效地进行Java程序开发。在本节中&#xff0c;我们将一起学习日期与时间处理类的使用。 一、为什么需要日期和…...

信息系统项目管理师第四版学习笔记——高级项目管理

项目集管理 项目集管理角色和职责 在项目集管理中涉及的相关角色主要包括&#xff1a;项目集发起人、项目集指导委员会、项目集经理、其他影响项目集的干系人。 项目集发起人和收益人是负责承诺将组织的资源应用于项目集&#xff0c;并致力于使项目集取得成功的人。 项目集…...

MySQL建表操作和用户权限

1.创建数据库school&#xff0c;字符集为utf8 mysql> create database school character set utf8; 2.在school数据库中创建Student和Score表 mysql> create table school.student( -> Id int(10) primary key, -> Stu_id int(10) not null, -> C_n…...

TCP/IP(十一)TCP的连接管理(八)socket网络编程

一 socket网络编程 socket 基本操作函数 bind、listen、connect、accept、recv、send、select、close 说明: 本文需要C语言、syscall系统调用、OS 操作系统基础理论,如果不了解可以暂时跳过目标&#xff1a; 知道对应库函数的更底层机制思考&#xff1a; socket函数与FIN、A…...

第五章 图

第五章 图 图的基本概念图的应用背景图的定义和术语 图的存储结构邻接矩阵邻接表 图的遍历连通图的深度优先搜索连通图的广度优先搜索 图的应用最小生成树拓扑排序 小试牛刀 图的基本概念 图结构中&#xff0c;任意两个结点之间都可能相关&#xff1b;而在树中&#xff0c;结点…...

深度学习实战:用Keras搭建深度学习网络做手写数字识别

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者:秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据开发、数据分析等。 🐴欢迎小伙伴们点赞👍🏻、收藏⭐️、…...

不止是图像采集:基于RK3588 NPU和FPGA,如何给Cameralink相机注入AI灵魂(附目标跟踪/电子稳像实战)

异构计算赋能Cameralink相机&#xff1a;RK3588 NPU与FPGA协同的AI视觉实战 在工业检测、安防监控和国防光电系统中&#xff0c;Cameralink相机凭借其高带宽、低延迟的特性成为高速图像采集的首选。但当面对动目标检测、电子稳像等复杂任务时&#xff0c;传统方案往往陷入算力瓶…...

简历投了全石沉大海?实测3个免费AI简历神器,HR秒通过、面试翻3倍!

3个实测免费的AI简历神器&#xff0c;不用花钱、不用登录&#xff0c;直接让简历过ATS、获面试&#xff0c;应届生/职场人闭眼冲&#xff01;简历优化本身就讲究精准度&#xff0c;尤其是ATS筛选逻辑&#xff0c;很多工具要么收费高&#xff0c;要么改完还是不贴合JD&#xff0…...

别再只调API了!深入XXL-Job时间轮源码,手把手带你搞懂任务触发与调度过期的那些坑

深入XXL-Job时间轮&#xff1a;从源码解析任务调度与过期处理的实战指南 在分布式任务调度领域&#xff0c;XXL-Job以其轻量级、易扩展的特性成为众多Java项目的首选方案。但当我们从简单的API调用者转变为架构设计者时&#xff0c;仅满足于配置层面的理解显然不够。本文将带您…...

技术演进:从PDH到SDH的WAN接口变迁与POS/CPOS应用解析

1. 从铜缆到光纤&#xff1a;PDH与SDH的技术演进之路 记得我第一次接触E1接口是在2008年&#xff0c;当时在一家电信机房看到一排闪着绿色指示灯的设备&#xff0c;老师傅告诉我这就是承载着电话业务的"2M线"。那时候我还不知道&#xff0c;这个看似简单的接口背后&a…...

绝大多数主流中间件、框架,底层都是靠反射做能力扩展、插件化、自定义适配

完全没错&#xff0c;绝大多数主流中间件、框架&#xff0c;底层都是靠反射做能力扩展、插件化、自定义适配框架本身只写通用骨架&#xff0c;把扩展口子留给反射&#xff0c;让业务 / 第三方自己填逻辑。一、核心逻辑框架定死主干流程&#xff0c;不写死具体业务类、实现类预留…...

告别UUID!用Apache Commons Lang3的RandomStringUtils生成更灵活的随机字符串(Java实战)

告别UUID&#xff01;用Apache Commons Lang3的RandomStringUtils生成更灵活的随机字符串&#xff08;Java实战&#xff09; 在Java开发中&#xff0c;生成随机字符串的需求无处不在——从用户邀请码、临时密码到订单编号&#xff0c;我们经常需要快速生成一串既随机又可读的字…...

3分钟掌握无人机日志分析:免费在线工具UAV Log Viewer完全指南

3分钟掌握无人机日志分析&#xff1a;免费在线工具UAV Log Viewer完全指南 【免费下载链接】UAVLogViewer An online viewer for UAV log files 项目地址: https://gitcode.com/gh_mirrors/ua/UAVLogViewer 面对复杂的无人机飞行数据&#xff0c;你是否曾为分析日志文件…...

充电桩源头厂家怎么选?五大核心维度教你精准选型

充电桩源头厂家怎么选&#xff1f;五大核心维度教你精准选型新能源充电基础设施建设进入高速发展期&#xff0c;物业、城投、能源企业、物流园区等采购方在选择充电桩源头厂家时&#xff0c;往往陷入“品牌多、难分辨、怕踩坑”的困境&#xff1a;贴牌组装产品质量无保障、小厂…...

别让你的AI模型‘偏心’:用Python实战解决机器学习公平性问题(附代码)

别让你的AI模型‘偏心’&#xff1a;用Python实战解决机器学习公平性问题&#xff08;附代码&#xff09; 在信贷审批系统中&#xff0c;女性申请者的通过率比男性低23%&#xff1b;在招聘算法中&#xff0c;35岁以上候选人的简历筛选通过率骤降40%——这些真实案例揭示了一个残…...

从Typora迁移到Obsidian,我踩过的那些坑和高效配置方案

从Typora迁移到Obsidian&#xff1a;无缝过渡的深度实践指南 当我在2022年决定将积累了5年的技术笔记库从Typora迁移到Obsidian时&#xff0c;最初以为只是换个编辑器那么简单。直到实际操作时才发现&#xff0c;这两个看似相似的Markdown工具在使用哲学和操作细节上存在诸多差…...