|
@@ -35,14 +35,7 @@ import usePanelStore from '@/store/panel'
|
|
|
import useUeStore from '@/store/ue'
|
|
|
import { getAssetsFile } from '@/utils/require'
|
|
|
import { hexToRgb, wait } from '@/utils/tools'
|
|
|
-import {
|
|
|
- clearAllShapes,
|
|
|
- startSceneDemo,
|
|
|
- toggleGlobalUav,
|
|
|
- initSceneDemo,
|
|
|
- renderShapes,
|
|
|
- toggleTrackLine,
|
|
|
-} from '@/utils/ueActions'
|
|
|
+import { clearAllShapes, startSceneDemo, initSceneDemo, renderShapes, toggleTrackLine } from '@/utils/ueActions'
|
|
|
import { getCurrentInstance, onBeforeMount, onBeforeUnmount, reactive, ref, watch } from 'vue'
|
|
|
import FloatPanelUav from './FloatPanelUav.vue'
|
|
|
|
|
@@ -62,9 +55,12 @@ const listData = ref([
|
|
|
{ label: '电量预警', value: 'Electricity', pic: 'dl', count: 0 },
|
|
|
])
|
|
|
|
|
|
+const currentDemo = ref({})
|
|
|
+
|
|
|
async function handleDemo(item) {
|
|
|
+ currentDemo.value = item
|
|
|
layoutStore.sceneLoading = true
|
|
|
- toggleGlobalUav(false)
|
|
|
+ ueStore.toggleGlobalUav(false)
|
|
|
uavInfoShow.value = false
|
|
|
Object.keys(alertInfo.value).forEach((k) => {
|
|
|
alertInfo.value[k].show = false
|
|
@@ -127,7 +123,7 @@ watch(
|
|
|
() => ueStore.sceneReady,
|
|
|
(val) => {
|
|
|
if (val) {
|
|
|
- toggleGlobalUav(true)
|
|
|
+ ueStore.toggleGlobalUav(true)
|
|
|
}
|
|
|
},
|
|
|
{ immediate: true }
|
|
@@ -173,7 +169,7 @@ const alertInfo = ref({
|
|
|
})
|
|
|
|
|
|
function handleCloseInfo() {
|
|
|
- toggleGlobalUav(true)
|
|
|
+ ueStore.toggleGlobalUav(true)
|
|
|
uavInfoShow.value = false
|
|
|
initSceneDemo()
|
|
|
panelStore.setWeather('Clear Skies')
|
|
@@ -248,12 +244,19 @@ onBeforeMount(() => {
|
|
|
alertInfo.value.power.distance = distance ? Number(distance).toFixed(2) : 0
|
|
|
break
|
|
|
}
|
|
|
+ case 'FlightOver': {
|
|
|
+ if (currentDemo.value) {
|
|
|
+ handleCloseInfo()
|
|
|
+ currentDemo.value = null
|
|
|
+ }
|
|
|
+ break
|
|
|
+ }
|
|
|
}
|
|
|
})
|
|
|
})
|
|
|
|
|
|
onBeforeUnmount(() => {
|
|
|
- toggleGlobalUav(false)
|
|
|
+ ueStore.toggleGlobalUav(false)
|
|
|
clearAllShapes()
|
|
|
panelStore.setWeather('Clear Skies')
|
|
|
layoutStore.sceneLoading = false
|
|
@@ -355,6 +358,7 @@ onBeforeUnmount(() => {
|
|
|
transition:
|
|
|
opacity 0.3s ease,
|
|
|
transform 0.3s ease-out,
|
|
|
- left 0.5s ease-out;
|
|
|
+ left 0.5s ease-out,
|
|
|
+ height 0.3s ease;
|
|
|
}
|
|
|
</style>
|