From 7e6b37afd1295c71bca1de595426330aff88420d Mon Sep 17 00:00:00 2001
From: surprise <15810472099@163.com>
Date: 星期一, 08 一月 2024 09:55:53 +0800
Subject: [PATCH] 代码提交

---
 src/components/left/leftmenu.vue |   86 ++++++++++++++++++++++--------------------
 1 files changed, 45 insertions(+), 41 deletions(-)

diff --git a/src/components/left/leftmenu.vue b/src/components/left/leftmenu.vue
index d2536a3..2270aa1 100644
--- a/src/components/left/leftmenu.vue
+++ b/src/components/left/leftmenu.vue
@@ -1,15 +1,7 @@
 <template>
-  <div
-    @click="showLeftMenu"
-    :class="{ leftmenu: !isShowLeftPanel, leftmenu_active: isShowLeftPanel }"
-    class="leftmenustyle"
-  >
-    <span
-      class="closeLeftMenu"
-      v-if="isShowLeftPanel"
-      @click.stop="hideLeftMenu"
-      >脳</span
-    >
+  <div @click="showLeftMenu" :class="{ leftmenu: !isShowLeftPanel, leftmenu_active: isShowLeftPanel }"
+    class="leftmenustyle">
+    <span class="closeLeftMenu" v-if="isShowLeftPanel" @click.stop="hideLeftMenu">脳</span>
     <img class="openLeftMenu" v-else src="@/assets/img/left/souselist4.png" />
 
     <div class="layerTreeContainer" v-show="isShowLeftPanel">
@@ -18,7 +10,7 @@
           <el-radio :label="1">缁勭粐鏈烘瀯</el-radio>
           <el-radio :label="2">涓氬姟瑕佺礌</el-radio>
         </el-radio-group> -->
-        <span>鍥惧眰绠$悊</span> 
+        <span>鍥惧眰绠$悊</span>
         <!-- <div @click="setTreeDataChange(1)">涓氬姟</div>
         <div @click="setTreeDataChange(2)">涓氬姟</div> -->
       </div>
@@ -28,17 +20,8 @@
         <el-button size="small" @click="setTreeDataChange(2)">鍥惧眰2</el-button>
       </div> -->
       <div class="layerTree">
-        <el-tree
-          :data="treeData"
-          node-key="id"
-          ref="tree"
-          :default-checked-keys="arr"
-          style="min-width: 160px"
-          show-checkbox
-          :render-content="renderContent"
-          :default-expanded-keys="defaultExpanded"
-          @check="check"
-        ></el-tree>
+        <el-tree :data="treeData" node-key="id" ref="tree" :default-checked-keys="arr" style="min-width: 160px"
+          show-checkbox :render-content="renderContent" :default-expanded-keys="defaultExpanded" @check="check"></el-tree>
       </div>
     </div>
   </div>
@@ -57,6 +40,8 @@
 import { getmenu } from "../../api/api";
 import keys from "@/assets/poiKeys1";
 import store from "@/utils/store";
+import mapInfo from "../../assets/js/Layer/mapInfo";
+import mapGeo from "../../assets/js/Layer/mapGeo";
 
 let colorTool;
 let projectTreeData = [];
@@ -840,6 +825,7 @@
       // 鎵撳嬀閫変腑
       let isCheck = data.checkedKeys.indexOf(treeNode.id) > -1;
       this.setVisiable(treeNode, isCheck);
+      this.setGeoJSOnCheck(treeNode,isCheck);
       //閫変腑涔嬪悗浼犵粰vuex
       let selectedLayers = this.$refs.tree.getCheckedNodes();
       let filterSelectLayers = selectedLayers;
@@ -866,6 +852,11 @@
       // if (this.updateFlag) {
       return params;
       // }
+    },
+    setGeoJSOnCheck(treeNode, checked){
+      if(!checked){
+        mapGeo.delGeoSource(treeNode);
+      }
     },
     setVisiable(treeNode, checked) {
       if (treeNode.sourceType == "BJ2000") {
@@ -977,7 +968,7 @@
           height: 310,
           url: "./static/html/layerProp.html",
           fn: {
-            end: function () {},
+            end: function () { },
           },
         });
       } else if (data._children) {
@@ -1195,9 +1186,8 @@
               treeNode.name,
               {
                 id: treeNode.id,
-                url: `${treeNode.urls}/${treeNode.tile || "{z}/{x}/{y}"}.${
-                  treeNode.img || "png"
-                }`,
+                url: `${treeNode.urls}/${treeNode.tile || "{z}/{x}/{y}"}.${treeNode.img || "png"
+                  }`,
                 enablePickFeatures: false,
                 level: treeNode.Level,
                 minimumLevel: treeNode.minimumLevel,
@@ -1718,6 +1708,10 @@
             );
           }
           break;
