博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
利用IIdentify接口实现点选和矩形选择要素
阅读量:5085 次
发布时间:2019-06-13

本文共 1185 字,大约阅读时间需要 3 分钟。

原文

Identify接口定义了获得要素图层单个要素的属性的捷径方法。它有一个Identify方法,返回一个IArray数组对象。

将下列代码放入MouseDown事件中,可以实现点选或者矩形选择要素。

IMap pMap;IPoint pPoint;pMap = axMapControl1.Map;pPoint = axMapControl1.ToMapPoint(e.x, e.y);IIdentify pIdentify;pIdentify = (IIdentify)pMap.get_Layer(0);IArray pIDArray;IFeatureIdentifyObj pFeatIdObj;IIdentifyObj pIdObj;//点选IEnvelope pEnv=new EnvelopeClass();pEnv =axMapControl1.ActiveView.Extent;pEnv.Height= 100;pEnv.Width  = 100;pEnv.CenterAt(pPoint);pIDArray = pIdentify.Identify(pEnv);//矩形选择 //IEnvelope testIRectangleElement;//testIRectangleElement = axMapControl1.TrackRectangle();//pIDArray = pIdentify.Identify(testIRectangleElement);//i = pIDArray.Count;if (pIDArray != null){    for (int i = 0; i <= pIDArray.Count; i++)    {        pFeatIdObj = (IFeatureIdentifyObj)pIDArray.get_Element(i);        pIdObj = (IIdentifyObj)pFeatIdObj;        pIdObj.Flash(axMapControl1.ActiveView.ScreenDisplay);        //消息显示查询目标的信息        MessageBox.Show("Layer:" + pIdObj.Layer.Name + "Feature:" + pIdObj.Name);    }}else{    MessageBox.Show("No feature identified.");}}

 

此外,有关使用Identify,实现点击查询并闪烁显示,并把查询要素的信息通过DataGridView显示出来。可参考本博文文章。

 

转载于:https://www.cnblogs.com/arxive/p/6113655.html

你可能感兴趣的文章
代码实现导航栏分割线
查看>>
大数据学习系列(8)-- WordCount+Block+Split+Shuffle+Map+Reduce技术详解
查看>>
Mysql性能调优
查看>>
ES6内置方法find 和 filter的区别在哪
查看>>
Android实现 ScrollView + ListView无滚动条滚动
查看>>
硬件笔记之Thinkpad T470P更换2K屏幕
查看>>
getElement的几中属性介绍
查看>>
HTML列表,表格与媒体元素
查看>>
设计器 和后台代码的转换 快捷键
查看>>
STL容器之vector
查看>>
数据中心虚拟化技术
查看>>
复习文件操作
查看>>
SQL Server 使用作业设置定时任务之一(转载)
查看>>
第二阶段冲刺-01
查看>>
BZOJ1045 HAOI2008 糖果传递
查看>>
JavaScript 克隆数组
查看>>
eggs
查看>>
python3 生成器与迭代器
查看>>
java编写提升性能的代码
查看>>
list 容器 排序函数.xml
查看>>