ArcEngine开发中关于获取IFeature对象Pfeature坐标的说明
2012-06-15 15:16
295 查看
由于项目,最近做了一个关于ArcEngine的项目,不呢来说该项目是没有说明难度的,但是今天下去被一个问题纠结了半天。特此与大家分享。废话不多说了,直接说问题吧。
因为要实现定位功能,那么大家肯定想的到用axmapcontrol1.extent = pFeature.extent来实现。对于线和面来说,那是没有问题的,直接定位到要素点,但是对于点要素怎么办呢,经过测试,确实点要素的extent为空,但是map的extent不改变,并没有报错,这是可以令人欣慰的。
但是楼主想如果我要获取这个点要素的点坐标该如何呢?!这个问题确实难倒过了。查了一下ArcEngine的接口库iFeature是可以as成IPoint的,但是此时楼主获取到的是一个Mutipoint类型的变量,而并非IPoint,这样直接转成Point系统会弹错,这个如何是好呢?!
想来想去终究没有什么好的办法,最后想了一个招,mutipoint类型是一个多点,即是一个范围,那么我获取到他的IEnvelope之后再获取范围的XYZ不久可以了?!正如楼主所想。确实是可以实现的,只是IEnvelope的MaxX、minx等都是一个值,这样便能获取到XYZ,通过XYZ直接构造成一个Ipoint类型即可。
因为要实现定位功能,那么大家肯定想的到用axmapcontrol1.extent = pFeature.extent来实现。对于线和面来说,那是没有问题的,直接定位到要素点,但是对于点要素怎么办呢,经过测试,确实点要素的extent为空,但是map的extent不改变,并没有报错,这是可以令人欣慰的。
但是楼主想如果我要获取这个点要素的点坐标该如何呢?!这个问题确实难倒过了。查了一下ArcEngine的接口库iFeature是可以as成IPoint的,但是此时楼主获取到的是一个Mutipoint类型的变量,而并非IPoint,这样直接转成Point系统会弹错,这个如何是好呢?!
想来想去终究没有什么好的办法,最后想了一个招,mutipoint类型是一个多点,即是一个范围,那么我获取到他的IEnvelope之后再获取范围的XYZ不久可以了?!正如楼主所想。确实是可以实现的,只是IEnvelope的MaxX、minx等都是一个值,这样便能获取到XYZ,通过XYZ直接构造成一个Ipoint类型即可。
相关文章推荐
- 关于通过GPS模块获取的坐标数据无法在Google地图上正确标记的问题说明
- 关于Android Studio集成Hbuilder开发个推项目不能获取Clientid的问题说明
- Swift - 获取屏幕点击坐标下所有对象(SpriteKit游戏开发)
- Spring开发,关于在TableItem上如何获取Gwt对象的问题
- 关于通过GPS模块获取的坐标数据无法在Google地图上正确标记的问题说明
- skyline的TerraExplorer api for js二次开发时,图层中的features无法获取或者features对象没有包含任何单个feature。
- Android开发关于必须正式签名才能让获取信息如何debug
- Arcengine 开发,FeatureClass新增feature时“The Geometry has no z-value”或"The Geometry has null z-value"的解决方案
- 关于Extjs4开发笔记(二)的补充说明
- java script 获取对象坐标
- 关于IFeatureClass和IFeatureLayer中的Search的区别
- 引用数组NSArray中对象与获取数组元素(Objective-C 开发范例)
- ECSHOP二次开发中关于文档后台菜单的功能说明
- 关于Android开发中Java对象序列化的一次测试
- javascript 事件对象 坐标事件说明
- 关于android开发中百度地图地址转换坐标信息的教程
- 关于Mstar手机开发中关于对flash实际空间大小的简单说明
- 关于Java的泛型在所声明的对象中如何获取class或者实例的方法的总结
- 关于ArcGIS与Silverlight开发中FeatureLayer没有FeatureSymbol属性的解决方法
- EL表达式获取数据/执行运算/获取web开发中的对象