cesium进行模型高度测量的代码片段
生活随笔
收集整理的這篇文章主要介紹了
cesium进行模型高度测量的代码片段
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
主要參考 https://sandcastle.cesium.com/index.html?src=Picking.html
export function monitorMove() {const viewer = window.viewer;const scene = viewer.scene;const handler = new Cesium.ScreenSpaceEventHandler(scene.canvas);let previousPickedEntity = undefined;var labelEntity = viewer.entities.add({label: {show: false,showBackground: true,font: '12px monospace',horizontalOrigin: Cesium.HorizontalOrigin.LEFT,verticalOrigin: Cesium.VerticalOrigin.TOP,pixelOffset: new Cesium.Cartesian2(15, 0)}});handler.setInputAction(function (movement) {const modelEntity = scene.pick(movement.endPosition);var foundPosition = false;if (scene.mode !== Cesium.SceneMode.MORPHING) {var pickedObject = scene.pick(movement.endPosition);if (scene.pickPositionSupported && Cesium.defined(pickedObject)) {var cartesian = scene.pickPosition(movement.endPosition);if (Cesium.defined(cartesian)) {var cartographic = Cesium.Cartographic.fromCartesian(cartesian);var longitudeString = Cesium.Math.toDegrees(cartographic.longitude);var latitudeString = Cesium.Math.toDegrees(cartographic.latitude);var heightString = cartographic.height.toFixed(2);labelEntity.position = cartesian;labelEntity.label.show = true;labelEntity.label.text ='Lon: ' + (' ' + longitudeString) + '\u00B0' +'\nLat: ' + (' ' + latitudeString) + '\u00B0' +'\nAlt: ' + (' ' + heightString) + 'm';labelEntity.label.eyeOffset = new Cesium.Cartesian3(0.0, 0.0, -cartographic.height * (scene.mode === Cesium.SceneMode.SCENE2D ? 1.5 : 1.0));foundPosition = true;}}}if (!foundPosition) {labelEntity.label.show = false;}}, Cesium.ScreenSpaceEventType.MOUSE_MOVE); }總結
以上是生活随笔為你收集整理的cesium进行模型高度测量的代码片段的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UTAU - 完整无乱码汉化策略及资源配
- 下一篇: 【服务器】一次对Close_Wait 状