首页 / 浏览问题 / 组件GIS / 问题详情
请问.net iobjects中如何获得OSGB倾斜摄影上的某一点高程
29EXP 2021年10月10日
我有一个SHP面数据,叠加到OSGB上,如何获得每一个面中心点的位置在OSGB上的高程呢。

Scene.PixelToGlobe 方法只能从屏幕点击点获得高程,我现在得到每一个GEOMETRY的InnerPoint,如何通过坐标点获得高程呢。

1个回答

您好,点数据获取高程的话可以使用提取高度的方法,

API:CacheProcessor3D.GeometryMatch

希望可以帮助到您!
10,758EXP 2021年10月11日
谢谢!  但是我试了这个效率太慢了   仅一个点就要算将近一分钟   有没有提高效率的办法呢?
一分钟?不会叭。。。我之前测过一百多个点的,时间也比较正常。

你在vs里开性能分析断点什么的看看时间是在哪一步上嘞?
GeoPoint geoPoint = new GeoPoint();
geoPoint.X = geometryT.InnerPoint.X;
geoPoint.Y = geometryT.InnerPoint.Y;

//计算当前GEOMETRY的底部高程
List<Geometry3D> geometry3D = CacheProcessor3D.GeometryMatch(scpPath, new List<Geometry> { geometryT }, 1);

就CacheProcessor3D.GeometryMatch这一行代码就要花40多秒。。。

是不是因为我的OSGB倾斜摄影6G太大了?

还是因为插值采样距离设置为1有问题?

还是可以把OSGB缓存一下之类的能提高速度?
我通过scene.GetHeight获取高程了   这个方法快一些   谢谢啦!
...