import BasemapHelper from '@components/helpers/BasemapHelper'
|
import VectorLayerHelper from '@components/helpers/VectorLayerHelper'
|
import ServiceLayerHelper from '@components/helpers/ServiceLayerHelper'
|
|
import Editable from '@components/plugin/Editable'
|
import PathDrag from '@components/plugin/PathDrag'
|
import CanvasIcon from '@components/plugin/CanvasMarkers'
|
import MagicMarker from '@components/plugin/MagicMarker'
|
import WmtsSupport from '@components/plugin/wmts_plugins'
|
|
import MapConfig from '@/conf/MapConfig'
|
import DashFlow from '@components/plugin/PathDashFlow'
|
let map = null
|
const L = window.L
|
const initMap = (div) => {
|
if (map != null) {
|
map.remove()
|
}
|
|
// Leaflet扩展代码
|
Editable.init(L) // 图层编辑
|
PathDrag.init(L) // 路径拖拽
|
MagicMarker.init(L) // 动画Marker
|
CanvasIcon.init(L) // 使用canvas绘制Marker
|
WmtsSupport.init(L) // 扩展,使支持WMTS
|
// CustomPopup.init(L) // 自定义弹出框
|
DashFlow.DashFlow(L) // 流动线图
|
// Leaflet扩展代码
|
|
map = L.map(div, MapConfig.mapOptions)
|
|
map.on('click', (event, a, b) => {
|
console.log(event, a, b)
|
})
|
|
window.map = map
|
initTileLayersHelper(map)
|
return map
|
}
|
|
/**
|
* 基础底图初始化
|
* @param map
|
* @param L
|
*/
|
const initBasemapsHelper = (map) => {
|
// todo 这里进行底图地图的初始化
|
return new BasemapHelper({ map })
|
}
|
/**
|
* 业务底图初始化
|
* @param map
|
* @param L
|
*/
|
const initTileLayersHelper = (map) => {
|
var serviceLayerHelper = new ServiceLayerHelper({ map })
|
return serviceLayerHelper
|
}
|
|
/**
|
* 矢量地图初始化
|
* @param map
|
* @param L
|
*/
|
const initVectorLayersHelper = (map) => {
|
// todo 这里进行地图的初始化
|
window.vectorLayerHelper = new VectorLayerHelper({ map })
|
return window.vectorLayerHelper
|
}
|
|
export default {
|
initMap,
|
initBasemapsHelper,
|
initTileLayersHelper,
|
initVectorLayersHelper
|
}
|