diff --git a/assets/images/map/filter/导航-点位.png b/assets/images/map/filter/导航-点位.png new file mode 100644 index 0000000..278de0d Binary files /dev/null and b/assets/images/map/filter/导航-点位.png differ diff --git a/assets/images/map/filter/导航-监控.png b/assets/images/map/filter/导航-监控.png new file mode 100644 index 0000000..82117ec Binary files /dev/null and b/assets/images/map/filter/导航-监控.png differ diff --git a/components/Map.vue b/components/Map.vue index 189a387..4d70bce 100644 --- a/components/Map.vue +++ b/components/Map.vue @@ -28,6 +28,9 @@ export default { this.initMap() } }) + this.$evBus.$on('setVisibility', (layerType, show) => { + this.setVisibility(layerType, show) + }) }, methods: { //创建三维地球场景 @@ -40,8 +43,8 @@ export default { this.addDataByLayerType('cems', [ { - longitude: 116.335987, - latitude: 30.526361 + longitude: 114.116195, + latitude: 36.555232 } ]) window.test = this diff --git a/config/mapFilters.js b/config/mapFilters.js new file mode 100644 index 0000000..091bdd0 --- /dev/null +++ b/config/mapFilters.js @@ -0,0 +1,66 @@ +export default [ + { + label: '监控点', + icon: '', + selectedIcon: '', + count: 0, + selected: true, + id: 'jkd' + }, + { + label: '微站', + icon: '', + selectedIcon: '', + count: 0, + selected: true, + id: 'wz' + }, + { + label: '深度检测仪', + icon: '', + selectedIcon: '', + count: 0, + selected: true, + id: 'sdjcy' + }, + { + label: '质控站', + icon: '', + selectedIcon: '', + count: 0, + selected: true, + id: 'zkz' + }, + { + label: '国标站', + icon: '', + selectedIcon: '', + count: 0, + selected: true, + id: 'gbz' + }, + { + label: '洒水车', + icon: '', + selectedIcon: '', + count: 0, + selected: true, + id: 'ssc' + }, + { + label: '湿扫车', + icon: '', + selectedIcon: '', + count: 0, + selected: true, + id: 'shisc' + }, + { + label: 'CEMS', + icon: '', + selectedIcon: '', + count: 0, + selected: true, + id: 'cems' + } +] diff --git a/nuxt.config.js b/nuxt.config.js index 1dac675..6f1647e 100644 --- a/nuxt.config.js +++ b/nuxt.config.js @@ -45,6 +45,7 @@ export default { '@/plugins/antd-ui', '@/plugins/echarts', '@/plugins/axios', + '@/plugins/setup', ], // Auto import components: https://go.nuxtjs.dev/config-components diff --git a/pages/visual/PeakCoalView.vue b/pages/visual/PeakCoalView.vue index 26cdf21..b993aa7 100644 --- a/pages/visual/PeakCoalView.vue +++ b/pages/visual/PeakCoalView.vue @@ -1,13 +1,14 @@ @@ -164,8 +184,6 @@ body, html, #__nuxt, #__layout { bottom: 0; right: 0; z-index: 2; - pointer-events: none; - } .header-content { @@ -174,9 +192,25 @@ body, html, #__nuxt, #__layout { height: 507px; width: 100%; .bg("~/assets/peakCoalImages/header/first-title-bg.png"); + z-index: 2; + font-family: AlimamaShuHeiTi-Bold; + font-size: 116.67px; + color: #D8F0FF; + letter-spacing: 7.68px; + text-align: center; + text-shadow: 0 0 11px #000000; + font-weight: 700; + line-height: 148px; + padding-top: 110px; + > p { + margin: 0; + } + .suntitle { + font-size: 80px; + line-height: 100px; + } } - .body-content { position: absolute; height: 100%; @@ -190,7 +224,7 @@ body, html, #__nuxt, #__layout { height: 2721px; .bg("~/assets/peakCoalImages/left/left-content-bg.png", center, 60px); padding: 300px 476px 100px 412px; - perspective: 500px; + perspective: 1000px; .left-data-panel { height: 100%; width: 100%; @@ -207,7 +241,7 @@ body, html, #__nuxt, #__layout { height: 2721px; .bg("~/assets/peakCoalImages/right/right-content-bg.png", center, 60px); padding: 300px 476px 100px 480px; - perspective: 500px; + perspective: 1000px; .right-data-panel { height: 100%; @@ -240,10 +274,71 @@ body, html, #__nuxt, #__layout { .footer-content { position: absolute; - bottom: 0px; + bottom: -44px; width: 100%; height: 220px; .bg("~/assets/peakCoalImages/footer/footer-bg.png", center, center); + z-index: 2; + .footer-btn { + cursor: pointer; + position: absolute; + top: 84px; + font-family: AlimamaShuHeiTi-Bold; + font-size: 50px; + color: #D8F0FF; + letter-spacing: 3.29px; + text-shadow: 0 0 25px rgba(0,145,255,0.50); + font-weight: 700; + padding-left: 120px; + &.map-filter { + right: 3062px; + background: url('~/assets/images/map/filter/导航-点位.png') left center no-repeat; + background-size: 106px 111px; + } + + &.video-btn { + left: 3014px; + background: url('~/assets/images/map/filter/导航-监控.png') left center no-repeat; + background-size: 106px 111px; + } + } + + .filters { + position: absolute; + bottom: 240px; + right: 1470px * 2; + width: 528px; + .search { + height: 142px; + background: rgba(20, 64, 114, 0.7); + border: 1px solid rgba(31, 97, 173, 0.84); + } + + .filter-box { + margin-top: 20px; + background: rgba(20, 64, 114, 0.7); + border: 1px solid rgba(31, 97, 173, 0.84); + padding: 0 40px 40px; + box-sizing: border-box; + .filter-item { + font-family: MicrosoftYaHei; + font-size: 38.89px; + color: rgba(255, 255, 255, 0.55); + letter-spacing: 2.56px; + font-weight: 400; + display: flex; + justify-content: space-between; + align-items: center; + height: 52px; + line-height: 52px; + margin-top: 40px; + cursor: pointer; + &.selected { + color: #fff; + } + } + } + } } diff --git a/plugins/setup.js b/plugins/setup.js new file mode 100644 index 0000000..5757bf9 --- /dev/null +++ b/plugins/setup.js @@ -0,0 +1,3 @@ +import Vue from 'vue' + +Vue.prototype.$evBus = new Vue()