月球大数据地理空间分析展示平台-【前端】-月球2期前端
surprise
2023-10-19 9f51306b10520a2be30bedfe1b34c288cf770f43
src/assets/js/Map/index.js
@@ -31,11 +31,11 @@
      timeline: true,
    });
    this.earthCtrl.Viewer.scene.debugShowFramesPerSecond = true
    this.earthCtrl.coreMap.scene.screenSpaceCameraController.enableCollisionDetection = true;
    this.earthCtrl.Viewer.scene.globe.terrainExaggeration = 1.00001
    window.earthCtrl = this.earthCtrl;
@@ -65,26 +65,51 @@
    sgworld.Navigate.Stop(); //取消飞行状态
    sgworld.Navigate.setPosition(-1093596.38, 5729026.12, 4136590.41);
    this.addMouseLeftClickEvents();
    this.addMouseLeftDownEvents();
  },
  //鼠标左键点击事件添加
  addMouseLeftClickEvents() {
  addMouseLeftDownEvents() {
    if (window.handleLeftClick) {
      window.handleLeftClick.removeInputAction(
        Cesium.ScreenSpaceEventType.LEFT_CLICK
      ); //移除事件
      window.handleLeftClick = null;
    }
    const pickGlobeSlope = new SmartEarth.Cesium.PickGlobeSlope(earthCtrl.Viewer)
    window.handleLeftClick = new Cesium.ScreenSpaceEventHandler(
      window.Viewer.scene.canvas
    );
    var that = this;
    window.handleLeftClick.setInputAction(function (event) {
      const angle = pickGlobeSlope.pickSlope(event.position)
      if (store.state.slopeQueyFlag) {
        if (!store.state.showSlopeQuey) {
          store.state.showSlopeQuey = true;
        }
        store.state.slopeQueyValue = angle.toFixed(6);
      }
    }, Cesium.ScreenSpaceEventType.LEFT_CLICK);
  },
  //鼠标左键点击事件添加
  addMouseLeftClickEvents() {
    if (window.handleLeftDown) {
      window.handleLeftDown.removeInputAction(
        Cesium.ScreenSpaceEventType.LEFT_DOWN
      ); //移除事件
      window.handleLeftDown = null;
    }
    window.handleLeftDown = new Cesium.ScreenSpaceEventHandler(
      window.Viewer.scene.canvas
    );
    var that = this;
    window.handleLeftDown.setInputAction(function (event) {
      let cartesian = window.Viewer.scene.pick(event.position);
      if (Cesium.defined(cartesian)) {
        if (cartesian.id.shpType && cartesian.id.shpType == 'temporaryLayer') {
          that.setEditTemporaryLayer(cartesian.id._id)
        }
@@ -94,9 +119,9 @@
  setEditTemporaryLayer(res) {
    // store.state.editTemporaryId = res;
    // console.log(store.state.editTemporaryId)
    if (store.state.editTemporaryId && store.state.editTemporaryId  == res) {
    if (store.state.editTemporaryId && store.state.editTemporaryId == res) {
      store.state.setEditTemporaryShow = true;
    }
  },