From b1e9c826c1ba48c3dc263039699636ed2ba3be4e Mon Sep 17 00:00:00 2001
From: surprise <15810472099@163.com>
Date: 星期一, 27 十一月 2023 11:16:06 +0800
Subject: [PATCH] 版本更新,图层管理添加矢量数据下载,视角高度增加放大限制

---
 src/assets/js/Map/index.js |   62 +++++++++++++++++++++++--------
 1 files changed, 46 insertions(+), 16 deletions(-)

diff --git a/src/assets/js/Map/index.js b/src/assets/js/Map/index.js
index 0315911..b424a0f 100644
--- a/src/assets/js/Map/index.js
+++ b/src/assets/js/Map/index.js
@@ -29,31 +29,36 @@
       StaticFileBaseUrl: config.StaticFileBaseUrl,
       ellipsoidCoordinates: 'MOON2000',
       timeline: true,
+      shadowBackCul1: false
     });
-
- 
     this.earthCtrl.Viewer.scene.debugShowFramesPerSecond = true
     this.earthCtrl.coreMap.scene.screenSpaceCameraController.enableCollisionDetection = true;
     this.earthCtrl.Viewer.scene.globe.terrainExaggeration = 1.00001
- 
-
+    // this.earthCtrl.shadowMap.maximumDistance = 10000.0;
     window.earthCtrl = this.earthCtrl;
-
     window.Viewer = this.earthCtrl._Viewer;
-
     Viewer.scene.skyAtmosphere.show = false;
-
     window.Cesium = SmartEarth.Cesium;
-
     window.sgworld = earthCtrl;
-
     sgworld.Creator.SimpleGraphic.edit(true, { editProp: false });
+
+
+    // 鏈�灏忕缉鏀鹃珮搴︼紙绫筹級
+    Viewer.scene.screenSpaceCameraController.minimumZoomDistance =10000;
+    // 鏈�澶х缉鏀鹃珮搴︼紙绫筹級
+    Viewer.scene.screenSpaceCameraController.maximumZoomDistance = 5000000;
+
     //=======================
+    //闃村奖鍒嗘瀽
+    Viewer.scene.globe.lightingFadeOutDistance = 5.8e+7;
+    Viewer.scene.globe.enableLighting = false;
+    earthCtrl.shadows = false;
     //璁剧疆鐞冧綋棰滆壊
     window.Viewer.scene.globe.baseColor = new Cesium.Color.fromCssColorString('#A9A9A9');
     //娓呴櫎鎵�鏈夐粯璁ゅ浘灞� 
     window.Viewer.imageryLayers.removeAll();
     window.setLayer();
+
 
     Viewer.scene.globe.depthTestAgainstTerrain = false; // 寮�鍚繁搴︽祴璇�
     Viewer.animation.container.style.visibility = "hidden";
@@ -65,37 +70,62 @@
     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()
+          that.setEditTemporaryLayer(cartesian.id._id)
         }
 
       }
-    }, Cesium.ScreenSpaceEventType.LEFT_CLICK);
+    }, Cesium.ScreenSpaceEventType.LEFT_DOWN);
   },
   setEditTemporaryLayer(res) {
     // store.state.editTemporaryId = res;
     // console.log(store.state.editTemporaryId)
 
-    if (store.state.editTemporaryId) {
+    if (store.state.editTemporaryId && store.state.editTemporaryId == res) {
 
       store.state.setEditTemporaryShow = true;
     }
@@ -176,4 +206,4 @@
     console.log(moonPosition);
   },
 };
-export default InitMap;
+export default InitMap;
\ No newline at end of file

--
Gitblit v1.9.3