From 0cae92b7ed0a080f74df6a30c0d68d2d0b45ec70 Mon Sep 17 00:00:00 2001
From: 少年 <1392120328@qq.com>
Date: 星期三, 13 三月 2024 11:32:49 +0800
Subject: [PATCH] Merge branch 'master' of http://103.135.160.14:9034/r/PM20221203225_MobileWeb

---
 src/components/sideMenu/layerTreePanel/layerTreePanel2.vue |  100 +++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 79 insertions(+), 21 deletions(-)

diff --git a/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue b/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue
index 710fc02..3d49580 100644
--- a/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue
+++ b/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue
@@ -1032,7 +1032,7 @@
               serverType: "geoserver",
             }),
           });
-          window.map.addLayer(layer);
+          window.mapapi.addLayer(layer);
           break;
         case "wfs":
           // wfs鏁版嵁
@@ -1855,10 +1855,11 @@
         layer.item.baseLayer = true;
       }
     },
+    // 甯傛斂鏉嗕綋鑱氬悎
     initLdgCluster(treeNode) {
       if (treeNode.checked == false) {
-        window.map.removeLayer(window.ldgclusterLayer);
-        window.map.removeLayer(window.tldgclusterLayer);
+        window.mapapi.removeLayer(window.ldgclusterLayer);
+        window.mapapi.removeLayer(window.tldgclusterLayer);
         return;
       }
       const loading = this.$loading({
@@ -1938,9 +1939,9 @@
           },
         });
 
