From 95d1e83afa65f1d52eaabc4fe58374cd4edbc9c5 Mon Sep 17 00:00:00 2001 From: lixuliang <lixuliang_hd@126.com> Date: 星期五, 19 四月 2024 11:28:12 +0800 Subject: [PATCH] 飞行器图片 --- src/components/viewer.vue | 157 ++++++++++++++++++++++++++++++--------------------- 1 files changed, 92 insertions(+), 65 deletions(-) diff --git a/src/components/viewer.vue b/src/components/viewer.vue index a4a20ca..442e382 100644 --- a/src/components/viewer.vue +++ b/src/components/viewer.vue @@ -1,5 +1,9 @@ <template> <div> + <div class="imgbox" v-if="showFlyimg"> + <img src="../assets/image/feixingqi.png" alt="" /> + </div> + <div id="app1"></div> </div> </template> @@ -18,21 +22,23 @@ light, } from "@/utils/work"; import bus from "@/utils/bus"; -import { getVectorList,getRadio } from "@/api/http"; +import { getVectorList, getRadio } from "@/api/http"; export default { name: "App", - data () { - return {}; + data() { + return { + showFlyimg: false, + }; }, methods: { - init () { - const that=this; - window.currentsubindex=1; - let _core=new SmartEarth.Core(); - window.tedp=new this.$trame({ + init() { + const that = this; + window.currentsubindex = 1; + let _core = new SmartEarth.Core(); + window.tedp = new this.$trame({ elem: "app1", width: 4992, - prop: [0,0], + prop: [0, 0], height: 2560, navtop: 300, gisType: "hf", @@ -56,13 +62,14 @@ }, gisInit: (webgis) => { //杩斿洖鍦板浘瀵硅薄 - window.Sgworld=webgis; - window.sgworld=webgis; - window.Viewer=webgis.Viewer; - window.viewer=webgis.Viewer; - window.Cesium=Cesium; + window.Sgworld = webgis; + window.sgworld = webgis; + window.Viewer = webgis.Viewer; + window.viewer = webgis.Viewer; + window.Cesium = Cesium; + let that = this; - window.layers=window.sgworld.Viewer.scene.imageryLayers; + window.layers = window.sgworld.Viewer.scene.imageryLayers; // const blackMarble = layers.addImageryProvider( // new Cesium.IonImageryProvider({ assetId: 3812 }) // ); @@ -70,7 +77,7 @@ // blackMarble.alpha = 0.0; // blackMarble.brightness = 2.0; // 鍦扮悆棰滆壊 - Viewer.scene.globe.baseColor= + Viewer.scene.globe.baseColor = Cesium.Color.fromCssColorString("#272d39"); // //椋炲悜骞垮窞 // window.Viewer.camera.flyTo({ @@ -96,71 +103,78 @@ pitch: -0.7222154573481174, roll: 0, }, + complete: function callback() { + viewer.camera.changed.addEventListener(() => { + // 瑙嗛珮 km + let alt = ( + viewer.camera.positionCartographic.height / 1000 + ).toFixed(2); + // 鏂逛綅瑙� + let heading = Cesium.Math.toDegrees( + viewer.camera.heading + ).toFixed(2); + // 淇话瑙� + let pitch = Cesium.Math.toDegrees(viewer.camera.pitch).toFixed( + 2 + ); + // 缈绘粴瑙� + let roll = Cesium.Math.toDegrees(viewer.camera.roll).toFixed(2); + // 绾у埆 + let level = 0; + let tileRender = viewer.scene._globe._surface._tilesToRender; + if (tileRender && tileRender.length > 0) { + level = viewer.scene._globe._surface._tilesToRender[0]._level; + } + // let str = `绾ф暟锛�${level} 瑙嗛珮锛�${alt}km 鏂逛綅瑙掞細${heading}掳 淇话瑙掞細${pitch}掳 缈绘粴瑙掞細${roll}掳`; + console.log(pitch); + that.showFlyimg = pitch > -25 ? true : false; + // console.log(that.showFlyimg); + }); + }, }); - let urldian1= + let urldian1 = "http://183.162.245.49:8099/geoserver/SHwuxiandian/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=SHwuxiandian:1GZ_POI&maxFeatures=50&outputFormat=application%2Fjson"; - let urldian= + let urldian = "http://183.162.245.49:8099/geoserver/SHP/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=SHP:SH_POI1&maxFeatures=50&outputFormat=application%2Fjson"; try { - loaddian(urldian1,"[TE_DESC]","[height]"); - loaddian(urldian,"[name]","[Height]"); + loaddian(urldian1, "[TE_DESC]", "[height]"); + loaddian(urldian, "[name]", "[Height]"); loadBaimo(1); loadLW(); addRightMouseEvent(); SPPM(); loadYH(); - juhe(true,"鐩戞祴绔�"); + juhe(true, "鐩戞祴绔�"); addMpt(true); - } catch(error) { } + } catch (error) {} //寮�鍚棩鐓� - viewer.scene.globe.enableLighting=false; - viewer.shadows=false; + viewer.scene.globe.enableLighting = false; + viewer.shadows = false; addMouseEvent(); light(); getVectorList().then((res) => { - if(res.message==="Success") { - let region=res.rows; + if (res.message === "Success") { + let region = res.rows; region.forEach((item) => { - let arr=[]; + let arr = []; JSON.parse(item.vlatlngs).forEach((item2) => { - arr.push([item2[1],item2[0]]); + arr.push([item2[1], item2[0]]); }); - item.vlatlngs=JSON.stringify(arr); + item.vlatlngs = JSON.stringify(arr); }); - bus.$emit("areaData",region); + bus.$emit("areaData", region); } }); //鑾峰彇鏃犵嚎鐢垫暟鎹� getRadio().then((res) => { - if(res.message==="Success") { - let radio=res.rows; - bus.$emit("radioData",radio); + if (res.message === "Success") { + let radio = res.rows; + bus.$emit("radioData", radio); console.log(radio); } }); // window.Viewer.shadows = false; - viewer.camera.changed.addEventListener(() => { - // 瑙嗛珮 km - let alt = ( - viewer.camera.positionCartographic.height / 1000 - ).toFixed(2); - // 鏂逛綅瑙� - let heading = Cesium.Math.toDegrees(viewer.camera.heading).toFixed( - 2 - ); - // 淇话瑙� - let pitch = Cesium.Math.toDegrees(viewer.camera.pitch).toFixed(2); - // 缈绘粴瑙� - let roll = Cesium.Math.toDegrees(viewer.camera.roll).toFixed(2); - // 绾у埆 - let level = 0; - let tileRender = viewer.scene._globe._surface._tilesToRender; - if (tileRender && tileRender.length > 0) { - level = viewer.scene._globe._surface._tilesToRender[0]._level; - } - let str = `绾ф暟锛�${level} 瑙嗛珮锛�${alt}km 鏂逛綅瑙掞細${heading}掳 淇话瑙掞細${pitch}掳 缈绘粴瑙掞細${roll}掳`; - console.log(str); - }); + //娣卞害妫�娴� window.Sgworld.Analysis.depthTestAgainstTerrain(true); /* @@ -169,30 +183,30 @@ // window.Viewer.scene.primitives.add(baimo); //鍘垮煙杈圭晫,缃戞牸 }, - subClick (index) { + subClick(index) { let showindex; - switch(index) { + switch (index) { case 0: - showindex=1; + showindex = 1; break; case 1: - showindex=2; + showindex = 2; break; case 2: - showindex=3; + showindex = 3; break; case 3: - showindex=4; + showindex = 4; break; case 4: - showindex=5; + showindex = 5; break; default: break; } - bus.$emit("showindex",showindex); + bus.$emit("showindex", showindex); }, - prop: [970,970], + prop: [970, 970], nav: { navTop: () => import("@/components/top/navTop"), }, @@ -302,13 +316,26 @@ }); }, }, - mounted () { + mounted() { this.init(); }, }; </script> <style> +.imgbox { + position: absolute; + /* background-color: #fff; */ + /* opacity: 0.2;. */ + /* top:50px; */ + width: 100%; + height: 500px; +} +img { + width: 100%; + height: 100%; + -webkit-user-drag: none; +} #app1 { font-family: "Avenir", Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; -- Gitblit v1.9.3