Vue.js2+Cesium1.103.0 十六、多模型轨迹运动

Vue.js2+Cesium1.103.0 十六、多模型轨迹运动

Demo

<template><div id="cesium-container" style="width: 100%; height: 100%;"><ul class="ul"><li v-for="(item, index) of deviceInfo" :key="index" class="li" :class="{ active: lock === item.id }"@click="handleClick(item)">{{ `飞机${item.id}` }}</li></ul></div>
</template><script>
/* eslint-disable no-undef */
/* eslint-disable new-cap */
import DrawDeviceUtil from '@/utils/DrawDevice.js'
const mock = require('./mock.json')
const mock2 = require('./mock2.json')
const mock3 = require('./mock3.json')
const mock4 = require('./mock4.json')
const mock5 = require('./mock5.json')
export default {name: 'FlightAnimation',data () {return {lock: '',deviceInfo: [{id: 1,uri: 'model/Cesium_Air.glb',scale: 1,position: {longitude: mock[0].longitude,latitude: mock[0].latitude,altitude: mock[0].altitude}},{id: 2,uri: 'model/Cesium_Air.glb',scale: 0.9,position: {longitude: mock2[mock2.length - 1].longitude,latitude: mock2[mock2.length - 1].latitude,altitude: mock2[mock2.length - 1].altitude}},{id: 3,uri: 'model/Cesium_Air.glb',scale: 0.8,position: {longitude: mock3[mock3.length - 1].longitude,latitude: mock3[mock3.length - 1].latitude,altitude: mock3[mock3.length - 1].altitude}},{id: 4,uri: 'model/Cesium_Air.glb',scale: 1,position: {longitude: mock4[mock4.length - 1].longitude,latitude: mock4[mock4.length - 1].latitude,altitude: mock4[mock4.length - 1].altitude}},{id: 5,uri: 'model/Cesium_Air.glb',scale: 1,position: {longitude: mock5[mock5.length - 1].longitude,latitude: mock5[mock5.length - 1].latitude,altitude: mock5[mock5.length - 1].altitude}}],$DrawDeviceUtil: null}},computed: {},watch: {},mounted () {// returnwindow.$InitMap()viewer.camera.flyTo({destination: Cesium.Rectangle.fromDegrees(100, 10, 120, 70)})this.$DrawDeviceUtil = new DrawDeviceUtil()// * 添加设备this.$DrawDeviceUtil.AddDevices(this.deviceInfo)// * 模拟 ws 上报实时位置信息let count = 0setInterval(() => {count += 1const position = mock[count]const position2 = mock2[count]const position3 = mock3[count]const position4 = mock4[count]const position5 = mock5[count]// * 更新位置this.$DrawDeviceUtil.UpdatePosition(1, position)this.$DrawDeviceUtil.UpdatePosition(2, position2)this.$DrawDeviceUtil.UpdatePosition(3, position3)this.$DrawDeviceUtil.UpdatePosition(4, position4)this.$DrawDeviceUtil.UpdatePosition(5, position5)}, 300)// 鼠标事件const handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas)handler.setInputAction(function (event) { },Cesium.ScreenSpaceEventType.LEFT_CLICK)},methods: {handleClick (data) {this.lock = this.lock === data.id ? '' : data.idif (this.lock) {this.$DrawDeviceUtil.LockEntity(this.lock)} else {this.$DrawDeviceUtil.UnLockEntity()}}}
}
</script>
<style lang="scss" scoped>
.ul {position: absolute;right: 50px;top: 50px;z-index: 999;color: #fff;.li {cursor: pointer;&.active {color: red;}}
}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/20765.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

制作ChatPDF之前端Vue搭建(二)

前端界面 接上篇: 制作ChatPDF之Elasticsearch8.13.4搭建&#xff08;一&#xff09; 为了实现一个基于 Vue.js 的前端应用&#xff0c;用户可以上传 PDF 文件&#xff0c;输入查询&#xff0c;并在输出框中显示查询结果&#xff0c;你需要以下步骤&#xff1a; 初始化 Vue …

AIGC商业案例实操课,发觉其创造和商业的无限可能,Ai技术在行业应用新的商机

课程下载&#xff1a;https://download.csdn.net/download/m0_66047725/89307523 更多资源下载&#xff1a;关注我。 课程内容 1 AI为什么火 。写在课程前面的寄语 。AIGC标志性事件:太空歌剧院 。AI人工智能为什么这么火 &#xff0c;AI人工智能发展历程 。聊天AI会取…

【U-Boot 源码深度解析】001 - Ubuntu 24.04 虚拟机 及 基础环境搭建

【U-Boot 源码深度解析】001 - Ubuntu 24.04 虚拟机 及 基础环境搭建 一、VMware 、Ubuntu 安装包下载二、解决VMware NET 模式&#xff0c;虚拟机无法上网问题三、配置 Ubuntu 24.04 开发环境3.1 配置清华源 sources3.2 配置 Telnetd 服务3.3 配置 SSH 服务2.4 配置 samba 服务…

React框架的快速入门

React框架的快速入门可以按照以下步骤进行&#xff0c;同时结合参考文章中的相关数字和信息&#xff0c;我将为你提供一个清晰的入门指南&#xff1a; 一、了解React React是一个流行的JavaScript库&#xff0c;专注于构建用户界面。它的主要特点包括&#xff1a; 组件化架构…

什么是gRPC?

gRPC&#xff08;gRPC Remote Procedure Call&#xff09;是一个高性能、开源、通用的远程过程调用&#xff08;RPC&#xff09;框架&#xff0c;最初由 Google 开发。gRPC 使用 HTTP/2 作为传输协议&#xff0c;并采用 Protocol Buffers&#xff08;protobuf&#xff09;作为接…

使用autodl服务器进行模型训练

1.注册并且选择一个服务器租用 2.点击jupyter lab进入服务器内部 3.把yolov5-master这个的压缩文件上传到jupyter的文件列表中 4.打开终端 (1)查看目录 ls (2)解压yolov5-master(1) unzip "yolov5-master (1).zip" 可以看到解压成功&#xff01; (3)进入yolov5-m…

【Ubuntu上安装mvn】

Installing Maven on Linux/Ubuntu 在 Linux 系统中安装 Maven。 Step 1: Download the Maven Binaries 下载解压 $ wget <https://mirrors.estointernet.in/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz> $ tar -xvf apache-maven-3.6.3-bin…

ARM-V9 RME(Realm Management Extension)系统架构之系统安全能力的系统隔离属性

安全之安全(security)博客目录导读 目录 一、系统隔离属性 1、系统配置完整性 1.1、时间隔离 2、关键错误的报告 一、系统隔离属性 1、系统配置完整性 MSD必须确保任何可能危及其安全保证的系统寄存器的正确性和完整性。例如&#xff0c;MSD必须确认内存控制器配置是一致…

[数据集][目标检测]焊接处缺陷检测数据集VOC+YOLO格式3400张8类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;3400 标注数量(xml文件个数)&#xff1a;3400 标注数量(txt文件个数)&#xff1a;3400 标注…

基于Chan-Vese算法的图像边缘提取matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ............................................................ % 迭代更新水平集函数 err[]…

PLC编程与IT编程的区别:深入探索两者之间的奥秘

PLC编程与IT编程的区别&#xff1a;深入探索两者之间的奥秘 在科技日新月异的今天&#xff0c;编程已成为各个领域中不可或缺的技能。然而&#xff0c;在众多的编程领域中&#xff0c;PLC编程和IT编程因其各自独特的特点和应用领域而备受关注。那么&#xff0c;PLC编程和IT编程…

【Linux】GNU编译器基础

文章目录 GCCMakefile、make GCC 常见的GNU编译器是GCC其包含gcc以及g等&#xff0c;适用于C/C中&#xff0c;在Windows系统中通常使用IDE进行程序的编写和编译、链接等操作&#xff0c;但在Linux系统中通常使用GNU编译器来进行&#xff0c;对于C/C等高级语言需要进行预编译、编…

亚马逊对IP的要求是什么?

IP的全称为Internet Protocol&#xff0c;是TCP/IP体系中的网际层协议&#xff0c;IP只为主机提供一种无连接、不可靠的、尽力而为的数据包传输服务。IP规定网络上所有的设备都必须有一个独一无二的IP地址&#xff0c;就好比是邮件上都必须注明收件人地址&#xff0c;邮递员才能…

函数递归输出1~100的数字及递归的栈溢出问题

什么是递归&#xff1f; 递归就是函数⾃⼰调⽤⾃⼰递归中的递就是递推的意思&#xff0c;归就是回归的意思如果递归就像循环一样&#xff0c;打一个大的复杂问题转化一个小的问题&#xff0c;但是要与原问题相似&#xff0c;分解成规模较⼩的⼦问题来求解&#xff1b;直到⼦问…

Spark SQL数据源 - 基本操作

Spark SQL 提供了丰富的API来与各种数据源进行交互&#xff0c;包括Parquet、JSON、CSV、JDBC等。以下是一些使用Spark SQL与数据源进行基本操作的基本步骤和示例代码。 1. 初始化SparkSession 首先&#xff0c;你需要初始化一个SparkSession对象&#xff0c;这是Spark SQL的…

【scau大数据技术与原理2】综合性实验Spark集群的安装和使用——安装启动spark shell篇

实验内容简介&#xff1a; Spark是一个分布式计算框架&#xff0c;常用于大数据处理。本次实验中&#xff0c;首先设计一个包含主节点和从节点的Spark集群架构&#xff0c;并在CentOS的Linux环境下进行搭建。通过下载并解压Spark安装包&#xff0c;配置环境变量和集群参数&…

【Python Cookbook】S1E09 对切片命名

目录 问题解决方案讨论 问题 代码的可阅读性非常重要&#xff0c;如何增强切片中的可阅读性&#xff1f;本文将提供一种方案。 解决方案 假设有一些代码用来从字符串的固定位置取出具体的数据&#xff1a; record "...100...513.25..." cost int(record[3:6]) …

【显示方案IC-速显微】

最近偶然间接触到“速显微”的显示方案&#xff0c;个人体验了一把感觉还是挺顺手的&#xff0c;虽然手里没有板子没有上手测试一番。 这是他们的官网链接&#xff1a; https://www.thorsianway.com/product/chip 从官网可以看到有两颗个系列的IC已经量产&#xff1a;GC9005和G…

Docker部署pulsar独立集群消息队列服务器

1、下载Pulsar docker 镜像 docker pull apachepulsar/pulsar:latest 2、生成Pulsar容器&#xff0c;把容器的6650和8080端口映射到宿主机的6650和8080端口&#xff0c;standalone参数表示pulsar为独立集群模式&#xff0c;把容器中的conf目录映射到宿主机的/var/lib/docker/…

【QEMU中文文档】1.1 支持的构建平台

本文由 AI 翻译&#xff08;ChatGPT-4&#xff09;完成&#xff0c;并由作者进行人工校对。如有任何问题或建议&#xff0c;欢迎联系我。联系方式&#xff1a;jelin-shoutlook.com。 原文&#xff1a;Supported build platforms — QEMU documentation QEMU 旨在支持在多个主机…