徐景良 4 weeks ago
commit f3a2821d71

@ -2,7 +2,6 @@ import { clientReizePublish, clientReizeSubscribe } from '@/utils/mqtt';
import { airPortStore } from '@/store/modules/airport';
const airPortStoreVal = airPortStore();
const gateway = airPortStoreVal.getGateway;
export const return_home_status = {
canceled: '取消或终止',
@ -16,26 +15,26 @@ export const return_home_status = {
};
export const eventsTopicReize = (data) => {
// 发送消息
clientReizePublish('thing/product/' + gateway + '/events', data);
clientReizePublish('thing/product/' + airPortStoreVal.getGateway + '/events', data);
};
export const events_replyTopicReize = () => {
// 订阅消息
clientReizeSubscribe('thing/product/' + gateway + '/events_reply');
clientReizeSubscribe('thing/product/' + airPortStoreVal.getGateway + '/events_reply');
};
export const servicesTopicReize = (data) => {
// 发送消息
clientReizePublish('thing/product/' + gateway + '/services', data);
clientReizePublish('thing/product/' + airPortStoreVal.getGateway + '/services', data);
};
export const services_replyTopicReize = () => {
// 订阅消息
clientReizeSubscribe('thing/product/' + gateway + '/services_reply');
clientReizeSubscribe('thing/product/' + airPortStoreVal.getGateway + '/services_reply');
};
export const drcDownTopicReize = (data) => {
// 发送消息thing/product/{gateway_sn}/drc/down
clientReizePublish('thing/product/' + gateway + '/drc/down', data);
clientReizePublish('thing/product/' + airPortStoreVal.getGateway + '/drc/down', data);
};
export const eventsTopicSubscribeReize = () => {
// 发送消息
clientReizeSubscribe('thing/product/' + gateway + '/events');
clientReizeSubscribe('thing/product/' + airPortStoreVal.getGateway + '/events');
};

@ -3,7 +3,6 @@ import { airPortStore } from '@/store/modules/airport';
import errorCode from './error_code.json';
const airPortStoreVal = airPortStore();
const gateway = airPortStoreVal.getGateway;
export const debug_mode_openOptions = {
canceled: '取消或终止',
failed: '失败',
@ -35,39 +34,40 @@ export const errorName = (code) => {
}
};
export const servicesTopic = (data) => {
console.log(airPortStoreVal.getGateway);
// 发送消息
clientPublish('thing/product/' + gateway + '/services', data);
clientPublish('thing/product/' + airPortStoreVal.getGateway + '/services', data);
};
export const services_replyTopic = () => {
// 订阅消息
clientSubscribe('thing/product/' + gateway + '/services_reply');
clientSubscribe('thing/product/' + airPortStoreVal.getGateway + '/services_reply');
};
export const eventsTopic = (data) => {
// 发送消息
clientPublish('thing/product/' + gateway + '/events', data);
clientPublish('thing/product/' + airPortStoreVal.getGateway + '/events', data);
};
export const events_replyTopic = () => {
// 订阅消息
clientSubscribe('thing/product/' + gateway + '/events_reply');
clientSubscribe('thing/product/' + airPortStoreVal.getGateway + '/events_reply');
};
export const drcDownTopic = (data) => {
// 发送消息thing/product/{gateway_sn}/drc/down
clientPublish('thing/product/' + gateway + '/drc/down', data);
clientPublish('thing/product/' + airPortStoreVal.getGateway + '/drc/down', data);
};
export const eventsTopicSubscribe = () => {
// 发送消息
clientSubscribe('thing/product/' + gateway + '/events');
clientSubscribe('thing/product/' + airPortStoreVal.getGateway + '/events');
};
export const drcUpTopic = () => {
clientSubscribe('thing/product/' + gateway + '/drc/up');
clientSubscribe('thing/product/' + airPortStoreVal.getGateway + '/drc/up');
};
export const setTopic = (data) => {
// 发送消息
clientPublish('thing/product/' + gateway + '/property/set', data);
clientPublish('thing/product/' + airPortStoreVal.getGateway + '/property/set', data);
};
export const set_replyTopic = () => {
// 订阅消息
clientSubscribe('thing/product/' + gateway + '/services_reply');
clientSubscribe('thing/product/' + airPortStoreVal.getGateway + '/services_reply');
};

@ -69,12 +69,13 @@
.leftMenuDiv {
position:absolute;
top:20px;
left:20px;
top:0px;
left:0px;
z-index:1;
display:flex;
gap:15px;
width: 340px;
height: 100%;
}
.mapDiv {
@ -84,9 +85,10 @@
}
.areaInfoDiv {
position: relative;
position: absolute;
width: calc(100% - 380px);
height: 100%;
width: 320px;
left: 340px;
}
}
</style>