+        case 'GEOJSON':
+          mapGeo.init(treeNode);
+      
+          break;
         case "wmse":
           // layer = sgworld.Creator.CreateWMSImageFeatureLayer(
           //   treeNode.name,
@@ -1736,6 +1730,12 @@
           //   true,
           //   function () {}
           // );
+          var that = this;
+          var getFeatureInfoFormat = new Cesium.GetFeatureInfoFormat("", null, function (html) {
+            // that.getFeatureInfo(html)
+            mapInfo.Init(html)
+          });
+
           layer = sgworld.Creator.createImageryProvider(
             treeNode.name,
             "wms",
@@ -1743,16 +1743,19 @@
               id: treeNode.id,
               url: treeNode.urls,
               level: treeNode.Level,
+              zIndex: 999,
               minimumLevel: treeNode.minimumLevel,
               maximumLevel: treeNode.maximumLevel,
-              enablePickFeatures: false,
-
               layers: treeNode.layer || "",
               alpha: treeNode.alpha,
               parameters: {
                 format: "image/png",
                 transparent: true,
+
               },
+              enablePickFeatures: true,
+              getFeatureInfoParameters: { info_format: 'text/html' },
+              getFeatureInfoFormats: [getFeatureInfoFormat],
             },
             "0",
             undefined,
@@ -1769,8 +1772,8 @@
           axios
             .get(
               treeNode.urls +
-                "?version=1.3.0&request=GetFeature&format=json&typename=" +
-                treeNode.layer
+              "?version=1.3.0&request=GetFeature&format=json&typename=" +
+              treeNode.layer
             )
             .then((data) => {
               let features = data.data.features;
@@ -2038,7 +2041,7 @@
               clampToGround: sgworld.Core.defaultValue(
                 treeNode.clampToGround,
                 treeNode.extrudedHeight === undefined &&
-                  treeNode.height === undefined
+                treeNode.height === undefined
               ),
               classificationType: treeNode.classificationType,
               near: sgworld.Core.defaultValue(treeNode.near, 0),
@@ -2169,7 +2172,7 @@
               de,
               "0",
               treeNode.checked,
-              function () {}
+              function () { }
             );
           } else if (treeNode.class === "polylineVolume") {
             de = {
@@ -2199,7 +2202,7 @@
               de,
               "0",
               treeNode.checked,
-              function () {}
+              function () { }
             );
           } else if (treeNode.class === "polyline") {
             de = {
@@ -2239,7 +2242,7 @@
                 de,
                 "0",
                 treeNode.checked,
-                function () {}
+                function () { }
               );
           } else if (treeNode.class === "polygon") {
             de = {
@@ -2272,7 +2275,7 @@
                 de,
                 "0",
                 treeNode.checked,
-                function () {}
+                function () { }
               );
           } else if (treeNode.class === "model") {
             de = {
@@ -2298,7 +2301,7 @@
               de,
               "0",
               treeNode.checked,
-              function () {}
+              function () { }
             );
           }
           layer && (treeNode.id = layer.treeobj.id);
@@ -2412,7 +2415,7 @@
           layer = sgworld.Creator.createS3MLayer(
             treeNode.urls,
             sgworld._Viewer.scene,
-            function () {}
+            function () { }
           );
           break;
         case "gltf":
@@ -2688,8 +2691,8 @@
       let imgUrl;
       new Cesium.GeoJsonDataSource.load(
         treeNode.urls +
-          "?version=1.3.0&request=GetFeature&format=json&typename=" +
-          treeNode.layer
+        "?version=1.3.0&request=GetFeature&format=json&typename=" +
+        treeNode.layer
       ).then((dataSource) => {
         // that.$set(treeNode, "disabled", false);
         Viewer.dataSources.add(dataSource);
@@ -3041,6 +3044,7 @@
   background-image: url("~@/assets/img/new/treeClose-y.png");
 
 }
+
 .leftmenu {
   background-image: url("~@/assets/img/new/treeClose.png");
   background-size: 100% 100%;
@@ -3100,7 +3104,7 @@
   background-color: rgba(255, 255, 255, 0.4) !important;
 }
 
-.el-tree /deep/ .is-current > .el-tree-node__content {
+.el-tree /deep/ .is-current>.el-tree-node__content {
   background-color: rgba(255, 255, 255, 0.4) !important;
   font-size: 14px;
 }

--
Gitblit v1.9.3