From 0d9aae8f90dfc0f0f07a3ac95da0901b2c01ad4f Mon Sep 17 00:00:00 2001 From: Surpriseplus <845948745@qq.com> Date: 星期二, 05 九月 2023 09:53:47 +0800 Subject: [PATCH] 发布影像内网加载不显示修改 --- src/views/Tools/LayerTree.vue | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 50 insertions(+), 8 deletions(-) diff --git a/src/views/Tools/LayerTree.vue b/src/views/Tools/LayerTree.vue index bfac89b..a8257d9 100644 --- a/src/views/Tools/LayerTree.vue +++ b/src/views/Tools/LayerTree.vue @@ -48,8 +48,8 @@ > <span v-show="!data.isEdit"> <span :class="[data.id >= 99 ? 'slot-t-node--label' : '']">{{ - node.label - }}</span> + node.label + }}</span> </span> <span v-show="data.isEdit"> <el-input @@ -105,6 +105,13 @@ > <i class="el-icon-download"></i> 鐡︾墖涓嬭浇 </div> + <div + class="edit" + v-show="shwoAnnex" + @click="annexDownload()" + > + <i class="el-icon-tickets"></i> 闄勪欢 + </div> </el-card> </div> </template> @@ -129,6 +136,7 @@ showOpacity: false, // 涓嶉�忔槑搴� shwoTileDown: false, // 鐡︾墖涓嬭浇 menuVisible: false, // 鑿滃崟 + shwoAnnex: false,//闄勪欢 levelArray: [ // 楂樼▼鏁扮粍 0, 40000000, 20000000, 10000000, 5000000, 2000000, 1000000, 500000, 250000, 200000, 100000, 50000, 17000, 9000, 5000, 2000, 1000, 500, 200, @@ -279,7 +287,7 @@ this.showOpacity = ["Tileset", "3DML"].indexOf(object.serveType) > -1; // 涓嶉�忔槑搴� this.shwoTileDown = ["TMS", "DOM"].indexOf(object.serveType) > -1 && object.pubid; // 鐡︾墖涓嬭浇 this.menuVisible = this.showProp || this.shwoHistogram || this.showLocal || this.showOpacity || this.shwoTileDown; // 鑿滃崟 - + this.shwoAnnex = ['DEM', 'TMS'].indexOf(object.serveType) > -1;//闄勪欢 this.$refs.card.$el.style.left = event.pageX + 20 + "px"; this.$refs.card.$el.style.top = event.pageY + "px"; }, @@ -295,6 +303,7 @@ // 瀹氫綅 async positioning() { this.rmListener(); + if (["Tileset", "3DML"].indexOf(this.currentData.serveType) > -1) { for (let i in Viewer.scene.primitives._primitives) { if (Viewer.scene.primitives._primitives[i].id == this.currentData.cnName) { @@ -318,7 +327,18 @@ } if ("Mpt" == this.currentData.serveType) { - viewer.camera.flyTo({ destination: Cesium.Cartesian3.fromDegrees(101.8, 37.9, 10000000.0) }); // 涓浗 + if (this.currentData.json) { + var json = JSON.parse(this.currentData.json); + if (json.west) { + Viewer.camera.flyTo({ + destination: Cesium.Rectangle.fromDegrees(json.west, json.south, json.east, json.north) + }) + } + } else { + + Viewer.camera.flyTo({ destination: Cesium.Cartesian3.fromDegrees(101.8, 37.9, 10000000.0) }); // 涓浗 + } + } }, // 閽诲瓟鏌辩姸鍥� @@ -346,6 +366,11 @@ return this.levelArray[this.levelArray.length - 1]; }, + //闄勪欢涓嬭浇 + annexDownload() { + this.$bus.$emit('annexDownload', this.currentData) + }, + // 鐡︾墖涓嬭浇 tileDownload() { this.rmListener(); @@ -403,7 +428,7 @@ } } - if (obj.TMS.length) this.setChangeDEM(obj.DEM, checked); + if (obj.DEM.length) this.setChangeDEM(obj.DEM, checked); if (obj.TMS.length) this.setChangeTMS(obj.TMS, checked); if (obj.Mpt.length) this.setChangeMpt(obj.Mpt, checked); if (obj.Tileset.length) this.setChangeTileset(obj.Tileset, checked); @@ -542,6 +567,7 @@ }, // 娣诲姞TMS鍥惧眰 addTMSLayers(layers) { + debugger for (let i in layers) { let res = layers[i]; res.url = res.url.indexOf("{host}") > -1 ? res.url.replace("{host}", iisHost) : res.url; @@ -556,8 +582,14 @@ maximumLevel: 22, enablePickFeatures: false }), 1); + layer.id = res.id; layer.name = res.cnName; + if (is_production) { + Viewer.imageryLayers.raiseToTop(layer);//灏嗗浘灞備笂绉讳竴灞� + Viewer.imageryLayers.lower(layer);//灏嗗浘灞備笂绉讳竴灞� + } + } }, // 鍒囨崲Mpt @@ -585,12 +617,18 @@ for (let i in layers) { let res = layers[i]; if (res.url.indexOf("{host}") > -1) res.url = res.url.replace("{host}", iisHost); - let urls = res.url.split(';') - let layer = sgworld.Creator.createImageryProvider(res.cnName, "wms", { + let urls = res.url.split(';'); + var ops = { url: urls[0], layers: urls[1] - }, "0", undefined, true, ""); + }; + if (res && res.json) { + var rs = JSON.parse(res.json); + ops.rectangle = Cesium.Rectangle.fromDegrees(rs.west, rs.south, rs.east, rs.north); + } + + let layer = sgworld.Creator.createImageryProvider(res.cnName, "wms", ops, "0", undefined, true, ""); this.mptLayer.push(layer); } }, @@ -684,6 +722,10 @@ let layer = Viewer.imageryLayers.addImageryProvider(provider, 1); layer.name = res.cnName; + if (is_production) { + Viewer.imageryLayers.raiseToTop(layer);//灏嗗浘灞備笂绉讳竴灞� + Viewer.imageryLayers.lower(layer);//灏嗗浘灞備笂绉讳竴灞� + } // if (data.result.geom) { // let wkt = this.$wkt.parse(data.result.geom); // Viewer.camera.flyTo({ -- Gitblit v1.9.3