1
wangjuncheng
2025-06-24 ab5be19d6c19a8eb83d4876ddf6a6617013bf25d
src/utils/water.js
@@ -1,4 +1,3 @@
import { cartesianToXY } from "@/utils/map";
import { useSimStore } from "@/store/simulation";
import { storeToRefs } from "pinia";
const simStore = useSimStore();
@@ -81,6 +80,7 @@
  waterLegendData.value = waterHeightLevels;
  console.log(waterLegendData.value, "图例数据");
  water = await earthCtrl.simulate.createWaterSimulateLayer({
    baseUrl,
    interval,
@@ -92,7 +92,7 @@
    colorRender,
    sizeIndex: 0,
  });
  enableWaterArrowFlow(true);
  enableWaterArrowFlow(false);
  toggleWaterShadow(false);
  console.log(
    `仿真模拟参数:请求路径 ${baseUrl}, 帧间间隔 ${interval}ms, 是否开启专题渲染 ${colorRender}`
@@ -117,7 +117,17 @@
  viewer.scene.camera.flyTo(view);
  // console.log("Camera view initialized for water simulation.");
}
/**
 * 更新水颜色
 */
export function updateWaterColor(color) {
  if (water) {
    water.color = Cesium.Color.fromCssColorString(color);
    console.log("切换颜色为:",color);
  } else {
    console.warn("No water simulation to pause.");
  }
}
/**
 * 暂停水体模拟
 */
@@ -184,7 +194,8 @@
 */
export function enableWaterArrowFlow(enabled) {
  if (water) {
    water.arrowEnabled = enabled; // 假设 SDK 支持此属性
    // 默认关闭状态
    water.flowEnabled = enabled; // 假设 SDK 支持此属性
    console.log(`箭头流向动画已${enabled ? "开启" : "关闭"}`);
  } else {
    console.warn("未找到水体模拟图层,请先启动洪水模拟");