From e379abf00be8fe474337f6b192c560d81f6f099b Mon Sep 17 00:00:00 2001 From: chenzeping <ChenZeping02609@163.com> Date: 星期二, 16 三月 2021 20:24:03 +0800 Subject: [PATCH] 图层功能 --- src/components/panel/ToolBoxPanel.vue | 49 +++++++++++++++++++++++++++++++------------------ 1 files changed, 31 insertions(+), 18 deletions(-) diff --git a/src/components/panel/ToolBoxPanel.vue b/src/components/panel/ToolBoxPanel.vue index b1b862e..2102ab2 100644 --- a/src/components/panel/ToolBoxPanel.vue +++ b/src/components/panel/ToolBoxPanel.vue @@ -233,6 +233,9 @@ methods: { changeChoose (index) { this.active = index + if (this.drawLayer == null) { + this.drawLayer = this.L.layerGroup().addTo(this.map) + } }, changeSelect () { this.selectGroup = !this.selectGroup @@ -247,20 +250,34 @@ iconAnchor: [13, 16], popupAnchor: [26, -32] }) - this.drawLayer = this.map.editTools.startMarker() - this.drawLayer.setIcon(myIcon) + var drawLayer = this.map.editTools.startMarker() + drawLayer.setIcon(myIcon) + this.setLogic(drawLayer) + this.drawLayer.addLayer(drawLayer) break case '绾挎爣缁�': - this.drawLayer = this.map.editTools.startPolyline() + var drawLayerLine = this.map.editTools.startPolyline() + this.drawLayer.addLayer(drawLayerLine) + this.setLogic(drawLayerLine) break case '澶氳竟褰�': - this.drawLayer = this.map.editTools.startPolygon() + var drawLayerPolygonD = this.map.editTools.startPolygon() + this.drawLayer.addLayer(drawLayerPolygonD) + this.setLogic(drawLayerPolygonD) break case '鐭╁舰': - this.drawLayer = this.map.editTools.startRectangle() + var drawLayerPolygonJ = this.map.editTools.startRectangle() + this.drawLayer.addLayer(drawLayerPolygonJ) + this.setLogic(drawLayerPolygonJ) break case '鍦嗗舰': - this.drawLayer = this.map.editTools.startCircle() + var drawLayerPolygonY = this.map.editTools.startCircle() + this.drawLayer.addLayer(drawLayerPolygonY) + this.setLogic(drawLayerPolygonY) + // this.drawLayer = this.map.editTools.startCircle() + break + case '鍒犻櫎': + this.drawLayer.clearLayers() break case '璺濈': Measure.startMeasureLen(this.map, this.L) @@ -276,7 +293,7 @@ exportOnly: true, hideControlContainer: true }).addTo(this.map) - printer.printMap('CurrentSize', 'MyManualPrint') + printer.printMap('CurrentSize', '鍏ㄥ睆') break case 'A4妯悜': var printerX = this.L.easyPrint({ @@ -285,7 +302,7 @@ exportOnly: true, hideControlContainer: true }).addTo(this.map) - printerX.printMap('A4Landscape page', 'MyManualPrint') + printerX.printMap('A4Landscape page', '妯悜') break case 'A4绾靛悜': var printerY = this.L.easyPrint({ @@ -294,18 +311,14 @@ exportOnly: true, hideControlContainer: true }).addTo(this.map) - printerY.printMap('A4Portrait page', 'MyManualPrint') - break - case '鍒犻櫎': - this.map.removeLayer(this.drawLayer) + printerY.printMap('A4Portrait page', '绾靛悜') break } - this.drawLayer.on('dblclick', this.L.DomEvent.stop).on('dblclick', this.drawLayer.toggleEdit) - this.drawLayer.setStyle({ - color: 'red', - fillColor: '#ffffff', - fillOpacity: 0.1, - fill: true + }, + setLogic (layer) { + layer.on('dblclick', this.L.DomEvent.stop).on('dblclick', layer.toggleEdit) + layer.setStyle({ + color: 'red' }) } } -- Gitblit v1.8.0