From 0a0080a207a39e51a30a23a41c2054e842f36dae Mon Sep 17 00:00:00 2001
From: wangqi <magical1908@outlook.com>
Date: 星期二, 06 四月 2021 18:21:27 +0800
Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop

---
 src/components/plugin/MakeTation.js |   76 +++++++++++++++++++++++++++++++++++--
 1 files changed, 71 insertions(+), 5 deletions(-)

diff --git a/src/components/plugin/MakeTation.js b/src/components/plugin/MakeTation.js
index 5bc8ac3..311f7c9 100644
--- a/src/components/plugin/MakeTation.js
+++ b/src/components/plugin/MakeTation.js
@@ -2,12 +2,14 @@
 // 娣诲姞鏂囧瓧鏍囨敞
 var TextAnnotation = {
   points: [],
-  color: 'yellow',
+  color: '',
   L: null,
   map: null,
   layers: null,
   polyline: null,
   marker: null,
+  changeColor: '',
+  changeContent: '',
   init: function (map, L) {
     // console.log(L)
     TextAnnotation.L = L
@@ -18,11 +20,20 @@
     TextAnnotation.layers = L.layerGroup()
     map.on('click', TextAnnotation.click).on('dblclick', TextAnnotation.dblclick)
   },
+  // 璁剧疆鏀瑰彉鏂囧瓧鍐呭
+  setContent: function (changeContent) {
+    // console.log(changeContent)
+    TextAnnotation.changeContent = changeContent
+  },
+  // 璁剧疆鏀瑰彉鏂囧瓧棰滆壊
+  setColor: function (changeColor) {
+    // console.log(changeColor)
+    TextAnnotation.changeColor = changeColor
+  },
   click: function (e) {
-    // console.log(e)
-    let contents = 'bouncedText'
+    // console.log(TextAnnotation.changeContent)
     let labIcon = L.divIcon({
-      html: '<div style="color: red;font-size: 18px;">' + contents + '</div>',
+      html: '<div style="color:' + TextAnnotation.changeColor + ';font-size: 18px;">' + TextAnnotation.changeContent + '</div>',
       iconSize: [100, 40],
       iconAnchor: [0, 0],
       className: ''
@@ -46,14 +57,69 @@
   }
 }
 
+// 娣诲姞 鐐� 鐨勬爣娉�
+let pointAnnotation = {
+  points: [],
+  color: '',
+  L: null,
+  map: null,
+  layers: null,
+  polyline: null,
+  marker: null,
+  init: function (map, L) {
+    pointAnnotation.L = L
+    pointAnnotation.map = map
+    pointAnnotation.points = []
+    pointAnnotation.polyline = null
+    pointAnnotation.marker = null
+    pointAnnotation.layers = L.layerGroup()
+    map.on('click', pointAnnotation.click).on('dblclick', pointAnnotation.dblclick)
+  },
+  click: function (e) {
+    let marker = L.marker(e.latlng)
+    marker.addTo(pointAnnotation.map)
+  },
+  dblclick: function (e) {
+    pointAnnotation.map.off('click', pointAnnotation.click).off('dblclick', pointAnnotation.dblclick)
+  },
+  destory: function () {
+    if (pointAnnotation.polyline) {
+      pointAnnotation.map.removeLayer(pointAnnotation.polyline)
+    }
+    if (pointAnnotation.marker) {
+      pointAnnotation.marker.remove()
+    }
+    if (pointAnnotation.layers) {
+      pointAnnotation.layers.clearLayers()
+    }
+  }
+}
+
+// 娣诲姞鏂囧瓧鏍囨敞
 const startMakeText = function (map, L) {
   TextAnnotation.init(map, L)
+}
+// 鏂囧瓧鏍囨敞鐨� 鍐呭绀捐缃�
+const setContentText = function (text) {
+  TextAnnotation.setContent(text)
+}
+// 鏂囧瓧鏍囨敞鍐呭鐨� 棰滆壊 璁剧疆
+const setContentColor = function (color) {
+  TextAnnotation.setColor(color)
+}
+
+// 鐐� 鏍囨敞
+const StartPointAnnotation = function (map, L) {
+  pointAnnotation.init(map, L)
 }
 
 const clearText = function () {
   startMakeText.destory()
 }
 export default {
+  clearText,
   startMakeText,
-  clearText
+  setContentText,
+  setContentColor,
+  StartPointAnnotation
 }

--
Gitblit v1.8.0