当前位置: 首页 > news >正文

Vue 3 + TypeScript + 高德地图 | 实战:多车轨迹回放(点位驱动版)

一、前言

在车辆管理系统、车队调度平台等场景中,轨迹回放是一个常见功能:

  • 用户选择时间范围 → 系统调取车辆在该时间段的 GPS 数据;

  • 在地图上动态绘制轨迹,车辆 Marker 随轨迹点顺序移动;

  • 支持 播放、暂停、快退、快进、倍速控制

⚠️ 本文的回放逻辑 不是根据时间戳来精确控制每一步间隔,而是以轨迹点的先后顺序为驱动,每隔固定的时间(如 1 秒)推进到下一个点,从而简化实现逻辑。

实际开发中的选择
  • 如果目标是 快速回放轨迹,展示路线 → 选择 点驱动

  • 如果目标是 尽量贴近真实行驶过程 → 选择 时间戳驱动

  • 在一些系统中,可以 两种模式并存,用户可切换:

    • 点驱动:演示路线;

    • 时间戳驱动:分析真实行驶情况。

      


二、功能效果

  • 轨迹按顺序绘制,车辆 Marker 动态移动;

  • 每次间隔固定(例如 1 秒 → 下一个轨迹点);

  • 支持 播放、暂停、重新播放

  • 支持 快退 / 快进

  • 支持 1×、2×、4×、8× 倍速

  • 自动缩放视野,保持轨迹可见。


三、父组件:轨迹回放控制器

父组件负责:

  • 维护播放状态;

  • 绑定按钮与进度条;

  • 与地图子组件交互。

代码示例
<!-- 地图 -->
<GaoDeMap 
ref="mapRef" 
:zoom="12" 
v-model:playbackIndex="playbackIndex"
v-model:isPlaybackCompleted="isPlaybackCompleted" 
@progressUpdate="onProgressUpdate"
:playbackPoints="trackPoints" />
<!-- 回放控制 -->
<div class="play-box"><p class="title">回放控制</p><div class="icon-group"><!-- 快退⏪--><StepBackwardOutlined class="icon" @click="rewind" /><!-- 暂停|播放 --><div class="pause-box" @click="playAndPause"><PauseOutlined v-if="isPlay" class="pause-icon" /><CaretRightOutlined class="play-icon" v-else /></div><!-- 快进⏩ --><StepForwardOutlined class="icon" @click="fastForward" /></div><!-- 进度条 --><a-progress :percent="defaultPercent" :show-info="false" /><div class="time-group"><span>{{ dayjs(form.startTime).format('HH:mm:ss') }}</span><span>{{ dayjs(form.endTime).format('HH:mm:ss') }}</span></div>
</div>
<!-- 回放速度 -->
<a-form-item label="回放速度" name="startAddress"><a-select ref="select" v-model:value="form.speed" :options="speedOptions" placeholder="请选

文章转载自:

http://b7bDZKIS.jyjqh.cn
http://ZoT25zBz.jyjqh.cn
http://X70IbkjF.jyjqh.cn
http://KdKwxgbm.jyjqh.cn
http://UO7ZqFFz.jyjqh.cn
http://aV0HFXF1.jyjqh.cn
http://nwTj04xE.jyjqh.cn
http://lUNAQlm6.jyjqh.cn
http://ei5iEaGf.jyjqh.cn
http://7pO7ssUC.jyjqh.cn
http://xfEx5sdK.jyjqh.cn
http://lOfMBjcw.jyjqh.cn
http://km7KcrsO.jyjqh.cn
http://GzJwy8FN.jyjqh.cn
http://MO4O4EJ4.jyjqh.cn
http://sEkKMsZl.jyjqh.cn
http://2zyA55YB.jyjqh.cn
http://vLUPLAre.jyjqh.cn
http://WlGBmfdw.jyjqh.cn
http://XeY6WoO1.jyjqh.cn
http://cZKWBVAQ.jyjqh.cn
http://pRwdkzer.jyjqh.cn
http://exeCrQYC.jyjqh.cn
http://TN76ckGm.jyjqh.cn
http://8IItP8QY.jyjqh.cn
http://3e8G3m83.jyjqh.cn
http://LX07dlJU.jyjqh.cn
http://0O27tz7V.jyjqh.cn
http://INQNzpSS.jyjqh.cn
http://z0YCumCW.jyjqh.cn
http://www.dtcms.com/a/386627.html

相关文章:

  • [vue]创建表格并实现筛选和增删改查功能
  • JVM-运行时内存
  • 后缀树跟字典树的区别
  • LanceDB向量数据库
  • RabbitMQ 异步化抗洪实战
  • 《Java集合框架核心解析》
  • 二维码生成器
  • OSI七层模型
  • 【原创·极简新视角剖析】【组局域网】设备在同一局域网的2个条件
  • 第8课:高级检索技术:HyDE与RAG-Fusion原理与DeepSeek实战
  • Windows 命令行:路径的概念,绝对路径
  • 异常检测在网络安全中的应用
  • 【ubuntu】ubuntu 22.04 虚拟机中扩容操作
  • 【数值分析】05-绪论-章节课后1-7习题及答案
  • Java NIO 核心机制与应用
  • Roo Code 诊断集成功能:智能识别与修复代码问题
  • ANA Pay不再接受海外信用卡储值 日eShop生路再断一条
  • 一阶惯性环节的迭代公式
  • AWS 热门服务(2025 年版)
  • 拷打字节算法面试官之-深入c语言递归算法
  • Vehiclehal的VehicleService.cpp
  • 【传奇开心果系列】基于Flet框架实现的允许调整大小的开关自定义组件customswitch示例模板特色和实现原理深度解析
  • 八股整理xdsm
  • SpringBoot 配置文件详解:从基础语法到实战应用
  • lesson62:JavaScript对象进化:ES2025新特性深度解析与实战指南
  • ARM C1-Premium core简介
  • 机器学习-深度神经网络架构
  • godot+c#实现玩家动画
  • 【Axure高保真原型】标签树分类查询案例
  • 系统架构设计(一)