首页 / 浏览问题 / 三维GIS / 问题详情
超图webgl版与超图桌面版相机姿态如何同步
1EXP 2022年09月05日
问题需求:在超图桌面版中,取了了一个相机点位(含经纬度坐标,相机方向姿态)存入数据库中,web端读取数据库,在超图webgl中加载这个点,需求希望,点位及朝向能与桌面版中的一样。
目前,桌面版中相机俯视的话,可以达到这个效果,但是仰视的话,相机位置则会不一致。

请问以上问题要怎么解决?

1个回答

您好,

您所说的仰视相机位置不一致

是指视觉效果上经纬度发生了变化还是俯仰角看起来不对?

因为正常情况来说,俯仰角和经纬度确认之后是没有问题的。

您确认一下您设置的经纬度和俯仰角是否一致呢。
4,151EXP 2022年09月05日
我想表达的是,当我在C端中取一个视角位置后,该视角位置存到数据库,B端读取视角位置定位后,展示的效果跟C端的不一样,相机不是往前推了,就是往后推了。请问,怎么才能使得B端读取C端的点,所展示的相机点位和方向姿态是一致的呢?

webgl中的偏转角等均是以弧度为单位的。

具体示例可以参考webgl api的camera类setView方法。

相关代码如下:

// 2 通过方位角、俯仰角、滚动角设置视图。
viewer.camera.setView({
    destination : cartesianPosition,
    orientation: {
        heading : Cesium.Math.toRadians(90.0), // east, default value is 0.0 (north)
        pitch : Cesium.Math.toRadians(-90),    // default value (looking down)
        roll : 0.0                             // default value
    }
});

如果还是不行,您这边确认一下您说的往前推和往后推是否是随机的。

因为桌面端和webgl端是两种语言。相机相较于坐标点的位置可能会有偏差,但是就算有,也肯定是固定规律的。

...