From 8f85627f215bd0ee61db7a35ca9a83eaca1e892c Mon Sep 17 00:00:00 2001
From: surprise <15810472099@163.com>
Date: 星期三, 10 一月 2024 15:42:34 +0800
Subject: [PATCH] 代码更新

---
 src/assets/js/Layer/mapViewer.js |   42 +++++++++++++++++++++++++++++++++++++-----
 1 files changed, 37 insertions(+), 5 deletions(-)

diff --git a/src/assets/js/Layer/mapViewer.js b/src/assets/js/Layer/mapViewer.js
index b5795dc..7a5500c 100644
--- a/src/assets/js/Layer/mapViewer.js
+++ b/src/assets/js/Layer/mapViewer.js
@@ -1,4 +1,5 @@
 import store from "../../../store";
+import mapInfo from "./mapInfo";
 import model from "./model";
 const mapViewer = {
     leftClick: null,
@@ -10,7 +11,9 @@
     addLeftClick() {
         this.leftClick = new Cesium.ScreenSpaceEventHandler(window.Viewer.canvas);
         this.leftClick.setInputAction(function (event) {
-            let cartesian =  window.Viewer.camera.pickEllipsoid(event.position);
+            let nPickFeature = Viewer.scene.pick(event.position);
+            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); // 绾害
@@ -24,18 +27,47 @@
                 roll: 0,
                 scale: 1,
             };
-
-            if(store.state.addModelFlag){
+            store.state.coordinate = coordinate;
+            if (store.state.addModelFlag) {
                 model.setModelCoord(coordinate);
+
             }
+            if (store.state.isMeasureFlag) {
+                store.state.measureCoordObj = coordinate;
+                store.state.isShowMeasureCoord = true;
+            }
+            if (Cesium.defined(nPickFeature)) {
+                mapInfo.setRestLayer();
+                if (nPickFeature.id && nPickFeature.id.id == 'Rectangle')
+                    return
+
+                if (nPickFeature.id && nPickFeature.id.properties) {
+                    mapInfo.setGeoJsonInfo(nPickFeature.id.properties)
+
+                } else if (nPickFeature && nPickFeature.getProperty("name")) {
+                    var name = nPickFeature.getProperty("name");
+                    if (name == "DLJQT0007") {
+                        store.state.isShowVideo = true;
+                    } else if (name == "sensor001") {
+
+                    } else if (name == "DLLMJ0001") {
+                        store.state.isireamUrl = "/Data/html/hd3dmap.html?id=3493&type=8";
+                        store.state.isShowMenuCount = true;
+                    }
+                }
+            }
+            if (store.state.isQueryFalag) {
+
+                store.state.isQyeryCoord = 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)
+            store.state.isMeasureFlag = false;
         }, Cesium.ScreenSpaceEventType.RIGHT_CLICK)
     },
 }

--
Gitblit v1.9.3