首页 / 浏览问题 / 三维GIS / 问题详情
怎样控制相机的经纬度不变
84EXP 2017年11月20日
三维插件的,怎样控制相机的经纬度不变?

2 个回答

您好,相机参数由5个参数构成,只要不改变其中的经度和纬度的参数,就不会改变相机的经纬度。
5,560EXP 2017年11月20日
我把相机的经纬度和高度定死了,然后改变相机的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吧
flyto的camera是第三人称的camera,而你获取的是第一人称的camera所以用了flyto的方法后,相机的经纬度会变。你获取camera之后然后在flyto就好了
887EXP 2017年12月06日
...