| | |
| | | getTagList |
| | | } from '@/api/pc/leftNav/index' |
| | | import { mapGetters } from 'vuex' |
| | | |
| | | const LeftNavLayer = { |
| | | leftTagLayer: null, |
| | | leftWayLayer: null, |
| | | leftSceneLayer: null, |
| | | leftMonitorLayer: null, |
| | | leftActivityLayer: null, |
| | | leftAedLayer: null, |
| | | leftParkLayer: null, |
| | | leftComeLayer: null |
| | | } |
| | | |
| | | export default { |
| | | name: 'leftNav', |
| | | computed: { |
| | | ...mapGetters([ |
| | | 'viewer', |
| | | 'closeMapClick', // 关闭地图点击,防止新增标签误触 |
| | | 'addIconsLayerIconPopup' // 传送关闭编辑窗口,刷新标签数据 |
| | | ]) |
| | |
| | | img: '/img/leftnav/tag-checked.png', |
| | | normal: '/img/leftnav/tag.png', |
| | | checked: '/img/leftnav/tag-checked.png', |
| | | layer: 'tagLayer' |
| | | layer: 'leftTagLayer' |
| | | }, |
| | | { |
| | | flag: false, |
| | |
| | | img: '/img/leftnav/way.png', |
| | | normal: '/img/leftnav/way.png', |
| | | checked: '/img/leftnav/way-checked.png', |
| | | layer: 'wayLayer' |
| | | layer: 'leftWayLayer' |
| | | }, |
| | | { |
| | | flag: false, |
| | |
| | | img: '/img/leftnav/scene.png', |
| | | normal: '/img/leftnav/scene.png', |
| | | checked: '/img/leftnav/scene-checked.png', |
| | | layer: 'sceneLayer' |
| | | layer: 'leftSceneLayer' |
| | | }, |
| | | { |
| | | flag: false, |
| | |
| | | img: '/img/leftnav/monitor.png', |
| | | normal: '/img/leftnav/monitor.png', |
| | | checked: '/img/leftnav/monitor-checked.png', |
| | | layer: 'monitorLayer' |
| | | layer: 'leftMonitorLayer' |
| | | }, |
| | | // { |
| | | // flag: false, |
| | |
| | | // img: '/img/leftnav/activity.png', |
| | | // normal: '/img/leftnav/activity.png', |
| | | // checked: '/img/leftnav/activity-checked.png', |
| | | // layer: 'activityLayer' |
| | | // layer: 'leftActivityLayer' |
| | | // }, |
| | | // { |
| | | // flag: false, |
| | |
| | | // img: '/img/leftnav/aed.png', |
| | | // normal: '/img/leftnav/aed.png', |
| | | // checked: '/img/leftnav/aed-checked.png', |
| | | // layer: 'aedLayer' |
| | | // layer: 'leftAedLayer' |
| | | // }, |
| | | { |
| | | flag: false, |
| | |
| | | img: '/img/leftnav/park.png', |
| | | normal: '/img/leftnav/park.png', |
| | | checked: '/img/leftnav/park-checked.png', |
| | | layer: 'parkLayer' |
| | | layer: 'leftParkLayer' |
| | | }, |
| | | { |
| | | flag: false, |
| | |
| | | img: '/img/leftnav/come.png', |
| | | normal: '/img/leftnav/come.png', |
| | | checked: '/img/leftnav/come-checked.png', |
| | | layer: 'comeLayer' |
| | | layer: 'leftComeLayer' |
| | | } |
| | | ], |
| | | viewer: null, |
| | | tagLayer: null, |
| | | wayLayer: null, |
| | | sceneLayer: null, |
| | | monitorLayer: null, |
| | | activityLayer: null, |
| | | aedLayer: null, |
| | | parkLayer: null, |
| | | comeLayer: null |
| | | ] |
| | | } |
| | | }, |
| | | created () { |
| | | }, |
| | | mounted () { |
| | | // 初始化新增标签图层 |
| | | // this.$store.commit("createAddIconsLayerIconLayer", { viewer: this.viewer }); |
| | | // this.$store.commit("createAddIconsLayerIconLayer", { viewer: global.viewer }); |
| | | }, |
| | | watch: { |
| | | addIconsLayerIconPopup () { |
| | |
| | | methods: { |
| | | reself () { |
| | | const that = this |
| | | if (this.tagLayer) { |
| | | this.tagLayer.clear() |
| | | if (LeftNavLayer.leftTagLayer) { |
| | | LeftNavLayer.leftTagLayer.clear() |
| | | } |
| | | getTagList().then((res) => { |
| | | res.data.data.forEach((item) => { |
| | |
| | | item: item |
| | | }) |
| | | }) |
| | | this.tagLayer.addOverlay(divIcon) |
| | | LeftNavLayer.leftTagLayer.addOverlay(divIcon) |
| | | if (!this.leftNavData[0].flag) { |
| | | this.tagLayer.show = false |
| | | LeftNavLayer.leftTagLayer.show = false |
| | | } |
| | | }) |
| | | }) |
| | |
| | | // 加标签 |
| | | this.$store.dispatch('chouseAddIconsLayerIcon', { |
| | | // 新增标签 选定位置 |
| | | viewer: this.viewer, |
| | | viewer: global.viewer, |
| | | fn: (lnglat) => { |
| | | // 返回选定坐标 |
| | | // 添加空白标签 |
| | | this.$store.dispatch('addIconsLayerIcon', { |
| | | lnglat: lnglat, |
| | | viewer: this.viewer |
| | | viewer: global.viewer |
| | | }) |
| | | } |
| | | }) |
| | |
| | | item.flag = !item.flag |
| | | if (item.flag == true) { |
| | | item.img = item.checked |
| | | this[item.layer].show = true |
| | | LeftNavLayer[item.layer].show = true |
| | | } else { |
| | | item.img = item.normal |
| | | this[item.layer].show = false |
| | | LeftNavLayer[item.layer].show = false |
| | | } |
| | | }, |
| | | initialize (viewer) { |
| | | initialize () { |
| | | var that = this |
| | | viewer.scene.globe.depthTestAgainstTerrain = false |
| | | this.viewer = viewer |
| | | this.tagLayer = new global.DC.HtmlLayer('tagLayer') |
| | | viewer.addLayer(this.tagLayer) |
| | | this.wayLayer = new global.DC.HtmlLayer('wayLayer') |
| | | viewer.addLayer(this.wayLayer) |
| | | this.sceneLayer = new global.DC.HtmlLayer('sceneLayer') |
| | | viewer.addLayer(this.sceneLayer) |
| | | this.monitorLayer = new global.DC.HtmlLayer('monitorLayer') |
| | | viewer.addLayer(this.monitorLayer) |
| | | this.aedLayer = new global.DC.VectorLayer('aedLayer') |
| | | viewer.addLayer(this.aedLayer) |
| | | this.parkLayer = new global.DC.HtmlLayer('parkLayer') |
| | | viewer.addLayer(this.parkLayer) |
| | | this.comeLayer = new global.DC.VectorLayer('comeLayer') |
| | | viewer.addLayer(this.comeLayer) |
| | | global.viewer.scene.globe.depthTestAgainstTerrain = false |
| | | |
| | | LeftNavLayer.leftTagLayer = new global.DC.HtmlLayer('leftTagLayer') |
| | | global.viewer.addLayer(LeftNavLayer.leftTagLayer) |
| | | |
| | | LeftNavLayer.leftWayLayer = new global.DC.HtmlLayer('leftWayLayer') |
| | | global.viewer.addLayer(LeftNavLayer.leftWayLayer) |
| | | |
| | | LeftNavLayer.leftSceneLayer = new global.DC.HtmlLayer('leftSceneLayer') |
| | | global.viewer.addLayer(LeftNavLayer.leftSceneLayer) |
| | | |
| | | LeftNavLayer.leftMonitorLayer = new global.DC.HtmlLayer('leftMonitorLayer') |
| | | global.viewer.addLayer(LeftNavLayer.leftMonitorLayer) |
| | | |
| | | LeftNavLayer.leftAedLayer = new global.DC.VectorLayer('leftAedLayer') |
| | | global.viewer.addLayer(LeftNavLayer.leftAedLayer) |
| | | |
| | | LeftNavLayer.leftParkLayer = new global.DC.HtmlLayer('leftParkLayer') |
| | | global.viewer.addLayer(LeftNavLayer.leftParkLayer) |
| | | |
| | | LeftNavLayer.leftComeLayer = new global.DC.VectorLayer('leftComeLayer') |
| | | global.viewer.addLayer(LeftNavLayer.leftComeLayer) |
| | | |
| | | getTagList().then((res) => { |
| | | res.data.data.forEach((item) => { |
| | |
| | | item: item |
| | | }) |
| | | }) |
| | | this.tagLayer.addOverlay(divIcon) |
| | | LeftNavLayer.leftTagLayer.addOverlay(divIcon) |
| | | }) |
| | | // this.tagLayer.show = false |
| | | // LeftNavLayer.leftTagLayer.show = false |
| | | }) |
| | | |
| | | getWayList().then((res) => { |
| | |
| | | </div> |
| | | ` |
| | | ) |
| | | this.wayLayer.addOverlay(divIcon) |
| | | LeftNavLayer.leftWayLayer.addOverlay(divIcon) |
| | | }) |
| | | this.wayLayer.show = false |
| | | LeftNavLayer.leftWayLayer.show = false |
| | | }) |
| | | |
| | | getMonitorList().then((res) => { |
| | |
| | | ` |
| | | ) |
| | | divIcon.attrParams = item |
| | | this.monitorLayer.addOverlay(divIcon) |
| | | LeftNavLayer.leftMonitorLayer.addOverlay(divIcon) |
| | | |
| | | divIcon.on(global.DC.MouseEventType.CLICK, (e) => { |
| | | that.viewer.flyToPosition( |
| | | global.viewer.flyToPosition( |
| | | new global.DC.Position(Number(item.jd), Number(item.wd), Number(300), Number(0), Number(-90), Number(0)), |
| | | function () { }, |
| | | 2 |
| | |
| | | 0 |
| | | ]) |
| | | ) |
| | | this.viewer.scene.globe.depthTestAgainstTerrain = false |
| | | global.viewer.scene.globe.depthTestAgainstTerrain = false |
| | | // eslint-disable-next-line no-unused-vars |
| | | var monitor = new global.DC.PanoramaBox(this.viewer, { |
| | | var monitor = new global.DC.PanoramaBox(global.viewer, { |
| | | domId: 'MonitorBox', |
| | | position: [positions] |
| | | }) |
| | |
| | | }) |
| | | }) |
| | | |
| | | this.monitorLayer.show = false |
| | | LeftNavLayer.leftMonitorLayer.show = false |
| | | }) |
| | | |
| | | getSceneList().then((res) => { |
| | |
| | | ` |
| | | ) |
| | | divIcon.attrParams = item |
| | | this.sceneLayer.addOverlay(divIcon) |
| | | LeftNavLayer.leftSceneLayer.addOverlay(divIcon) |
| | | |
| | | divIcon.on(global.DC.MouseEventType.CLICK, (e) => { |
| | | that.viewer.flyToPosition( |
| | | global.viewer.flyToPosition( |
| | | new global.DC.Position(Number(item.jd), Number(item.wd), Number(300), Number(0), Number(-90), Number(0)), |
| | | function () { }, |
| | | 2 |
| | |
| | | 0 |
| | | ]) |
| | | ) |
| | | this.viewer.scene.globe.depthTestAgainstTerrain = false |
| | | global.viewer.scene.globe.depthTestAgainstTerrain = false |
| | | // eslint-disable-next-line no-unused-vars |
| | | var panorama = new global.DC.PanoramaBox(this.viewer, { |
| | | var panorama = new global.DC.PanoramaBox(global.viewer, { |
| | | domId: 'PanoramaBox', |
| | | position: [positions] |
| | | }) |
| | |
| | | }) |
| | | }) |
| | | |
| | | this.sceneLayer.show = false |
| | | LeftNavLayer.leftSceneLayer.show = false |
| | | }) |
| | | |
| | | getLifeList({ lifetype: 9 }).then((res) => { |
| | |
| | | font: '14px sans-serif', |
| | | pixelOffset: { x: 0, y: -24 } |
| | | }) |
| | | this.aedLayer.addOverlay(label) |
| | | LeftNavLayer.leftAedLayer.addOverlay(label) |
| | | |
| | | const billboard = new global.DC.Billboard( |
| | | new global.DC.Position(Number(item.jd), Number(item.wd), 0), |
| | |
| | | ) |
| | | billboard.size = [20, 20] |
| | | |
| | | this.aedLayer.addOverlay(billboard) |
| | | LeftNavLayer.leftAedLayer.addOverlay(billboard) |
| | | }) |
| | | this.aedLayer.show = false |
| | | LeftNavLayer.leftAedLayer.show = false |
| | | }) |
| | | |
| | | getLifeList({ lifetype: 11 }).then((res) => { |
| | |
| | | </div> |
| | | ` |
| | | ) |
| | | this.parkLayer.addOverlay(divIcon) |
| | | LeftNavLayer.leftParkLayer.addOverlay(divIcon) |
| | | }) |
| | | this.parkLayer.show = false |
| | | LeftNavLayer.leftParkLayer.show = false |
| | | }) |
| | | |
| | | getLifeList({ lifetype: 12 }).then((res) => { |
| | |
| | | font: '14px sans-serif', |
| | | pixelOffset: { x: 0, y: -40 } |
| | | }) |
| | | that.comeLayer.addOverlay(label) |
| | | LeftNavLayer.leftComeLayer.addOverlay(label) |
| | | |
| | | const billboard = new global.DC.Billboard( |
| | | new global.DC.Position(Number(item.jd), Number(item.wd), 0), |
| | |
| | | pixelOffset: { x: 0, y: -16 } |
| | | }) |
| | | |
| | | that.comeLayer.addOverlay(billboard) |
| | | LeftNavLayer.leftComeLayer.addOverlay(billboard) |
| | | }) |
| | | this.comeLayer.show = false |
| | | LeftNavLayer.leftComeLayer.show = false |
| | | }) |
| | | }, |
| | | openPopups (value) { |
| | | var popup = new global.DC.DivForms(this.viewer, { |
| | | var popup = new global.DC.DivForms(global.viewer, { |
| | | domId: 'divFormsDomBox', |
| | | position: [ |
| | | global.DC.Transform.transformWGS84ToCartesian( |
| | |
| | | this.$store.dispatch('pcFlyView', { |
| | | jd: value.lng, |
| | | wd: value.lat, |
| | | viewer: this.viewer |
| | | viewer: global.viewer |
| | | }) |
| | | } |
| | | } |