Cesium點擊獲取模型或者地形點的位置


Cesium點擊拾取模型高度

需求-點擊時存在模型則點擊事件獲取模型高度,沒有模型時獲取地形高度

版本cesium 1.7.0 ,vue 2.5x ,開啟Cesium地形服務

代碼

 viewer.screenSpaceEventHandler.setInputAction(function (clickEvent) {
            var ray1 = viewer.camera.getPickRay(clickEvent.position);
            var cartesian = viewer.scene.globe.pick(ray1, viewer.scene);
            console.log('地形高度點',cartesian);
            var pick = viewer.scene.pickPosition(clickEvent.position);
            var pickModel = viewer.scene.pick(clickEvent.position);
            if (pickModel && pick && !pickModel.id) {
                var height = Cesium.Cartographic.fromCartesian(pick).height;
                var lat = Cesium.Math.toDegrees(Cesium.Cartographic.fromCartesian(pick).latitude);
                var lng = Cesium.Math.toDegrees(Cesium.Cartographic.fromCartesian(pick).longitude);
                cartesian = Cesium.Cartesian3.fromDegrees(lng, lat, height);
                 console.log('模型高度點',cartesian);
            }
 }, Cesium.ScreenSpaceEventType.LEFT_CLICK);

本文轉自 https://blog.csdn.net/wo_buzhidao/article/details/106636282?spm=1001.2014.3001.5502,如有侵權,請聯系刪除。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM