From b4b062b12fb7f4ae1801dd8a1c34d4deea84e6cb Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Tue, 20 Jan 2026 17:13:58 +0800
Subject: [PATCH] feat:无人机轨迹增加无人机icon
---
applications/drone-command/src/assets/images/dataCockpit/map/drone.png | 0
applications/drone-command/src/assets/images/dataCockpit/legend/drone.png | 0
applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue | 17 +++++++++++++++--
3 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/applications/drone-command/src/assets/images/dataCockpit/legend/drone.png b/applications/drone-command/src/assets/images/dataCockpit/legend/drone.png
index 130cf04..745f8bb 100644
--- a/applications/drone-command/src/assets/images/dataCockpit/legend/drone.png
+++ b/applications/drone-command/src/assets/images/dataCockpit/legend/drone.png
Binary files differ
diff --git a/applications/drone-command/src/assets/images/dataCockpit/map/drone.png b/applications/drone-command/src/assets/images/dataCockpit/map/drone.png
new file mode 100644
index 0000000..bbc513c
--- /dev/null
+++ b/applications/drone-command/src/assets/images/dataCockpit/map/drone.png
Binary files differ
diff --git a/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue b/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
index 57be9e6..1840cd8 100644
--- a/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
+++ b/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
@@ -73,6 +73,7 @@
import * as Cesium from 'cesium'
import { flyVisual } from '@/utils/cesium/mapUtil'
import { ArrowLineMaterialProperty } from '@/utils/cesium/Material'
+import droneIcon from '@/assets/images/dataCockpit/map/drone.png'
const initForm = () => ({
droneName: '',
@@ -127,6 +128,7 @@
// 渲染航线
function drawFlightPath() {
const positions = list.value.map(p => degreesToC3(p))
+ if (!positions.length) return
droneLineEntity && geometricSource.entities.remove(droneLineEntity)
droneLineEntity = geometricSource.entities.add({
polyline: {
@@ -134,6 +136,16 @@
positions: positions,
material: arrowLineMaterialProperty,
clampToGround: false,
+ },
+ })
+ startDroneEntity && geometricSource.entities.remove(startDroneEntity)
+ startDroneEntity = geometricSource.entities.add({
+ position: positions[0],
+ billboard: {
+ image: droneIcon,
+ width: 40,
+ height: 40,
+ verticalOrigin: Cesium.VerticalOrigin.CENTER,
},
})
viewer.flyTo(droneLineEntity, { duration: 0 })
@@ -146,6 +158,7 @@
viewer = null
geometricSource = null
droneLineEntity = null
+ startDroneEntity = null
}
function getRowClassName({ row }) {
@@ -154,7 +167,7 @@
return row?.isAlarm === 1 ? 'alarm-row' : ''
}
-let viewer, geometricSource, droneLineEntity
+let viewer, geometricSource, droneLineEntity, startDroneEntity
function initMap() {
if (viewer) return
const publicCesiumInstance = new PublicCesium({
@@ -189,7 +202,7 @@
<style scoped lang="scss">
:deep(.alarm-row) {
background: #2B2B4C !important;
-
+
td {
background-color: transparent !important;
}
--
Gitblit v1.9.3