import AdcdLayer from "./Markers/AdcdLayer"; import RealDrpLayer from "./Markers/RealDrpLayer"; import HdswLayer from "./Markers/HdswLayer"; import GongShuiLayer from "./Markers/GongShuiLayer" import PicStLayer from "./Markers/PicStLayer" import WYLayer from "./Markers/WYLayer" import SYLayer from "./Markers/SYLayer" import SLLayer from "./Markers/SLLayer" import AZDLayer from "./Markers/AZDLayer" import QSYDWLayer from "./Markers/QSYDWLayer"; import YHJMHLayer from "./Markers/YHJMHLayer"; import ShuiKuLayer from "./Markers/ShuiKuLayer"; import ShuiDianZhanLayer from "./Markers/ShuiDianZhanLayer"; export default class LayerMgr { constructor() { this.layerMap = {}; this.layers = []; this.markerLayerMap = {}; } getLayer(name) { return this.layers.find(o => o.getLayerName() === name); } setVisible(visible) { visible = visible || {}; for (const layerName in visible) { const layerVisible = visible[layerName]; const layer = this.getLayer(layerName); if (!layer) { continue; } if (layerVisible != layer.isVisible()) { layer.setVisible(layerVisible); } } } setSetting(setting) { setting = setting || {}; for (const layer of this.layers) { layer.setSetting(setting); } } _addAppMarkerLayers(dispatch, visible, setting) { const clss = [ AdcdLayer, RealDrpLayer, HdswLayer, GongShuiLayer, PicStLayer, WYLayer, SYLayer, SLLayer, AZDLayer, QSYDWLayer, YHJMHLayer, ShuiKuLayer, ShuiDianZhanLayer, ]; for (const cls of clss) { const layer = new cls({ visible: visible[cls.LayerName], setting, dispatch }); this.addLayer(layer); this.markerLayerMap[cls.LayerName] = layer; } } sGetMarkerLayerComponentCls(layername) { const layer = this.markerLayerMap[layername]; if (!layer) { return null; } return layer.getComponentCls(); } sGetVisibleMarkers(layername, visible, setting, markerList) { const layer = this.markerLayerMap[layername]; if (!layer) { return null; } if (visible) { return markerList; } return null; } }