ArcGISServer将点图层发布成Globe服务,AE开发中自定义识别工具,读取点数据信息。
1) 通过Locate方法获取图层对象,图层对象中的SearchOID就是你点中的要素Objectid。
2) 通过GlobeServer.Identify读取结果集IGlobeServerIdentifyResults。
 
代码如下:
 public override void OnMouseDown(int Button, int Shift, int X, int Y)
{
if (Button != 1) return; //Get the element that the user selects
ESRI.ArcGIS.Geometry.IPoint ppPoint = new ESRI.ArcGIS.Geometry.PointClass();
ESRI.ArcGIS.Geometry.IZAware zAware = ppPoint as ESRI.ArcGIS.Geometry.IZAware;
zAware.ZAware = true;
object ppObject;
object ppOwner;
globeDisplay.Locate(globeDisplay.ActiveViewer, X, Y, false, false, out ppPoint, out ppOwner, out ppObject); if (ppPoint == null) return; if (!(ppOwner is IGlobeServerLayer)) return; Help_Globe.FlashPoint(ppPoint); gLayer = ppOwner as IGlobeServerLayer;
IGlobeLayerInfo gLayeInfo = gLayer.GlobeLayerInfo; if (gLayeInfo.Name != "3dd文件中的点图层名称") return; IGlobeServerIdentifyResults results = gLayer.GlobeServer.Identify(gLayer.GlobeServerLayerID, gLayer.SearchOID, gLayeInfo.Extent.Envelope);
if (results.Count > 0)
{
IGlobeServerIdentifyResult result = results.get_Element(0);
object dwmc = result.Properties.GetProperty("DW_MC"); if (Convert.IsDBNull(dwmc) || dwmc == null) return; FormWuZhongInfo dlg = new FormWuZhongInfo(dwmc.ToString(), dwmc.ToString());
dlg.Text = dwmc.ToString();
dlg.ShowDialog(); }
return; }

  

ArcGlobe点击IGlobeServerLayer图层读取信息的更多相关文章

  1. 伟景行 citymaker 从入门到精通(3)——点击地图获取坐标,点击模型获取模型信息和属性信息

    在地图上点击要素查看要素信息,也就是identify功能 script部分 // 通过枚举索引获取枚举名称 function getEnumTextByIdx(enumObj, idx) { for ...

  2. 简析Geoserver中获取图层列表以及各图层描述信息的三种方法

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.背景 实际项目中需要获取到Geoserver中的图层组织以及各图层 ...

  3. mp3 音频 音乐 tag ID3 ID3V1 ID3V2 标签 读取信息 获得图片 jpeg bmp 图片转换等

    mp3 音频 音乐 tag ID3 ID3V1 ID3V2 标签 读取信息 获得图片 jpeg bmp 图片转换(上) MP3文件格式(二)---ID3v2 图:ID3V1标签结构 图:ID3V2标签 ...

  4. sa命令从/var/account/pacct原始记账数据文件读取信息并汇总

    sa命令从/var/account/pacct原始记账数据文件读取信息并汇总

  5. f-stack中ipc传递指针从应用中读取信息时挂掉

    f-stack中ipc传递指针从应用中读取信息时挂掉 如:创建bridge0./ifconfig bridge0 create./ifconfig f-stack-0 down./ifconfig f ...

  6. XML读取信息并显示

    这个类命名叫Message.cs namespace Common { public class Message { /// <summary> /// 信息编号 /// </sum ...

  7. C#读取信息备份

    class Program { static void Main(string[] args) { var wc = new WebClient(); var html = wc.DownloadSt ...

  8. DataAnnotations里DisplayAttribute和 ValidationAttribute 如何从资源文件读取信息,显示多语言

    这个是我们常见的AccountModel代码 public class ChangePasswordModel { [Required] [DataType(DataType.Password)] [ ...

  9. Android蓝牙BLE开发,扫描、连接、发送和读取信息;

    1.BLE开发权限 Android蓝牙BLE开发须打开蓝牙权限和6.0位置权限: <uses-permission android:name="android.permission.B ...

随机推荐

  1. 8天学通MongoDB——第三天 细说高级操作

    原文地址:http://www.cnblogs.com/huangxincheng/archive/2012/02/21/2361205.html 今天跟大家分享一下mongodb中比较好玩的知识,主 ...

  2. cocos2d游戏界面卡住声音正常播放的问题分析

    cocos2d游戏界面卡住声音正常播放的问题分析 从目前已知的情况看,出现这种情况只可能是设备的内存不够导致的. 从代码上来说内存不够时会调用AppController的“- (void)applic ...

  3. 李洪强iOS开发之计算数组的最大最小值

    // //  ViewController.m //  A21 - 李洪强 - 输出参数 // //  Created by vic fan on 16/7/3. //  Copyright © 20 ...

  4. <iostream> 和 <iostream.h>的区别 及 Linux下编译iostream.h的方法

    0.序言 其实2者主要的区别就是iostream是C++标准的输入输出流头文件,而iostream.h是非标准的头文件. 标准头文件iostream中的函数属于标准命令空间,而iostream.h中的 ...

  5. C++不能显式调用构造函数,会生成匿名对象,这点与Java完全不一样!

    Java可以直接调用同名构造函数,仅仅起初始化的功能,并不构造新的对象,但是C++里面没有.看一下这段代码: class A { public: A() { printf("A() \n&q ...

  6. VS2010/MFC编程入门之四(MFC应用程序框架分析)

    VS2010/MFC编程入门之四(MFC应用程序框架分析)-软件开发-鸡啄米 http://www.jizhuomi.com/software/145.html   上一讲鸡啄米讲的是VS2010应用 ...

  7. EXT实现表格斑马线

    Ext.grid.GridPanel 单双行颜色样式(斑马线)2014-04-03 11:25 1078人阅读 评论(0) 收藏 举报分类:ExtJs(36)Ext.grid.GridPanel st ...

  8. JS可改变列宽table

    <!DOCTYPE HTML> <html> <head> <meta charset="gbk"> <title>ta ...

  9. 10位IT领袖给应届毕业生的10条忠告

    10位IT领袖给应届毕业生的10条忠告,在走向独立和自主的伟大征程中,吸取他们的经验. 在毕业生们迈出象牙塔之时,他们应该听从哪些人的建议?在走向独立和自主的伟大征程中,他们该吸取哪些教训?听一听各领 ...

  10. 锁定方式SDE中插入要素

    [C#] public static void LoadOnlyModeInsert(IFeatureClass featureClass, List < IGeometry > geom ...