-        window.map.addLayer(window.ldgclusterLayer);
+        window.mapapi.addLayer(window.ldgclusterLayer);
       } else if (treeNode.name == "璺悕鐗屾潌 ") {
-        window.tldgclusterLayer = new  ol.layer.Vector({
+        window.tldgclusterLayer = new ol.layer.Vector({
           source: clusterSource,
           style: function (feature) {
             var size = feature.get("features").length;
@@ -1992,17 +1993,30 @@
           },
         });
 
-        window.map.addLayer(window.tldgclusterLayer);
+        window.mapapi.addLayer(window.tldgclusterLayer);
       }
 
       // 灏嗚仛鍚堝眰鍔犲叆鍦板浘
-      window.map.removeLayer(window.jkspclusterLayer);
-      window.map.removeLayer(window.qiyeclusterLayer);
+      window.mapapi.removeLayer(window.jkspclusterLayer);
+      window.mapapi.removeLayer(window.qiyeclusterLayer);
       loading.close();
+      window.mapapi.getView().on("change:resolution", function (event) {
+        if (
+          window.mapapi.getView().getZoom() ==
+          window.mapapi.getView().getMaxZoom()
+        ) {
+          console.log("max");
+
+          clusterSource.setDistance(0);
+        } else {
+          clusterSource.setDistance(40);
+        }
+      });
     },
+    // 瑙嗛鐩戞帶鑱氬悎
     initCluster(treeNode) {
       if (treeNode.checked == false) {
-        window.map.removeLayer(window.jkspclusterLayer);
+        window.mapapi.removeLayer(window.jkspclusterLayer);
         return;
       }
       const loading = this.$loading({
@@ -2028,7 +2042,7 @@
 
       // 鍒涘缓鑱氬悎鏄剧ず鏍峰紡
       var styleCache = {};
-      window.jkspclusterLayer = new  ol.layer.Vector({
+      window.jkspclusterLayer = new ol.layer.Vector({
         source: clusterSource,
         style: function (feature) {
           var size = feature.get("features").length;
@@ -2036,7 +2050,7 @@
             return new ol.style.Style({
               image: new ol.style.Icon({
                 anchor: [0.5, 1],
-                src: "./static/SmartEarthSDK/Workers/image/xzspj/spjk.png",
+                src: "./static/SmartEarthSDK/Workers/image/xzspj/camera.png",
               }),
             });
           }
@@ -2082,11 +2096,23 @@
       });
 
       // 灏嗚仛鍚堝眰鍔犲叆鍦板浘
-      window.map.removeLayer(window.ldgclusterLayer);
-      window.map.removeLayer(window.tldgclusterLayer);
-      window.map.removeLayer(window.qiyeclusterLayer);
-      window.map.addLayer(window.jkspclusterLayer);
+      window.mapapi.removeLayer(window.ldgclusterLayer);
+      window.mapapi.removeLayer(window.tldgclusterLayer);
+      window.mapapi.removeLayer(window.qiyeclusterLayer);
+      window.mapapi.addLayer(window.jkspclusterLayer);
       loading.close();
+      window.mapapi.getView().on("change:resolution", function (event) {
+        if (
+          window.mapapi.getView().getZoom() ==
+          window.mapapi.getView().getMaxZoom()
+        ) {
+          console.log("max");
+
+          clusterSource.setDistance(0);
+        } else {
+          clusterSource.setDistance(40);
+        }
+      });
       // new Cesium.GeoJsonDataSource.load(
       //   treeNode.urls +
       //     "?version=1.3.0&request=GetFeature&format=json&typename=" +
@@ -2274,9 +2300,10 @@
           // });
         });
     },
+    //浼佷笟淇℃伅鑱氬悎
     qiyeCluster(treeNode) {
       if (treeNode.checked == false) {
-        window.map.removeLayer(window.qiyeclusterLayer);
+        window.mapapi.removeLayer(window.qiyeclusterLayer);
         return;
       }
       const loading = this.$loading({
@@ -2302,7 +2329,7 @@
 
       // 鍒涘缓鑱氬悎鏄剧ず鏍峰紡
       var styleCache = {};
-      window.qiyeclusterLayer = new  ol.layer.Vector({
+      window.qiyeclusterLayer = new ol.layer.Vector({
         source: clusterSource,
         style: function (feature) {
           var size = feature.get("features").length;
@@ -2378,12 +2405,43 @@
       });
 
       // 灏嗚仛鍚堝眰鍔犲叆鍦板浘
-      window.map.removeLayer(window.ldgclusterLayer);
-      window.map.removeLayer(window.tldgclusterLayer);
-      window.map.removeLayer(window.jkspclusterLayer);
-      window.map.addLayer(window.qiyeclusterLayer);
+      window.mapapi.removeLayer(window.ldgclusterLayer);
+      window.mapapi.removeLayer(window.tldgclusterLayer);
+      window.mapapi.removeLayer(window.jkspclusterLayer);
+      window.mapapi.addLayer(window.qiyeclusterLayer);
       loading.close();
+      window.mapapi.getView().on("change:resolution", function (event) {
+        if (
+          window.mapapi.getView().getZoom() ==
+          window.mapapi.getView().getMaxZoom()
+        ) {
+          clusterSource.setDistance(0);
+        } else {
+          clusterSource.setDistance(40);
+        }
+      }); 
+      // 鐩戝惉鍦板浘鍗曞嚮浜嬩欢
+      // window.mapapi.on("singleclick", function (e) {
+      //   var pixel = window.mapapi.getEventPixel(e.originalEvent);
+      //   var currentFeature = window.mapapi.forEachFeatureAtPixel(
+      //     pixel,
+      //     function (feature, layer) {
+      //       return feature;
+      //     }
+      //   );
+      //   if (currentFeature) {
+      //     var features = currentFeature.get("features");
+      //     if (features.length > 1) {
+      //       console.log(features);
+      //       window.alert("褰撳墠鑱氬悎鍦堜笅鍏辨湁" + features.length + "涓绱�");
+      //     }
+      //     if (features.length == 1) {
+      //       console.log(features);
 
+      //       window.alert("褰撳墠瑕佺礌鏈鑱氬悎锛屽彧鏈�" + features.length + "涓绱�");
+      //     }
+      //   }
+      // });
       // let dataSource;
       // if (treeNode.layer == "浼佷笟閾句紒涓�") {
       //   // console.log(store.qiyeJsonInfo);

--
Gitblit v1.9.3