From 4e987f078c33f86f333cb8c02b91e71b2937a831 Mon Sep 17 00:00:00 2001
From: guanqb <18720758508@163.com>
Date: Sat, 17 Sep 2022 11:53:52 +0800
Subject: [PATCH] 地图标记方法

---
 src/components/map/index.vue |   32 +++++++++++++++++++++++++++++++-
 1 files changed, 31 insertions(+), 1 deletions(-)

diff --git a/src/components/map/index.vue b/src/components/map/index.vue
index d4209c8..76eca47 100644
--- a/src/components/map/index.vue
+++ b/src/components/map/index.vue
@@ -32,6 +32,8 @@
 
 <script>
 
+var siteEntitylayers = null
+
 export default {
     name: 'mapBox',
 
@@ -171,6 +173,11 @@
 
             // global.viewer.scene.globe.depthTestAgainstTerrain = true
 
+            // 已声明的图层添加到地图上
+            siteEntitylayers = new global.DC.VectorLayer('siteEntitylayers')
+            global.viewer.addLayer(siteEntitylayers)
+
+
             // 判断是否支持图像渲染像素化处理
             if (global.DC.Namespace.Cesium.FeatureDetection.supportsImageRenderingPixelated()) {
                 global.viewer.setOptions({
@@ -261,6 +268,14 @@
             console.log(isEleFullScreen())
         }
     },
+    provide () {
+        return {
+            test: this.test
+        }
+    },
+    updated () {
+        this.test()
+    },
     methods: {
         /**
          * @description: 全屏控制
@@ -297,8 +312,23 @@
 
                 this.isFullscreen = true
             }
+        },
+        /**
+        * 在图层中添加实体(点)
+        * @param {*} item 图标
+        * @param {*} url 图标地址
+        */
+        addSiteEntity (item, url) {
+            const billboard = new global.DC.Billboard(new global.DC.Position(Number(item.lon), Number(item.lat)), url)
+            billboard.size = [20, 28]
+            billboard.attrParams = item
+            siteEntitylayers.addOverlay(billboard)
+        },
+        test () {
+            console.log('map.test(MAP)!!!')
         }
-    }
+    },
+
 }
 </script>
 

--
Gitblit v1.9.3