From 50a7a0eda3810e97bb19f9b989b727d834bcc24c Mon Sep 17 00:00:00 2001
From: wangjuncheng <1>
Date: 星期二, 29 四月 2025 16:30:50 +0800
Subject: [PATCH] 1

---
 src/utils/water.js               |   12 +++---
 src/components/menu/TimeLine.vue |   64 ++++++++++---------------------
 2 files changed, 27 insertions(+), 49 deletions(-)

diff --git a/src/components/menu/TimeLine.vue b/src/components/menu/TimeLine.vue
index 00a8b55..e8c4336 100644
--- a/src/components/menu/TimeLine.vue
+++ b/src/components/menu/TimeLine.vue
@@ -2,30 +2,20 @@
   <div class="timeline-container">
     <div class="controls">
       <div class="control-btn" @click="skipBackward">
-        <img
-          src="@/assets/img/timeline/left.png"
-          class="fas fa-step-backward"
-        />
+        <img src="@/assets/img/timeline/left.png" class="fas fa-step-backward" />
       </div>
       <div class="control-btn play-btn" @click="togglePlay">
         <img v-show="isPlaying" src="@/assets/img/timeline/stop.png" />
         <img v-show="!isPlaying" src="@/assets/img/timeline/start.png" />
       </div>
       <div class="control-btn" @click="skipForward">
-        <img
-          src="@/assets/img/timeline/right.png"
-          class="fas fa-step-forward"
-        />
+        <img src="@/assets/img/timeline/right.png" class="fas fa-step-forward" />
       </div>
       <div class="speed-control">
         <div @click="toggleSpeedMenu">{{ playbackRate }}X</div>
         <div class="speed-menu" v-show="showSpeedMenu">
-          <div
-            v-for="rate in playbackRates"
-            :key="rate"
-            @click.capture="setPlaybackRate(rate)"
-            :class="{ active: playbackRate === rate }"
-          >
+          <div v-for="rate in playbackRates" :key="rate" @click.capture="setPlaybackRate(rate)"
+            :class="{ active: playbackRate === rate }">
             {{ rate }}X
           </div>
         </div>
@@ -35,39 +25,21 @@
     <div class="timeline">
       <div class="dates">
         <div class="current-date">褰撳墠鎾斁鏃堕棿锛歿{ currentPlayingTime }}</div>
-        <div
-          v-for="(date, index) in visibleDates"
-          :key="index"
-          class="date-label"
-        >
+        <div v-for="(date, index) in visibleDates" :key="index" class="date-label">
           <!-- {{ formatDate(date) }} -->
         </div>
       </div>
       <div class="timeline-track" ref="timelineTrack" @click="seekToPosition">
-        <div
-          class="timeline-progress"
-          :style="{ width: progressPercentage + '%' }"
-        ></div>
-        <div
-          class="timeline-cursor"
-          :style="{ left: progressPercentage + '%' }"
-        ></div>
+        <div class="timeline-progress" :style="{ width: progressPercentage + '%' }"></div>
+        <div class="timeline-cursor" :style="{ left: progressPercentage + '%' }"></div>
         <div class="time-markers">
-          <div
-            v-for="(time, index) in timeMarkers"
-            :key="index"
-            class="time-marker"
-          >
+          <div v-for="(time, index) in timeMarkers" :key="index" class="time-marker">
             {{ time }}
           </div>
         </div>
       </div>
     </div>
-    <el-button
-      @click="handleBack"
-      style="margin-top: 26px; margin-left: 30px; margin-right: 10px"
-      >缁撴潫妯℃嫙</el-button
-    >
+    <el-button @click="handleBack" style="margin-top: 26px; margin-left: 30px; margin-right: 10px">缁撴潫妯℃嫙</el-button>
   </div>
 </template>
 
@@ -93,7 +65,7 @@
 import { EventBus } from "@/eventBus";
 import { ElMessage } from "element-plus";
 import { useSimStore } from '@/store/simulation'
-import { storeToRefs } from 'pinia' 
+import { storeToRefs } from 'pinia'
 const simStore = useSimStore()
 const { selectedScheme } = storeToRefs(simStore)
 
@@ -151,10 +123,9 @@
     startPlayback();
     if (!isWaterPrimitiveCreated.value) {
       // 绗竴娆℃挱鏀炬椂鍒涘缓姘翠綋妯℃嫙灞�
-      console.log(selectedScheme.value,'杩欓噷鏄綋鍓嶆柟妗堢殑鍏ㄩ儴淇℃伅');
-      
-      createWaterPrimitive({ interval: intervalMap[playbackRate.value] });
-      
+      console.log(selectedScheme.value, '杩欓噷鏄綋鍓嶆柟妗堢殑鍏ㄩ儴淇℃伅');
+
+      createWaterPrimitive({ interval: intervalMap[playbackRate.value], baseUrl: "/simu/c2h1dc",});
       isWaterPrimitiveCreated.value = true; // 鏍囪涓哄凡鍒涘缓
     } else {
       // 鍚庣画鎾斁鏃惰皟鐢ㄦ仮澶嶆帴鍙�
@@ -275,9 +246,16 @@
 
   return closestIndex;
 }
-
 watch(
   () => selectedScheme.value,
+  (newVal) => {
+    if (newVal) {
+      console.log('閫変腑鏂规宸叉敼鍙�:', newVal)
+      // 浣犲彲浠ヨЕ鍙戜竴浜涢�昏緫锛屾瘮濡傝皟鎺ュ彛绛�
+    }
+  }
+)
+watch(
   () => currentTime.value,
   () => {
     if (waterTimestamps.value.length > 0) {
diff --git a/src/utils/water.js b/src/utils/water.js
index 7acbb37..15ed4fb 100644
--- a/src/utils/water.js
+++ b/src/utils/water.js
@@ -19,16 +19,16 @@
  * @param {number} options.interval - 姘翠綋妯℃嫙鐨勬椂闂撮棿闅旓紙鍗曚綅锛氭绉掞級
  */
 export function createWaterPrimitive(options = {}) {
-  const { interval = 1000 } = options; // 榛樿 interval 涓� 1000
-
+  const { baseUrl = "/simu/c2h1dc", interval = 1000 } = options; // 榛樿 baseUrl 鍜� interval
+  
   water = earthCtrl.simulate.createWaterSimulateLayer({
-    baseUrl: "/simu/c2h1dc", // 浠跨湡鏈嶅姟 URL
-    interval, // 鍔ㄦ�佽缃� interval
+    baseUrl,     // 浠跨湡鏈嶅姟 URL
+    interval,    // 鍔ㄦ�佽缃� interval
     color: new SmartEarth.Cesium.Color.fromCssColorString("#D4F2E7"),
     loop: false, // 鏄惁寰幆鎾斁
     callback: timeCallback, // 鍥炶皟鍑芥暟
   });
-  console.log(`Water simulation started with interval: ${interval}ms`);
+  console.log(`Water simulation started with baseUrl: ${baseUrl}, interval: ${interval}ms`);
 }
 
 /**
@@ -103,5 +103,5 @@
  * @param {number} timeStamp - 褰撳墠鏃堕棿鎴�
  */
 function timeCallback(timeStamp) {
-  console.log(`Current timestamp: ${timeStamp}`);
+  // console.log(`Current timestamp: ${timeStamp}`);
 }
\ No newline at end of file

--
Gitblit v1.9.3