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;
|