ARCGIS PRO SDK 选择对象Dictionary的操作

一、SelectionSet的成员
SelectionSet的3个主要成员:
1、Count:获取选择集中记录的总数。返回的是一个int值。
2、isEmpty:判断当前选择集是否为空。返回的是一个bool值。
3、item:获取成员对象 ID的列表。返回的是一组long值。
二、SelectionSet的3个主要方法:
1、Contains:确定指定映射成员中的记录是否在选择集中。
2、FromDictionary:通过字典来创建一个选择集对象。
3、ToDictionary:从选择集创建映射成员及其相应对象 ID 的字典。
获取选择对象集:

Dim pmap As Map = MapView.Active.Map
Dim sele As SelectionSet
If sele.IsEmpty = True ThenMsgBox("未选择要素.")Exit Sub
End If
Dim sel_zs As Long = sele.Count    '返回选择要素的个数
Dim sel_lv As Dictionary(Of MapMember, List(Of Long)) = sele.ToDictionary() 

对于sel_lv,采用以下三种方法可以枚举出键值对:
方法一:按字典元素遍历

Dim info As String = ""
‘遍历选择集字典
For Each singleKey As KeyValuePair(Of MapMember, List(Of Long)) In sel_lv‘获取当前图层名称info = singleKey.Key.ToStringDim plist As List(Of Long) = singleKey.Value‘遍历当前图层选择集的要素对象IDFor Each fa As Long In plistDim ojbid = fa   ’获取对象IDNext
Next

方法二:按字典键遍历

For Each singleKey In sel_lv.Keysinfo = singleKey.ToStringDim plist As List(Of Long) = sel_lv(singleKey)For Each fa As Long In plistDim ojbid = faNext
Next

方法三:按字典元素遍历

Dim myDicEnum As IDictionaryEnumerator = sel_lv.GetEnumerator()
Dim kvp As KeyValuePair(Of MapMember, List(Of Long))
While myDicEnum.MoveNext()kvp = CType(myDicEnum.Current, KeyValuePair(Of MapMember, List(Of Long)))info = kvp.Key.ToStringDim plist As List(Of Long) = kvp.ValueFor Each fa As Long In plistDim ojbid = faNext
End While

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

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

相关文章

Python 插入、替换、提取、或删除Excel中的图片

Excel是主要用于处理表格和数据的工具,我们也能在其中插入、编辑或管理图片,为工作表增添视觉效果,提升报告的吸引力。本文将详细介绍如何使用Python操作Excel中的图片,包含以下4个基础示例: 文章目录 Python 在Excel…

【期末复习】微信小程序复习大纲

前言: 这周开始进入期末复习周,没时间看C/C、linux等知识了,先把期末考试必考的知识捋一遍。 目录 第一章 微信小程序入门 一、填空题 二、判断题 三、选择题 四、简答题 第二章 微信小程序页面制作 一、填空题 二、判…

java.lang.UnsupportedClassVersionError

一、问题描述 在本地打包后,在服务器上运行Jar包,出现: Exception in thread "main" java.lang.UnsupportedClassVersionError: XXX has been compiled by a more recent version of the Java Runtime (class file version 55.0),…

.NET 漏洞情报 | 某整合管理平台SQL注入

01阅读须知 此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失&#xf…

AI-算力集群通往AGI

背景: 自GPT-4发布以来,全球AI能力的发展势头有放缓的迹象。 但这并不意味着Scaling Law失效,也不是因为训练数据不够,而是结结实实的遇到了算力瓶颈。 具体来说,GPT-4的训练算力约2e25 FLOP,近期发布的几个…

驱使ai学习搭子,写出一份“完美”的代码“文档”

自己把控“核心关键”,ai会把文档写得比您预想的“完美”。 (笔记模板由python脚本于2024年07月04日 10:44:39创建,本篇笔记适合喜欢结伴ai学习的coder翻阅) 【学习的细节是欢悦的历程】 Python 官网:https://www.python.org/ Free&#xff…

入深户考什么中级职称好?这个首选!

如果你学历不够,又想入户深圳的话,不妨试试通过考取一个中级职称证书入户深圳,职称证书是低学历人群入户深圳的热门方式之一。 虽然可以用来入户的证书很多,但是没有比系统集成项目管理工程师更容易考更适合入户的了!…

