组件开发三维场景如何实现缩放至某要素

0 投票
185 浏览

在组件开发中如何实现类似于桌面端三维场景中的 关联浏览属性,点击属性表某一行缩放至该要素范围并高亮显示该要素? 我使用EnsureVisuble缩放没反应

最新提问 11月 8, 2018 分类:  185次浏览 | 用户: 123bu简单1 初出茅庐 (51 分)

1个回答

0 投票
 
已采纳
你好,确认一下你传入的范围对不对(rec_DX.Bounds),比如上下左右全为0,又或者范围不在-180°----180°,-90° ----90°的范围之内。
最新回答 11月 8, 2018 用户: 胡林 登峰造极 (5,829 分)
采纳于 11月 9, 2018 用户:123bu简单1
我看了下坐标范围,是带投影的rec_DX.Bounds = {Left=414823.507801631,Bottom=3894753.98716998,Right=414829.358226049,Top=3894755.75129306},需要转为经纬度吗?
当然需要,因为球面场景的坐标范围是-180°----180°,-90° ----90°的范围之内。
但是我的数据坐标系是投影坐标,不是经纬度,如果我用CoordSysTranslator.Convert转坐标的话,这个recDX_Bounds是Rectange2D类型,不是Geometry类型,也没法将这个外接矩形的范围转坐标系
CoordSysTranslator.Convert 方法 (Geometry, PrjCoordSys, PrjCoordSys, CoordSysTransParameter, CoordSysTransMethod)传入几何对象,然后把转换的结果Geometry.Bounds作为参数去定位。
这个已解决,但是我的三维模型有高程,是在高度一百多米,我点击定位的时候会定位的相机高度很低,只有几米,我想定位到有高度的范围,可以看到我的模型,而且请问如何实现缩放到这个范围后设置我定位的这个要素对象处于被选中状态?
高度问题已解决,设置了相机的高度,还有个问题是如何设置三维场景中某对象被选中? 就是我在属性表中点击了属性,对应的要素在场景中高亮显示
...