From 49f8e3361f43becf44e0c7509e622054633f171e Mon Sep 17 00:00:00 2001
From: jihongshun <1151753686@qq.com>
Date: 星期三, 24 九月 2025 14:10:51 +0800
Subject: [PATCH] 时间轴悬停

---
 src/views/system/flightRouteSimulation/index.vue |   43 +++++++++++++++++++++++++++++++++----------
 1 files changed, 33 insertions(+), 10 deletions(-)

diff --git a/src/views/system/flightRouteSimulation/index.vue b/src/views/system/flightRouteSimulation/index.vue
index dfc3fb9..4040c57 100644
--- a/src/views/system/flightRouteSimulation/index.vue
+++ b/src/views/system/flightRouteSimulation/index.vue
@@ -147,11 +147,22 @@
         this.waypoints = await this.parseKMZ(arrayBuffer);
         //鍔犵偣閫昏緫 姣斿鍚戠2-n-1涓彃鍏ュ厓绱�  缁忕含搴︿负褰撳墠鐨�  heading pitch roll 涓嬩竴涓殑
         const dealArr = [];
-        // console.log(">> this.waypoints:", this.waypoints);
+        console.log(">> this.waypoints:", this.waypoints);
         for (let i = 0; i < this.waypoints.length - 1; i++) {
             dealArr.push(this.waypoints[i]); // Push the current element
             const current = this.waypoints[i];
             const next = this.waypoints[i + 1];
+            dealArr.push({
+                "lng": current.lng,
+                "lat": current.lat,
+                "alt": current.alt,
+                'flyHeading':current.flyHeading,
+                "heading": current.heading,
+                "pitch": current.pitch,
+                "roll": current.roll,
+                "zoom":current.zoom || 1,
+                'wait' : 5
+            });
             dealArr.push({
                 "lng": next.lng,
                 "lat": next.lat,
@@ -160,13 +171,16 @@
                 "heading": current.heading,
                 "pitch": current.pitch,
                 "roll": current.roll,
-                "zoom":next.zoom || 1
+                "zoom":current.zoom || 1,
+                'wait':1
             });
+            
         }
 
         // Push the last element without any change
         dealArr.push(this.waypoints[this.waypoints.length - 1]);
         this.waypoints = dealArr
+        console.log(dealArr)
         this.fileInfo = `
           鑸偣:${this.waypoints.length}涓� <br/>
           璺濈:${this.calculateTotalDistance(this.waypoints).toFixed(2)}鍏噷
@@ -187,10 +201,19 @@
         }
         // const startDate = new Date("2025-04-01T13:00:00Z");
         const startDate = new Date(date.toISOString());
+        console.log(dealArr)
+          let nowTime 
         const result = dealArr.map((item, index) => {
+          console.log(index)
         // const result = this.waypoints.map((item, index) => {
           // 姣忔鍔犱竴澶�
-          const time = new Date(startDate.getTime() + index * 60 * 1000).toISOString();
+          // const time = new Date(startDate.getTime() + index * 60 *1000 + (item.wait ? item.wait :1 ) * 60 * 1000).toISOString();
+          if(index == 0) {
+             nowTime = startDate.getTime() + 1  *1000
+          }else{
+            nowTime = nowTime + (item.wait ? item.wait :1 )  *1000
+          }
+          const time  = new Date(nowTime).toISOString()
           // const time = Cesium.JulianDate.addSeconds(startDate, 3600, new Cesium.JulianDate());
           return {
             time,
@@ -208,7 +231,7 @@
           };
         });
         this.trajectoryData = result
-        // console.log(this.trajectoryData)
+        console.log(this.trajectoryData)
         this.loadTimeLine()
       } catch (error) {
         console.error(error);
@@ -319,10 +342,10 @@
         const height = placemarks[i]["wpml:height"]?.[0];
         if(i<placemarks.length-1){
           // console.log(placemarks[i])
-          console.log( placemarks[i].Point?.[0]?.coordinates?.[0].split(',')[0])
-          console.log( placemarks[i].Point?.[0]?.coordinates?.[0].split(',')[1])
-          console.log( placemarks[i+1].Point?.[0]?.coordinates?.[0].split(',')[0])
-          console.log( placemarks[i+1].Point?.[0]?.coordinates?.[0].split(',')[1])
+          // console.log( placemarks[i].Point?.[0]?.coordinates?.[0].split(',')[0])
+          // console.log( placemarks[i].Point?.[0]?.coordinates?.[0].split(',')[1])
+          // console.log( placemarks[i+1].Point?.[0]?.coordinates?.[0].split(',')[0])
+          // console.log( placemarks[i+1].Point?.[0]?.coordinates?.[0].split(',')[1])
           let lon1 = placemarks[i].Point?.[0]?.coordinates?.[0].split(',')[0]
           let lat1 = placemarks[i].Point?.[0]?.coordinates?.[0].split(',')[1]
           let lon2 = placemarks[i+1].Point?.[0]?.coordinates?.[0].split(',')[0]
@@ -343,8 +366,8 @@
             // lastHeading = this.azimuthtwopoi(lon1,lat1,lon2,lat2)
           }
        
-          console.log(lastHeading)
-            console.log('+++++++++++++++++++++++++')
+          // console.log(lastHeading)
+          //   console.log('+++++++++++++++++++++++++')
         }
         // 鎻愬彇 aircraftHeading
         // 鎻愬彇 action 閲岀殑鍙傛暟

--
Gitblit v1.9.3