PHP房产小程序微信小程序系统源码

🏠—— 购房租房,一“指”搞定🏡 🔍【开篇:房产新视界,尽在掌握】 在这个信息爆炸的时代,找房子不再是一场漫长的奔波。有了“房产微信小程序”,无论是购房还是租房,都…

Java之类的生命周期

1.加载(Loading) Java虚拟机(JVM)通过类加载器根据类的全限定名通过不同渠道以二进制流的方式获取字节码信息并读取到内存中。类加载器在加载完类之后,Java虚拟机会将字节码中的信息保存到方法区中,生成一…

SVD求解超定方程

SVD求解超定方程: 正交矩阵的保范性:乘一个正交矩阵,其模大小不变,可以想象成乘一个旋转矩阵。 ∥ A x − b ∥ 2 2 ∥ U [ Σ 0 ] V T x − b ∥ 2 2 (两边同时乘 U T ,不改变模大小) ∥ [ Σ 0 ] V T x…

【PCIe】P2P DMA

PCIe P2P (peer-to-peer communication)是PCIe的一种特性,它使两个PCIe设备之间可以直接传输数据,而不需要使用主机RAM作为临时存储。如下图3的走向 比如EP1要发送和数据给EP2,操作流程如下: 1. 打开EP1的dma控制器;--client侧 …

配置jupyter时出现问题?怎么办?

在自己创建的虚拟环境(nmjpytorch)安装完jupyter,没有跳转到链接,问题如图: 解决方法: 1、查看自己的tornado版本为5.1.1,坑太高了,降低版本为4.5.3 2、卸载tornado-5.1.1 3、安装t…

首个早上提档晚上撤档的电影-《野孩子》——浔川电影报

同一天提档又撤档! 7月3日晚上10点,电影野孩子 发声明官宣撤档,“由于后期进度原因,电影《野孩子》将取消7月10日的公映安排,我们向各影管院线的同仁及所有观众朋友们致以最诚挚的歉意,谢谢大家这段时间的…

firewalld(7)NAT、端口转发

简介 在前面的文章中已经介绍了firewalld了zone、rich rule等规则设置,并且在iptables的文章中我们介绍了网络防火墙、还有iptables的target,包括SNAT、DNAT、MASQUERADE、REDIRECT的原理和配置。那么在这篇文章中,将继续介绍在firewalld中的NAT的相关配…

git常用命令速查表

Git相关概念简述 版本库:git在本地开辟的一个存储空间,一般在 .git 文件里。工作区(workspace): 就是编辑器里面的代码,我们平常开发直接操作的就是工作区。暂存区(index/stage):暂时存放文件的…

如何用Python实现三维可视化?

Python拥有很多优秀的三维图像可视化工具,主要基于图形处理库WebGL、OpenGL或者VTK。 这些工具主要用于大规模空间标量数据、向量场数据、张量场数据等等的可视化,实际运用场景主要在海洋大气建模、飞机模型设计、桥梁设计、电磁场分析等等。 本文简单…

告别写作难题,这些AI写作工具让你文思泉涌

在现实生活中,除了专业的文字工作者,各行各业都避免不了需要写一些东西,比如策划案、论文、公文、讲话稿、总结计划……等等。而随着科技的进步,数字化时代的深入发展,AI已经成为日常工作中必不可少的工具了&#xff0…

学习LLM的随笔

1、信息量、信息熵、交叉熵和困惑度 注:因为真实分布的概率为1,所以在分类任务中交叉熵可以简化为上述形式。 (1)信息熵:信息熵中使用 l o g 2 ( p ( x ) ) log_2(p(x)) log2​(p(x)) 来表示对 x x x 编码需要的…

Linux Vim 最全面教程(Linux)

文章目录 前言一、vim工作模式1、命令模式2、编辑模式3、末行模式 二、常用其他按键说明总结 前言 vim是一款功能文本编辑器,也是早年vi编辑器的加强版,它的最大特色就是使用命令进行编辑,完全脱离了鼠标的操作。代码补全、编译和错误跳转等…

torch.where()

API和用法: torch.where(condition, x, y) -> Tensorcondition:判断条件,一个布尔类型的张量,表示条件。 若当前index满足条件,则取x中index对应的元素 若当前index不满足条件,则取y中index对应的元…