首页 > 其他 > 详细

Cesium 获得坐标和当前相机视角

时间:2020-08-01 00:18:33      阅读:724      评论:0      收藏:0      [点我收藏+]
 

我开发时用的最多的一个方法,为的是获得具体点的坐标和记录当前相机视角,一部分代码是什么意思我也忘了,反正好用就行;

var arrLoc = [];
var pickPosition = { x: null, y: null }
var handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);  //定义事件
handler.setInputAction(function (movement) {


    // screenLocation.x = movement.position.x;
    // screenLocation.y = movement.position.y;


    var cartesian = viewer.camera.pickEllipsoid(
        movement.position,
        scene.globe.ellipsoid
    );
    if (cartesian) {
        var cartographic = Cesium.Cartographic.fromCartesian(cartesian);
        var longitudeString = Cesium.Math.toDegrees(
            cartographic.longitude
        ).toFixed(2);                               //要更高的精度就修改保留的小数位数
        var latitudeString = Cesium.Math.toDegrees(
            cartographic.latitude
        ).toFixed(2);                               //同上


        pickPosition.x = longitudeString;
        pickPosition.y = latitudeString;
        let cf = { x: parseFloat(pickPosition.x), y: parseFloat(pickPosition.y) }


        console.log(cf) //鼠标点击位置


        var a = {
            position: viewer.camera.position,
            heading: viewer.camera.heading,
            pitch: viewer.camera.pitch
        }
        console.log(a)  //当前视角
    }
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);

 

Cesium 获得坐标和当前相机视角

原文:https://www.cnblogs.com/flashing-magic/p/13412846.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!