怎样控制相机的经纬度不变

0 喜欢 0 不喜欢
87 浏览
三维插件的,怎样控制相机的经纬度不变?
最新提问 11月 20, 2017 分类:三维GIS | 用户: wupeiyuan115 牛刀小试 (131 分)

2 个回答

0 喜欢 0 不喜欢
您好,相机参数由5个参数构成,只要不改变其中的经度和纬度的参数,就不会改变相机的经纬度。
最新回答 11月 20, 2017 用户: 张阳名 名扬四海 (2,879 分)
我把相机的经纬度和高度定死了,然后改变相机的heading和tilt发现相机的经纬度会变化,求解??
相关代码呢?是说调试时看到参数已经变化了吗?
var camera1=scene.get_firstPersonCamera();
            camera1.set_longitude(116.47606833996217);
            camera1.set_latitude(39.97500769340765);

            camera1.set_altitude(78.3);
            camera1.set_heading(220);
            camera1.set_tilt(70);

            scene.set_firstPersonCamera(camera1);
            var camera= scene.get_camera();

然后有一个按钮,点击按钮之后相机旋转,可是相机的经纬度变化了。
相机旋转怎么写的?
var modelFly=function(mode)
            {
                var camera=scene.get_camera();
                var heading=camera.get_heading();
                if(mode=='L')
                {
                    var flyheading=heading+90;
                    if(flyheading>=360)
                    {
                        flyheading=flyheading-360;
                    }
                    camera.set_heading(flyheading);
                    scene.get_flyingOperator().flyTo(camera,200);
                }
                else if(mode=='R')
                {
                    var flyheading=heading-90;
                    if(flyheading<0)
                    {
                        flyheading=flyheading+360;
                    }
                    camera.set_heading(flyheading);
                    scene.get_flyingOperator().flyTo(camera,200);
                }
                
            }
把所有的firstPersonCamera都改成camera吧
0 喜欢 0 不喜欢
flyto的camera是第三人称的camera,而你获取的是第一人称的camera所以用了flyto的方法后,相机的经纬度会变。你获取camera之后然后在flyto就好了
最新回答 12月 6, 2017 用户: 宋翔 锋芒毕露 (421 分)
...