From b9e41e3fe07d9d33e07e1c7f16fe68a8edc52f5a Mon Sep 17 00:00:00 2001 From: 徐旺旺 <11530253@qq.com> Date: 星期六, 08 五月 2021 10:37:08 +0800 Subject: [PATCH] 管段高亮 --- src/components/LayerController/service/WmsLayerService.js | 32 ++++++++++++++++++++++++++++---- 1 files changed, 28 insertions(+), 4 deletions(-) diff --git a/src/components/LayerController/service/WmsLayerService.js b/src/components/LayerController/service/WmsLayerService.js index 9e6d2f5..032e0f8 100644 --- a/src/components/LayerController/service/WmsLayerService.js +++ b/src/components/LayerController/service/WmsLayerService.js @@ -1,5 +1,6 @@ import AjaxUtils from '../../../utils/AjaxUtils' import { PIPELINE_WMS } from '../../../conf/Constants' +import Popup from '@views/popup/Popup' /** * todo 寰楄�冭檻涓�涓浘灞傞厤缃簡澶氫釜 wmsLayers鐨勬儏鍐� @@ -118,7 +119,7 @@ var myIcon = this.L.divIcon({ className: 'my-div-icon' }) this.L.marker(e.latlng, { icon: myIcon - }).addTo(this.featureGroup) + }).addTo(this.featureGroup)/* .bindPopup((layer) => { this.popupComp.setDatas(popupDatas) this.popupComp.setShow() @@ -129,14 +130,25 @@ closeButton: false, autoClose: false }) - .openPopup() + .openPopup() */ + window.$layer.open({ + content: { + content: Popup, // 缁勪欢 + data: { // 浼犻�掔殑鍙傛暟 + datas: popupDatas + } + }, + title: '' // 鏍囬 + }) + // this.popupComp.setDatas(popupDatas) + // this.popupComp.setShow() } }) } }) } - reverse (feature) { + reverseMultiLine (feature) { const coordinates = feature.geometry.coordinates var latlng = [] for (var j = 0; j < coordinates.length; j++) { @@ -151,15 +163,27 @@ return latlng } + reversePolyLine (feature) { + const coordinates = feature.geometry.coordinates + var latlng = [] + for (var j = 0; j < coordinates.length; j++) { + const coordinate = coordinates[j] + latlng.push(coordinate.reverse()) + } + return latlng + } + highlight (feature) { const type = feature.geometry.type if (type === 'MultiLineString') { - this.L.polyline(this.reverse(feature), { color: 'red' }).addTo(this.featureGroup) + this.L.polyline(this.reverseMultiLine(feature), { color: 'red' }).addTo(this.featureGroup) } else if (type === 'Point') { var myIcon = this.L.divIcon({ className: 'my-div-icon' }) this.L.marker(feature.geometry.coordinates.reverse(), { icon: myIcon }).addTo(this.featureGroup) + } else if (type === 'LineString') { + this.L.polyline(this.reversePolyLine(feature), { color: 'red' }).addTo(this.featureGroup) } } } -- Gitblit v1.8.0