From 703703929e97b94ca1c1c5e35a578e5fe9d4cfea Mon Sep 17 00:00:00 2001 From: suerprisePlus <15810472099@163.com> Date: 星期一, 30 九月 2024 09:58:04 +0800 Subject: [PATCH] 代码修改 --- src/views/visual/mapView/index.vue | 116 +++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 82 insertions(+), 34 deletions(-) diff --git a/src/views/visual/mapView/index.vue b/src/views/visual/mapView/index.vue index d019da3..4cecfec 100644 --- a/src/views/visual/mapView/index.vue +++ b/src/views/visual/mapView/index.vue @@ -51,20 +51,20 @@ </template> <script> -import mapInit from '@/assets/js/mapSdk/index.js'; +import mapInit from '../../../assets/js/mapSdk/index.js'; import mapData from '@/assets/js/mapSdk/mapData.js'; import layerManager from './layerManager.vue'; import menuManager from '@/assets/js/mapSdk/menuManager.js'; import location from './location.vue'; import knowledge from './knowledge.vue'; import lineRoaming from './lineRoaming.vue'; -import { layer_selectAll } from "@/api/mapView/map.js"; +import { layer_selectAll } from '@/api/mapView/map.js'; import configTools from '@/assets/js/configTools'; -import store from "@/store"; +import store from '@/store'; import mapServer from '@/assets/js/mapSdk/mapServe'; import undergroundMode from './undergroundMode.vue'; import dataAnalysis from './dataAnalysis.vue'; -import dataStatistics from './dataStatistics.vue' +import dataStatistics from './dataStatistics.vue'; import attributeInfo from './attributeInfo.vue'; import mapInfo from './mapInfo.vue'; export default { @@ -77,22 +77,26 @@ childMenuIsShow: true, childMenuOption: [], childObj: [], + showEarth: false, }; }, + created() { + console.log('created'); + }, mounted() { + this.showEarth = true; this.mapViewStart(); - this.$busEvent.$on('CHANGE_MAPINFO', res => { - - this.setMapInfo(res) - + this.$busEvent.$on('CHANGE_MAPINFO', (res) => { + this.setMapInfo(res); }); - + }, + beforeCreate() { + console.log('beforeCreate'); }, beforeDestroy() { - this.$store.dispatch('mapLayers/changeLayerTree', []) - this.$store.dispatch('mapLayers/changeDefaultLayer', []) + this.$store.dispatch('mapLayers/changeLayerTree', []); + this.$store.dispatch('mapLayers/changeDefaultLayer', []); }, - methods: { setMapInfo(res) { @@ -102,41 +106,85 @@ setTimeout(() => { this.$refs && this.$refs.mapInfo && this.$refs.mapInfo.open(); }, 200); - - } - }, mapViewStart() { this.menuOption = mapData.menuData; - this.$nextTick(() => { - mapInit.Init(); - setTimeout(() => { - if(config.baseModel.url){ - mapServer.addLayer(config.baseModel); - } - this.getSelectLayers(); - }, 500); - }); + window.earthCtrl = new SmartEarth.EarthCtrl( + 'sdkContainer', + { + // 闅愯棌榛樿搴曞浘 + defaultImagery: false, + // 闅愯棌logo + printLog: false, + // sceneMode: SmartEarth.Cesium.SceneMode.SCENE2D + StaticFileBaseUrl: '/CimSDK/', + }, + {}, + {}, + () => { + setTimeout(() => { + mapServer.layerList = []; + //鍒濆鍖朇esium + window.Cesium = SmartEarth.Cesium; + // 鍒濆鍖朧iewer + window.Viewer = window.earthCtrl.viewer; + //璁剧疆鍦扮悆棰滆壊 + window.Viewer.scene.globe.baseColor = Cesium.Color.fromCssColorString('#A9A9A9'); + window.Viewer.imageryLayers.removeAll(); + const serverUrl = config.geoServer; + const layer = new Cesium.WebMapServiceImageryProvider({ + url: serverUrl.url + serverUrl.wms, + layers: serverUrl.layers[1], + parameters: { + transparent: true, + format: 'image/png', + srs: 'EPSG:4490', + styles: '', + cql_filter: '', + }, + tileWidth: 512, + tileHeight: 512, + }); + + window.Viewer.imageryLayers.addImageryProvider(layer); + this.setStart(); + + }, 500); + } + ); }, + setStart() { + mapInit.Init(); + setTimeout(() => { + if (config.baseModel.url) { + var model = window.earthCtrl.factory.create3DTilesets({ + url: config.baseModel.url + + }); + } + this.getSelectLayers(); + }, 500); + }, + getSelectLayers() { - layer_selectAll().then(response => { - if (response.data.code != 200) return + layer_selectAll().then((response) => { + if (response.data.code != 200) return; const defaultLayer = []; - const val = response.data.result.filter(item => { + const val = response.data.result.filter((item) => { item.checked = false; if (item.type == 2 && item.isShow == 1) { item.checked = true; - mapServer.addLayer(item) - defaultLayer.push(item.id) + mapServer.addLayer(item); + defaultLayer.push(item.id); } return item; - }) - this.$store.dispatch('mapLayers/changeDefaultLayer', defaultLayer) - var obj = configTools.getTreeData(val) - this.$store.dispatch('mapLayers/changeLayerTree', obj) - }) + }); + this.$store.dispatch('mapLayers/changeDefaultLayer', defaultLayer); + var obj = configTools.getTreeData(val); + this.$store.dispatch('mapLayers/changeLayerTree', obj); + }); }, setMenuClose() { this.menuIsShow = !this.menuIsShowx; -- Gitblit v1.9.3