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/assets/image/feixingqi.png |    0 
 src/components/viewer.vue      |  157 ++++++++++++++++++++++++++++++---------------------
 2 files changed, 92 insertions(+), 65 deletions(-)

diff --git a/src/assets/image/feixingqi.png b/src/assets/image/feixingqi.png
new file mode 100644
index 0000000..6ed1747
--- /dev/null
+++ b/src/assets/image/feixingqi.png
Binary files differ
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