From 3202b7e819822f8c9320e549de1b159f497906d7 Mon Sep 17 00:00:00 2001
From: guanqb <18720758508@163.com>
Date: Wed, 17 Aug 2022 11:53:53 +0800
Subject: [PATCH] 动态显示地图标记

---
 src/components/map/index.vue |   91 +++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 87 insertions(+), 4 deletions(-)

diff --git a/src/components/map/index.vue b/src/components/map/index.vue
index 9496f5f..a16a2f4 100644
--- a/src/components/map/index.vue
+++ b/src/components/map/index.vue
@@ -5,6 +5,7 @@
 
 <script>
 
+
 // 图层变量做声明
 var farmRegionLayer = null
 var plotRegionLayer = null
@@ -13,6 +14,10 @@
 var addPlotLayers = []
 
 var siteEntitylayers = null
+var siteEntitylayers1 = null
+var siteEntitylayers2 = null
+var siteEntitylayers3 = null
+var siteEntitylayers4 = null
 var sitePositionsArray = []
 
 export default {
@@ -59,6 +64,14 @@
 
             siteEntitylayers = new global.DC.VectorLayer('siteEntitylayers')
             global.viewer.addLayer(siteEntitylayers)
+            siteEntitylayers1 = new global.DC.VectorLayer('siteEntitylayers1')
+            global.viewer.addLayer(siteEntitylayers1)
+            siteEntitylayers2 = new global.DC.VectorLayer('siteEntitylayers2')
+            global.viewer.addLayer(siteEntitylayers2)
+            siteEntitylayers3 = new global.DC.VectorLayer('siteEntitylayers3')
+            global.viewer.addLayer(siteEntitylayers3)
+            siteEntitylayers4 = new global.DC.VectorLayer('siteEntitylayers4')
+            global.viewer.addLayer(siteEntitylayers4)
 
             // 判断是否支持图像渲染像素化处理
             if (global.DC.Namespace.Cesium.FeatureDetection.supportsImageRenderingPixelated()) {
@@ -214,6 +227,9 @@
                         </div>
                         `
             )
+
+
+
             divIcon.attrParams = item
             farmLogoLayer.addOverlay(divIcon)
 
@@ -321,9 +337,22 @@
             billboard.on(global.DC.MouseEventType.CLICK, (e) => {
                 that.$parent.plotDetailsPopupShow(e.overlay.attrParams)
             })
-
-            siteEntitylayers.addOverlay(label)
-            siteEntitylayers.addOverlay(billboard)
+            if (!item.dictTypeNum) {
+                siteEntitylayers.addOverlay(label)
+                siteEntitylayers.addOverlay(billboard)
+            } else if (item.dictTypeNum == 1) {
+                siteEntitylayers1.addOverlay(label)
+                siteEntitylayers1.addOverlay(billboard)
+            } else if (item.dictTypeNum == 2) {
+                siteEntitylayers2.addOverlay(label)
+                siteEntitylayers2.addOverlay(billboard)
+            } else if (item.dictTypeNum == 3) {
+                siteEntitylayers3.addOverlay(label)
+                siteEntitylayers3.addOverlay(billboard)
+            } else if (item.dictTypeNum == 4) {
+                siteEntitylayers4.addOverlay(label)
+                siteEntitylayers4.addOverlay(billboard)
+            }
 
             sitePositionsArray.push({ center, name: item.name, id: item.id })
         },
@@ -451,7 +480,61 @@
                 centerLonLat = [Number(centerLongitude), Number(centerLatitude)]
             }
             return centerLonLat
-        }
+        },
+        // 隐藏农场标记图层
+        hiddenFarmLayer () {
+            farmLogoLayer.show = false
+            farmRegionLayer.show = false
+        },
+        // 显示农场标记图层
+        showFarmLayer () {
+            farmLogoLayer.show = true
+            farmRegionLayer.show = true
+        },
+        // 隐藏地块图层
+        hiddenPlotLayer () {
+            plotRegionLayer.show = false
+        },
+        // 显示地块图层
+        showPlotLayer () {
+            plotRegionLayer.show = true
+        },
+        // 隐藏监控图层
+        hiddenJKLayer () {
+            siteEntitylayers.show = false
+        },
+        // 显示监控图层
+        showJKLayer () {
+            siteEntitylayers.show = true
+        },
+        // 隐藏气象图层
+        hiddenQXLayer () {
+            siteEntitylayers1.show = false
+            siteEntitylayers2.show = false
+        },
+        // 显示气象图层
+        showQXLayer () {
+            siteEntitylayers1.show = true
+            siteEntitylayers2.show = true
+        },
+        // 隐藏水质图层
+        hiddenSZLayer () {
+            siteEntitylayers3.show = false
+        },
+        // 显示水质图层
+        showSZLayer () {
+            siteEntitylayers3.show = true
+        },
+        // 隐藏土壤图层
+        hiddenTRLayer () {
+            siteEntitylayers4.show = false
+        },
+        // 显示土壤图层
+        showTRLayer () {
+            siteEntitylayers4.show = true
+        },
+
+
     }
 }
 </script>

--
Gitblit v1.9.3