From 86c2d61ba9d33f1886cfc904dcaf17f033e4c80a Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Sat, 17 Jan 2026 13:52:53 +0800
Subject: [PATCH] Merge branch 'master' of http://139.196.74.78:10010/r/jagzwxm/ja_web

---
 applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue |   48 +++++++++++++++++++++++++++++++-----------------
 1 files changed, 31 insertions(+), 17 deletions(-)

diff --git a/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue b/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
index 8fb9ea7..538a070 100644
--- a/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
+++ b/applications/drone-command/src/views/recordManage/historyTracks/TrajectoryDiaLog.vue
@@ -1,9 +1,15 @@
 <template>
-	<el-dialog class="ztzf-page-map-view-dialog" v-model="visible" :show-close="false"
-		:close-on-click-modal="false" @closed="handleClosed" destroy-on-close>
+	<el-dialog
+		class="command-page-map-view-dialog"
+		v-model="visible"
+		:show-close="false"
+		:close-on-click-modal="false"
+		@closed="handleClosed"
+		destroy-on-close
+	>
 		<div class="dialog-container">
 			<div class="left-container">
-				<div class="leftMap ztzf-cesium" id="leftMapContainer"></div>
+				<div class="leftMap command-cesium" id="leftMapContainer"></div>
 			</div>
 			<div class="right-container">
 				<div class="header">{{ dialogTitle }}</div>
@@ -32,9 +38,9 @@
 						</el-col>
 					</el-row>
 					<div class="detail-title">轨迹点</div>
-					<div class="ztzf-table-container">
-						<div class="ztzf-table-content">
-							<el-table class="ztzf-data-cockpit-table" :data="list">
+					<div class="command-table-container">
+						<div class="command-table-content">
+							<el-table class="command-data-cockpit-table" :data="list">
 								<el-table-column type="index" width="60" label="序号" />
 								<el-table-column label="经纬度">
 									<template #default="{ row }">{{ row.longitude }},{{ row.latitude }}</template>
@@ -59,6 +65,7 @@
 import { PublicCesium } from '@/utils/cesium/publicCesium'
 import * as Cesium from 'cesium'
 import { flyVisual } from '@/utils/cesium/mapUtil'
+import { ArrowLineMaterialProperty } from '@/utils/cesium/Material'
 
 const initForm = () => ({
 	droneName: '',
@@ -84,12 +91,12 @@
 })
 
 // 关闭弹框
-function handleCancel () {
+function handleCancel() {
 	visible.value = false
 }
 
 // 加载详情
-async function loadDetail () {
+async function loadDetail() {
 	if (!formData.value.id) return
 	const res = await fwDroneFlightRecordDetailApi({ id: formData.value.id })
 	const res1 = await fwDroneFlightRecordDetailPageApi({ flightRecordId: formData.value.id })
@@ -98,28 +105,35 @@
 	formData.value = res?.data?.data ?? {}
 }
 
+let arrowLineMaterialProperty = new ArrowLineMaterialProperty({
+	color: new Cesium.Color(128 / 255, 215 / 255, 255 / 255, 1),
+	directionColor: new Cesium.Color(1, 1, 1, 1),
+	outlineColor: new Cesium.Color(1, 1, 1, 1),
+	outlineWidth: 0,
+	speed: 5,
+})
+
 // 角度转c3
-function degreesToC3 ({ longitude, latitude, height = 0 }) {
+function degreesToC3({ longitude, latitude, height = 0 }) {
 	return Cesium.Cartesian3.fromDegrees(longitude, latitude, height)
 }
 // 渲染航线
-function drawFlightPath () {
+function drawFlightPath() {
 	const positions = list.value.map(p => degreesToC3(p))
 	droneLineEntity && geometricSource.entities.remove(droneLineEntity)
-	const color = Cesium.Color.fromCssColorString('#00D690')
 	droneLineEntity = geometricSource.entities.add({
 		polyline: {
+			width: 4,
 			positions: positions,
-			width: 3,
-			material: new Cesium.PolylineOutlineMaterialProperty({ color }),
+			material: arrowLineMaterialProperty,
 			clampToGround: false,
 		},
 	})
-	viewer.flyTo(droneLineEntity)
+	viewer.flyTo(droneLineEntity, { duration: 0 })
 }
 
 // 关闭后重置
-function handleClosed () {
+function handleClosed() {
 	formData.value = initForm()
 	list.value = []
 	viewer = null
@@ -128,7 +142,7 @@
 }
 
 let viewer, geometricSource, droneLineEntity
-function initMap () {
+function initMap() {
 	if (viewer) return
 	const publicCesiumInstance = new PublicCesium({
 		dom: 'leftMapContainer',
@@ -143,7 +157,7 @@
 }
 
 // 打开弹框
-async function open ({ mode, row } = {}) {
+async function open({ mode, row } = {}) {
 	dialogMode.value = mode || 'add'
 	visible.value = true
 	await nextTick()

--
Gitblit v1.9.3