@ -85,20 +85,21 @@
-ms-user-select: none; /* IE/Edge */
user-select: none;
position: relative;
position: fixed;
width: 320px;
height: 100%;
background: #0D0E15;
box-shadow: 0px 10px 30px 0px rgba(0,0,6,0.15);
padding: 15px;
right: 0;
}
.imgbox{
width: calc(100% - 580px);
width: 100%;
height: 185px;
background: #0D0E15;
position: fixed;
position: absolute;
bottom: 0;
left: 570px;
left: 0;
z-index: 100;
overflow-x: scroll;
.bannercontainer{

@ -115,7 +115,7 @@
position: relative;
display: flex;
width: 100%;
height: calc(100%-50px);
height: 100%;
.leftMenuContent_2 {
position: relative;
@ -131,7 +131,7 @@
.leftMenuContent_list {
overflow-y: auto;
max-height: 720px;
max-height: calc(100% - 60px);
// AI
.showMenuInfo_area {

@ -8,6 +8,7 @@
:allAreaDataList="allAreaDataList"
:allWorkspaceDataList="allWorkspaceDataList"
:nowShowAreaData="nowShowAreaData"
:projectList="projectList"
@changeLeftMenuShow="changeLeftMenuShow"
@handlerLocation="handlerLocation"
@changeAnnotationInfoShow="changeAnnotationInfoShow"
@ -84,6 +85,10 @@
// ----------------------------------------------------
const pathLeftMenuRef = ref();
const leftMenuShow = ref(true);
const projectList = ref([
{ label: '全部项目', value: 'all' },
])
function changeLeftMenuShow() {
leftMenuShow.value = !leftMenuShow.value;
}
@ -95,6 +100,13 @@
function getWorksListData() {
GetWorkspaceList().then((result1) => {
allWorkspaceDataList.value = result1;
console.log('projectlist',result1)
result1.forEach(item => {
projectList.value.push({
label: item.WorkspaceName,
value: item.Id
})
})
})
}
//
@ -256,7 +268,7 @@
z-index:1;
display:flex;
gap:15px;
width: 340px;
width: 423px;
}
.mapDiv {

@ -110,6 +110,14 @@
<a-col :span="18">
<div class="annotationContent"> {{ props.nowShowAreaData.createUserName }}</div>
</a-col>
<a-col :span="6">
<div class="annotationTitle">所属项目</div>
</a-col>
<a-col :span="18">
<div class="annotationContent">
{{ props.nowShowAreaData.workSpaceName}}
</div>
</a-col>
</a-row>
</div>
</template>

@ -20,13 +20,20 @@
</a-select>
<a-select
v-model:value="areastate"
style="width: 120px"
style="width: 120px; margin-right: 15px;"
@change="handleChangeAreaSelect"
>
<a-select-option value="all">全部状态</a-select-option>
<a-select-option value="0">已启用</a-select-option>
<a-select-option value="1">已禁用</a-select-option>
</a-select>
<a-select
v-model:value="areaProject"
style="width: 120px"
placeholder="全部项目"
@change="handleChangeAreaSelect"
:options="props.projectList"
/>
</div>
<!-- 列表 -->
<div v-for="show in showMenuInfoList" :key="show.id">
@ -196,6 +203,7 @@
'allWorkspaceDataList',
'allAreaDataList',
'nowShowAreaData',
'projectList'
]);
const emits = defineEmits([
'changeLeftMenuShow',
@ -224,6 +232,7 @@
// -
const areatype = ref('all');
const areastate = ref('all');
const areaProject = ref('all')
// -
function getType(type) {
let name = '';
@ -244,12 +253,16 @@
const filterAfterAreaDataList = ref(props.allAreaDataList);
function handleChangeAreaSelect() {
let filterAreaData = props.allAreaDataList;
console.log('filterAreaData',filterAreaData)
if (areatype.value !== 'all') {
filterAreaData = filterAreaData.filter((item) => item.type == areatype.value);
}
if (areastate.value !== 'all') {
filterAreaData = filterAreaData.filter((item) => item.state == areastate.value);
}
if (areaProject.value !== 'all') {
filterAreaData = filterAreaData.filter((item) => item.workSpaceId == areaProject.value);
}
filterAreaData.forEach((annotation) => {
props.allWorkspaceDataList.forEach((tree) => {
if (tree.Id == annotation.workSpaceId) {

@ -5,22 +5,13 @@
<div class="modalChooseObject_select_title"> 1 选择航线</div>
<div class="modalChooseObject_select_choose">
<a-select
v-model:value="value"
style="width: 200px"
:options="hangxianOptions"
placeholder="选择项目"
></a-select>
<a-select
v-model:value="value"
style="width: 200px"
:options="hangxianOptions"
placeholder="选择任务"
></a-select>
<a-select
v-model:value="value"
style="width: 200px"
:options="hangxianOptions"
placeholder="选择计划"
v-model:value="airLineValue"
style="width: 300px"
allowClear
:options="options"
:fieldNames="{ label: 'airLineName', value: 'id' }"
placeholder="选择航线"
@change="getMediaFileOptions1"
></a-select>
</div>
</div>
@ -32,20 +23,21 @@
<span style="font-weight: bold; font-size: 16px">视窗1</span>
<span style="color: #dcdee1; margin-left: 10px; margin-right: 10px">|</span>
<a-input
v-model:value="inputSearchValue"
v-model:value="inputSearchValue1"
allow-clear
placeholder="搜索文件夹名称"
style="width: 300px"
@change="searchFilter1"
>
<template #suffix>
<SearchOutlined class="SearchOutlined" @click="searchFilter" />
<SearchOutlined class="SearchOutlined" @click="searchFilter1" />
</template>
</a-input>
</div>
<div class="modalChooseObject_choose_table">
<a-table
:columns="columns"
:data-source="data1"
:data-source="showTableData1"
:pagination="false"
:scroll="{ x: 600, y: 325 }"
/>
@ -61,11 +53,25 @@
</div>
<div class="modalChooseObject_choose_showDiv">
<div class="modalChooseObject_choose_showname"> 视窗2 </div>
<div class="modalChooseObject_choose_showname">
<span style="font-weight: bold; font-size: 16px">视窗2</span>
<span style="color: #dcdee1; margin-left: 10px; margin-right: 10px">|</span>
<a-input
v-model:value="inputSearchValue2"
allow-clear
placeholder="搜索文件夹名称"
style="width: 300px"
@change="searchFilter2"
>
<template #suffix>
<SearchOutlined class="SearchOutlined" @click="searchFilter2" />
</template>
</a-input>
</div>
<div class="modalChooseObject_choose_table">
<a-table
:columns="columns"
:data-source="data2"
:data-source="showTableData2"
:pagination="false"
:scroll="{ x: 600, y: 325 }"
/>
@ -88,8 +94,11 @@
</div>
</template>
<script lang="ts" setup>
import { ref } from 'vue';
import { onMounted, ref } from 'vue';
import { SearchOutlined, LaptopOutlined } from '@ant-design/icons-vue';
import { GetMediaFile } from '@/api/demo/mediaLibrary';
import { getAirLineList } from '@/api/sys/workplan';
import dayjs from 'dayjs';
const props = defineProps(['']);
@ -99,48 +108,70 @@
emit('closeModalChooseObject');
}
const hangxianOptions = [
{
value: '航点航线测试',
label: '航点航线测试',
},
{
value: '新建航点航线',
label: '新建航点航线',
},
];
const columns = [
{
title: '文件夹名称',
dataIndex: 'flodername',
dataIndex: 'name',
width: 200,
},
{
title: '创建时间',
dataIndex: 'createtime',
dataIndex: 'createTime',
width: 100,
sorter: {
compare: (a, b) => {
const timeA = dayjs(a.createtime).isValid() ? dayjs(a.createtime).valueOf() : 0;
const timeB = dayjs(b.createtime).isValid() ? dayjs(b.createtime).valueOf() : 0;
const timeA = dayjs(a.createTime).isValid() ? dayjs(a.createTime).valueOf() : 0;
const timeB = dayjs(b.createTime).isValid() ? dayjs(b.createTime).valueOf() : 0;
return timeA - timeB;
},
multiple: 3,
},
},
];
const data1 = [
// {
// flodername: '1',
// createtime: '2024-05-09 12:12:12',
// },
// {
// flodername: '12',
// createtime: '2025-05-09 12:12:12',
// },
];
const data2 = [];
// 1 线
onMounted(() => {
getAirList();
});
const options = ref([]);
const airLineValue = ref();
const getAirList = async () => {
let query = {
Ascending: false,
page: 1,
limit: 100,
};
let res = await getAirLineList(query);
options.value = res.items;
};
// 1
let data1: any = [];
const inputSearchValue1 = ref('');
const showTableData1 = ref([]);
// 2
let data2: any = [];
const inputSearchValue2 = ref('');
const showTableData2 = ref([]);
// 1
function getMediaFileOptions1() {
GetMediaFile({
page: 1,
limit: 100,
objectKeyExist: 0,
// taskId: airLineValue.value
}).then((res) => {
data1 = res.items;
showTableData1.value = data1;
});
}
// 2
function getMediaFileOptions2() {}
function searchFilter1() {
showTableData1.value = data1.filter((item) => item.name.includes(inputSearchValue1.value));
}
</script>
<style lang="less" scoped>
.modalChooseObjectDiv {

@ -97,7 +97,14 @@
<span
style="width: 100%; display: flex; align-items: center; justify-content: center"
>
{{ record.size ? record.size : '-' }}
{{ record.size ? parseFloat((record.size / (1024 * 1024)).toFixed(2)) + 'M' : '-' }}
</span>
</template>
<template v-if="column.key === 'airLineName'">
<span
style="width: 100%; display: flex; align-items: center; justify-content: center"
>
{{ record.airLineName ? record.airLineName : '-' }}
</span>
</template>
<template v-if="column.key === 'fileTags'">
@ -105,6 +112,27 @@
<a-tag color="success" v-for="la in record.fileTags" :key="la">{{ la }}</a-tag>
</div>
</template>
<template v-if="column.key === 'droneModelName'">
<span
style="width: 100%; display: flex; align-items: center; justify-content: center"
>
{{ record.droneModelName ? record.droneModelName : '0-100-1' }}
</span>
</template>
<template v-if="column.key === 'payloadModelName'">
<span
style="width: 100%; display: flex; align-items: center; justify-content: center"
>
{{ record.payloadModelName ? record.payloadModelName : '1-99-0' }}
</span>
</template>
<template v-if="column.key === 'createUserName'">
<span
style="width: 100%; display: flex; align-items: center; justify-content: center"
>
{{ record.createUserName ? record.createUserName : '-' }}
</span>
</template>
<template v-if="column.key === 'action'">
<div class="svg-container">
<a-tooltip placement="top">
@ -467,7 +495,15 @@
const searchParams = ref();
const [
registerTable,
{ reload, getDataSource, getSelectRows, setSelectedRows, clearSelectedRowKeys },
{
reload,
getDataSource,
getSelectRows,
setSelectedRows,
clearSelectedRowKeys,
getPaginationRef,
setPagination,
},
] = useTable({
api: GetMediaFile,
rowKey: 'id',
@ -557,6 +593,11 @@
nowParentKey.value = f.id;
floders.value = floders.value.splice(0, index + 1);
clearSelectedRowKeys();
if (current) {
setPagination({
current: current,
});
}
reload().then((res) => {
showTableData.value = res;
});
@ -691,6 +732,7 @@
//
const previewRecordList: any = ref([]);
// -
let current = 1;
async function lookRecord(record) {
//
if (record.objectKey) {
@ -723,6 +765,8 @@
id: nowParentKey.value,
name: record.name,
});
current = getPaginationRef().current;
setPagination({ current: 1 });
reload().then((res) => {
showTableData.value = res;
});

@ -8,7 +8,7 @@ export const columns: BasicColumn[] = [
title: '文件名称',
dataIndex: 'name',
align: 'left',
width: 300,
width: 250,
},
{
title: '创建时间',
@ -20,19 +20,37 @@ export const columns: BasicColumn[] = [
title: '大小',
dataIndex: 'size',
align: 'center',
width: 75,
width: 50,
},
{
title: '标签',
dataIndex: 'fileTags',
align: 'center',
width: 200,
width: 150,
},
{
title: '航线名称',
dataIndex: 'airLineName',
align: 'center',
width: 150,
},
{
title: '拍摄飞机',
dataIndex: 'droneModelName',
align: 'center',
width: 100,
},
{
title: '拍摄负载',
dataIndex: 'payloadModelName',
align: 'center',
width: 100,
},
{
title: '设备名称',
dataIndex: 'equipmentName',
title: '拍摄人员',
dataIndex: 'createUserName',
align: 'center',
width: 200,
width: 100,
},
{
title: '操作',

@ -973,6 +973,53 @@
}
//------------------------------------------------------------------------
//
const dragState = {
isDragging: false,
initialMouseX: 0,
initialMouseY: 0,
initialElementX: 0,
initialElementY: 0,
};
onMounted(() => {
setupDragListeners();
});
function setupDragListeners() {
const dragElement = document.querySelector('.dragModal');
if (!dragElement) return;
if (graffitiFlag.value) return;
// 使便
const handleMouseDown = (event) => {
dragState.isDragging = true;
dragState.initialMouseX = event.clientX;
dragState.initialMouseY = event.clientY;
dragState.initialElementX = dragElement.offsetLeft;
dragState.initialElementY = dragElement.offsetTop;
dragElement.style.cursor = 'grabbing';
};
const handleMouseMove = (event) => {
if (!dragState.isDragging) return;
const deltaX = event.clientX - dragState.initialMouseX;
const deltaY = event.clientY - dragState.initialMouseY;
dragElement.style.left = `${dragState.initialElementX + deltaX}px`;
dragElement.style.top = `${dragState.initialElementY + deltaY}px`;
};
const handleMouseUp = () => {
dragState.isDragging = false;
dragElement.style.cursor = 'default';
};
//
dragElement.addEventListener('mousedown', handleMouseDown);
document.addEventListener('mousemove', handleMouseMove);
document.addEventListener('mouseup', handleMouseUp);
// 便
return () => {
dragElement.removeEventListener('mousedown', handleMouseDown);
document.removeEventListener('mousemove', handleMouseMove);
document.removeEventListener('mouseup', handleMouseUp);
};
}
//
const isDragging = ref(false);
//
@ -980,28 +1027,9 @@
let startY = 0;
let endX = 0;
let endY = 0;
//
let initialMouseX;
let initialMouseY;
let initialDocumentX;
let initialDocumentY;
//
function onMouseDown(event) {
if (!graffitiFlag.value) {
{
//
const dragDocument: any = document.querySelector('.dragModal');
isDragging.value = true;
initialMouseX = event.clientX;
initialMouseY = event.clientY;
initialDocumentX = dragDocument.offsetLeft;
initialDocumentY = dragDocument.offsetTop;
dragDocument.style.cursor = 'grabbing';
window.addEventListener('mousemove', onMouseMove);
window.addEventListener('mouseup', onMouseUp);
}
} else if (
if (
graffitiFlag.value &&
(graffitis.value.length == 0 || !graffitis.value.some((item) => item.status != 'success'))
) {
@ -1028,7 +1056,6 @@
window.addEventListener('mouseup', onMouseUpGraffit);
}
}
// -
function onMouseMoveGraffit(event) {
//
@ -1042,7 +1069,6 @@
}
setMouseData();
}
// -
function onMouseUpGraffit(event) {
//
@ -1065,27 +1091,6 @@
window.removeEventListener('mousemove', onMouseMoveGraffit);
window.removeEventListener('mouseup', onMouseUpGraffit);
}
//
function onMouseMove(event) {
//
const dragDocument: any = document.querySelector('.dragModal');
if (isDragging.value) {
const deltaX = event.clientX - initialMouseX;
const deltaY = event.clientY - initialMouseY;
dragDocument.style.left = initialDocumentX + deltaX + 'px';
dragDocument.style.top = initialDocumentY + deltaY + 'px';
}
}
//
function onMouseUp(event) {
//
const dragDocument: any = document.querySelector('.dragModal');
isDragging.value = false;
if (dragDocument) {
dragDocument.style.cursor = 'default';
}
}
//
function onWheel(event) {
if (!graffitiFlag.value) {
@ -1100,7 +1105,6 @@
}
}
}
//
function setMouseData() {
graffitis.value[graffitis.value.length - 1].x = Math.min(startX, endX);

@ -716,22 +716,64 @@
}
}
//
const dragState = {
isDragging: false,
initialMouseX: 0,
initialMouseY: 0,
initialElementX: 0,
initialElementY: 0,
};
onMounted(() => {
setupDragListeners();
});
function setupDragListeners() {
const dragElement = document.querySelector('.dragModal');
if (!dragElement) return;
if (graffitiFlag.value) return;
// 使便
const handleMouseDown = (event) => {
dragState.isDragging = true;
dragState.initialMouseX = event.clientX;
dragState.initialMouseY = event.clientY;
dragState.initialElementX = dragElement.offsetLeft;
dragState.initialElementY = dragElement.offsetTop;
dragElement.style.cursor = 'grabbing';
};
const handleMouseMove = (event) => {
if (!dragState.isDragging) return;
const deltaX = event.clientX - dragState.initialMouseX;
const deltaY = event.clientY - dragState.initialMouseY;
dragElement.style.left = `${dragState.initialElementX + deltaX}px`;
dragElement.style.top = `${dragState.initialElementY + deltaY}px`;
};
const handleMouseUp = () => {
dragState.isDragging = false;
dragElement.style.cursor = 'default';
};
//
dragElement.addEventListener('mousedown', handleMouseDown);
document.addEventListener('mousemove', handleMouseMove);
document.addEventListener('mouseup', handleMouseUp);
// 便
return () => {
dragElement.removeEventListener('mousedown', handleMouseDown);
document.removeEventListener('mousemove', handleMouseMove);
document.removeEventListener('mouseup', handleMouseUp);
};
}
//
const isDragging = ref(false);
let startX = 0;
let startY = 0;
let endX = 0;
let endY = 0;
//
let initialMouseX;
let initialMouseY;
let initialDocumentX;
let initialDocumentY;
//
const graffitis: any = ref([]);
const graffitisClone: any = ref([]);
const fileTags: any = ref([]);
watch(
() => props.nowPreviewRecord,
() => {
@ -808,18 +850,7 @@
const mouseCanvasRef = ref();
//
function onMouseDown(event) {
if (!graffitiFlag.value) {
//
const dragDocument: any = document.querySelector('.dragModal');
isDragging.value = true;
initialMouseX = event.clientX;
initialMouseY = event.clientY;
initialDocumentX = dragDocument.offsetLeft;
initialDocumentY = dragDocument.offsetTop;
dragDocument.style.cursor = 'grabbing';
window.addEventListener('mousemove', onMouseMove);
window.addEventListener('mouseup', onMouseUp);
} else if (
if (
graffitiFlag.value &&
(graffitis.value.length == 0 || !graffitis.value?.some((item) => item.status != 'success'))
) {
@ -846,7 +877,6 @@
window.addEventListener('mouseup', onMouseUpGraffit);
}
}
// -
function onMouseMoveGraffit(event) {
//
@ -883,27 +913,6 @@
window.removeEventListener('mouseup', onMouseUpGraffit);
}
// -
function onMouseMove(event) {
//
const dragDocument: any = document.querySelector('.dragModal');
if (isDragging.value) {
const deltaX = event.clientX - initialMouseX;
const deltaY = event.clientY - initialMouseY;
dragDocument.style.left = initialDocumentX + deltaX + 'px';
dragDocument.style.top = initialDocumentY + deltaY + 'px';
}
}
// -
function onMouseUp(event) {
//
const dragDocument: any = document.querySelector('.dragModal');
isDragging.value = false;
if (dragDocument) {
dragDocument.style.cursor = 'default';
}
}
//
function onWheel(event) {
if (!graffitiFlag.value) {
@ -1100,7 +1109,7 @@
// left: 0px;
position: relative;
width: 100%;
height: 10%;
height: 11%;
background: #1c1c1c;
display: flex;
flex-wrap: wrap;

@ -65,9 +65,10 @@
}
function treeIterator(tree) {
tree.forEach((node) => {
node.name = node.name;
node.id = node.id;
node.elements = node.elements;
node.item = {
name: node.name,
id: node.id,
};
node.children && treeIterator(node.children);
});
}

@ -2479,7 +2479,7 @@ const setUAVPosition = () => {
props.uavTrack.latitude,
props.uavTrack.height,
);
route.addTimePosition(positionVal);
route.addTimePosition(positionVal,Cesium.JulianDate.fromDate(new Date()));
}
};

Loading…
Cancel
Save