| | |
| | | @is-playing="isPlaying" |
| | | :waterSimulateParams="waterSimulateParams" |
| | | @playbackFinished="playbackFinished" |
| | | @end="endSimulate" |
| | | /> |
| | | <DebuffDetail |
| | | v-if="showDebuffDetail" |
| | |
| | | </template> |
| | | |
| | | <script setup> |
| | | import { ref, onMounted, onUnmounted } from "vue"; |
| | | import { ref, onMounted, onUnmounted, provide } from "vue"; |
| | | import TimeLine from "@/components/menu/TimeLine.vue"; |
| | | import Left from "./left/Left.vue"; |
| | | import echartInfo from "@/components/monifangzhen/echartInfo.vue"; |
| | |
| | | const showDebuffTable = ref(false); |
| | | const isDynamicMode = ref(false); |
| | | const isFinish = ref(true); |
| | | |
| | | // 提供方法给所有子组件 |
| | | provide("simulateActions", { |
| | | startSimulate, |
| | | endSimulate, |
| | | }); |
| | | |
| | | function startSimulate(form) { |
| | | // console.log("form", form); |
| | |
| | | const list = MaxInfluenceAreaList.value; |
| | | list.forEach((item, index) => { |
| | | const geosjon = geomToGeoJSON(item.geom); |
| | | Cesium.GeoJsonDataSource.load(geosjon).then((dataSource) => { |
| | | Cesium.GeoJsonDataSource.load(geosjon, { |
| | | stroke: Cesium.Color.RED, // 边框颜色 |
| | | strokeWidth: 2, // 边框宽度 |
| | | fill: Cesium.Color.RED.withAlpha(0.5), // 填充颜色(带透明度) |
| | | }).then((dataSource) => { |
| | | viewer.dataSources.add(dataSource); |
| | | dataSources.push(dataSource); |
| | | }); |
| | |
| | | checkedKeys.value = ["避险点"]; |
| | | showDebuffDetail.value = true; |
| | | getTimeMarkers(); |
| | | |
| | | } |
| | | } |
| | | function openDetail() { |