From b215847e8958a91c1ddbf71020938941e2c9725e Mon Sep 17 00:00:00 2001 From: 少年 <1392120328@qq.com> Date: 星期一, 22 一月 2024 14:41:46 +0800 Subject: [PATCH] 11 --- src/components/sideMenu/layerMenu/layerPanel.vue | 112 +++++++++++++++++++------------------ src/components/sideMenu/sliderAlpha/alpha.vue | 38 ++++++++++++ 2 files changed, 93 insertions(+), 57 deletions(-) diff --git a/src/components/sideMenu/layerMenu/layerPanel.vue b/src/components/sideMenu/layerMenu/layerPanel.vue index a07c5fb..f01dcd4 100644 --- a/src/components/sideMenu/layerMenu/layerPanel.vue +++ b/src/components/sideMenu/layerMenu/layerPanel.vue @@ -133,7 +133,6 @@ import store from "@/utils/store.js"; import ZTTitem from "@/utils/ztt.js"; import { layers } from "../../../../static/json/layer.js"; -import { set } from "ol/transform.js"; export default { name: "LayerPanel", data() { @@ -474,36 +473,11 @@ // // store.setThematicLayerItemId(result.id); } }, - //鍔犺浇鍦板潡妯″瀷 - loadLayer() { - window.tdglLayer = sgworld.Creator.createImageryProvider( - layers[8].name, - "tms", - { - id: layers[8].children[0].id, - url: layers[8].children[0].urls, - fileExtension: layers[8].children[0].img || "png", - enablePickFeatures: false, - level: layers[8].children[0].Level, - minimumLevel: layers[8].children[0].minimumLevel, - maximumLevel: layers[8].children[0].maximumLevel, - tilingScheme: - layers[8].children[0].tileType === "Geo" - ? new Cesium.GeographicTilingScheme() - : new Cesium.WebMercatorTilingScheme(), - // alpha: layers[8].children[0].alpha, - alpha: this.state1.alpha, - }, - "0", - layers[8].children[0].zIndex, - true, - "" - ); - }, // 绗笁琛� 涓撻鍔熻兘 鐐瑰嚮 handleFuncClick(index) { if (this.curFuncIndex == index) { store.setTdglFlag(false); + store.setSliderShow(false); store.setPoplayerListAction({}); divPoint3 && divPoint3.deleteObject(); store.setPoplayerShowAction(false); @@ -516,29 +490,52 @@ if (window.tdglLayer) { sgworld.Creator.DeleteObject(window.tdglLayer); } - } - // 闅愯棌搴曢儴鍥惧眰闈㈢増 - store.setLayerPanelShow(false); - // 闅愯棌鍙充笂瑙掕彍鍗曢潰鏉� - store.setMenuListShow(false); - // 闅愯棌搴曢儴婕父闈㈡澘 - store.setRoamPanelShow(false); - //鏄剧ず婊戝姩鏉� - store.setSliderShow(true); - this.curFuncIndex = index; - switch (index) { - case 0: - this.loadLayer(); - store.setTdglFlag(true); - break; - case 1: - this.curFuncIndex = -1; - store.setTdglFlag(false); - if (window.tdglLayer) { - sgworld.Creator.DeleteObject(window.tdglLayer); - } - store.setHistoryShow(true); - break; + } else { + // 闅愯棌搴曢儴鍥惧眰闈㈢増 + store.setLayerPanelShow(false); + // 闅愯棌鍙充笂瑙掕彍鍗曢潰鏉� + store.setMenuListShow(false); + // 闅愯棌搴曢儴婕父闈㈡澘 + store.setRoamPanelShow(false); + //鏄剧ず婊戝姩鏉� + store.setSliderShow(true); + this.curFuncIndex = index; + switch (index) { + case 0: + window.tdglLayer = sgworld.Creator.createImageryProvider( + layers[8].name, + "tms", + { + id: layers[8].children[0].id, + url: layers[8].children[0].urls, + fileExtension: layers[8].children[0].img || "png", + enablePickFeatures: false, + level: layers[8].children[0].Level, + minimumLevel: layers[8].children[0].minimumLevel, + maximumLevel: layers[8].children[0].maximumLevel, + tilingScheme: + layers[8].children[0].tileType === "Geo" + ? new Cesium.GeographicTilingScheme() + : new Cesium.WebMercatorTilingScheme(), + // alpha: layers[8].children[0].alpha, + alpha: this.alpha, + }, + "0", + layers[8].children[0].zIndex, + true, + "" + ); + store.setTdglFlag(true); + break; + case 1: + this.curFuncIndex = -1; + store.setTdglFlag(false); + if (window.tdglLayer) { + sgworld.Creator.DeleteObject(window.tdglLayer); + } + store.setHistoryShow(true); + break; + } } }, showLayerTree() { @@ -585,11 +582,16 @@ immediate: true, //鍒锋柊鍔犺浇 绔嬮┈瑙﹀彂涓�娆andler deep: true, // 鍙互娣卞害妫�娴嬪埌 obj 瀵硅薄鐨勫睘鎬у�肩殑鍙樺寲 }, - "state1.alpha": { - handler: function (newVal) { - this.handleFuncClick(0); - }, - deep: true, + // "state1.alpha": { + // handler: function (newVal) { + // this.handleFuncClick(0); + // }, + // deep: true, + // }, + }, + computed: { + alpha() { + return store.tdglInfo.alpha; }, }, }; diff --git a/src/components/sideMenu/sliderAlpha/alpha.vue b/src/components/sideMenu/sliderAlpha/alpha.vue index f4b48d8..17638ce 100644 --- a/src/components/sideMenu/sliderAlpha/alpha.vue +++ b/src/components/sideMenu/sliderAlpha/alpha.vue @@ -1,12 +1,21 @@ <template> <div class="sliders"> - <el-slider v-model="alpha" vertical height="200px" :max="1" :min="0" :step="0.01" @input="changeSlider"> + <el-slider + v-model="alpha" + vertical + height="200px" + :max="1" + :min="0" + :step="0.01" + @input="changeSlider" + > </el-slider> </div> </template> <script> import store from "@/utils/store.js"; +import { layers } from "../../../../static/json/layer.js"; export default { data() { return { @@ -15,7 +24,32 @@ }, methods: { changeSlider(val) { - store.setAlpha(val); + if (window.tdglLayer) { + sgworld.Creator.DeleteObject(window.tdglLayer); + } + window.tdglLayer = sgworld.Creator.createImageryProvider( + layers[8].name, + "tms", + { + id: layers[8].children[0].id, + url: layers[8].children[0].urls, + fileExtension: layers[8].children[0].img || "png", + enablePickFeatures: false, + level: layers[8].children[0].Level, + minimumLevel: layers[8].children[0].minimumLevel, + maximumLevel: layers[8].children[0].maximumLevel, + tilingScheme: + layers[8].children[0].tileType === "Geo" + ? new Cesium.GeographicTilingScheme() + : new Cesium.WebMercatorTilingScheme(), + // alpha: layers[8].children[0].alpha, + alpha:val, + }, + "0", + layers[8].children[0].zIndex, + true, + "" + ); }, }, }; -- Gitblit v1.9.3