get_flyingOperator().flyTo定位有误

0 投票

使用产品: 9D iclient3D for plugin

问题描述:

1. 在三维场景中使用飞行路线中的相机快照获取指定位置的相机参数,其中高度为64.68

2. 使用js加载场景,根据步骤1中获取的相机参数构造camera

3. 调用scene.set_firstCamera(camera),定位位置无误

4. 为实现飞行效果,调用scene.get_flyingOperator().flyTo(camera),但无法飞行到指定位置,定位的高     度为 11.87,与预期高度64.68不一致

5. 代码如下:

var camera = new SuperMap.Web.Realspace.Camera(117.24229564007618,29.321738790333974,64.687640769407153);
camera.set_heading(350.57742034491622);
camera.set_tilt(79.427649718366553);
camera.set_altitudeMode(2);
// scene.set_firstPersonCamera(camera);
scene.get_flyingOperator().flyTo(camera); // 飞行终点的实际高度为11.87,与预期不一致

6月 7, 2018 分类:  483次浏览 | 用户: zht1316 (1 分)

1个回答

0 投票
您好,您取出的相机是第一人称的参数,所以设置scene.set_firstCamera是对的,而scene.get_flyingOperator().flyTo飞过去是以第三人称看你传的对象的,所以不一样。

你具体需求是什么,要实现飞行可以用flymanager啊
6月 7, 2018 用户: 胡林 登峰造极 (5,985 分)
默认情况下,打开场景后,直接到了场景的初始视点C0。

想实现的效果是:打开场景后,从俯瞰地球的位置,慢慢飞行到场景中的位置C0

如果使用flymanager的话,是不是需要创建飞行路线?
...