From e954cba595eddafa423f8142cd55be69952f0e93 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Tue, 03 Feb 2026 16:14:17 +0800
Subject: [PATCH] feat:历史轨迹地图加载方式更换

---
 applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue |   26 ++++++++++++++------------
 1 files changed, 14 insertions(+), 12 deletions(-)

diff --git a/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue b/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
index 869bdae..36a6d36 100644
--- a/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
+++ b/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
@@ -9,7 +9,15 @@
 	>
 		<div class="dialog-container">
 			<div class="left-container">
-				<div class="leftMap command-cesium" id="leftMapContainer"></div>
+				<CommonCesiumMap
+					ref="mapRef"
+					class="leftMap command-cesium"
+					:active="visible"
+					:flat-mode="false"
+					:terrain="true"
+					:layer-mode="4"
+					:boundary="false"
+				/>
 			</div>
 			<div class="right-container">
 				<div class="header">
@@ -67,11 +75,10 @@
 import { Close } from '@element-plus/icons-vue'
 
 import { computed, nextTick, ref } from 'vue'
+import CommonCesiumMap from '@/components/map-container/common-cesium-map.vue'
 import { fwDroneFlightRecordDetailApi } from '@/views/recordManage/historyTracks/fwDroneFlightRecord'
 import { fwDroneFlightRecordDetailPageApi } from '@/views/recordManage/historyTracks/flyTrajectory'
-import { PublicCesium } from '@/utils/cesium/publicCesium'
 import * as Cesium from 'cesium'
-import { flyVisual } from '@ztzf/utils'
 import { ArrowLineMaterialProperty } from '@/utils/cesium/Material'
 import droneIcon from '@/assets/images/dataCockpit/map/drone.png'
 
@@ -83,11 +90,11 @@
 	stayDuration: '',
 })
 let list = ref([])
-const emit = defineEmits(['success'])
 const formData = ref(initForm()) // 表单数据
 const visible = ref(false) // 弹框显隐
 const dialogMode = ref('add') // 弹框模式
 const dialogReadonly = computed(() => dialogMode.value === 'view')
+const mapRef = ref(null)
 const dialogTitle = computed(() => {
 	if (dialogMode.value === 'edit') {
 		return '编辑'
@@ -170,14 +177,9 @@
 let viewer, geometricSource, droneLineEntity, startDroneEntity
 function initMap() {
 	if (viewer) return
-	const publicCesiumInstance = new PublicCesium({
-		dom: 'leftMapContainer',
-		flatMode: false,
-		terrain: true,
-		layerMode: 4,
-		boundary: false,
-	})
-	viewer = publicCesiumInstance.getViewer()
+	const map = mapRef.value?.getMap?.()
+	if (!map?.viewer) return
+	viewer = map.viewer
 	geometricSource = new Cesium.CustomDataSource('geometricSource')
 	viewer.dataSources.add(geometricSource)
 }

--
Gitblit v1.9.3