import store from "../../../store"; import model from "./model"; const mapViewer = { leftClick: null, rightClick: null, addClick() { this.addLeftClick(); this.addRightClick(); }, addLeftClick() { this.leftClick = new Cesium.ScreenSpaceEventHandler(window.Viewer.canvas); this.leftClick.setInputAction(function (event) { let cartesian = window.Viewer.camera.pickEllipsoid(event.position); let cartographic = Cesium.Cartographic.fromCartesian(cartesian); let lng = Cesium.Math.toDegrees(cartographic.longitude); // 经度 let lat = Cesium.Math.toDegrees(cartographic.latitude); // 纬度 let alt = cartographic.height; // 高度,椭球面height永远等于 let coordinate = { longitude: Number(lng.toFixed(6)), latitude: Number(lat.toFixed(6)), altitude: Number(alt.toFixed(2)), heading: 0, pitch: 0, roll: 0, scale: 1, }; if(store.state.addModelFlag){ model.setModelCoord(coordinate); } }, Cesium.ScreenSpaceEventType.LEFT_CLICK) }, addRightClick() { this.rightClick = new Cesium.ScreenSpaceEventHandler(window.Viewer.canvas); this.rightClick.setInputAction(function (event) { let pickedObject = window.Viewer.scene.pick(event.position); console.log(pickedObject) }, Cesium.ScreenSpaceEventType.RIGHT_CLICK) }, } export default mapViewer;