高德地图轨迹回放功能

一、介绍

       在项目过程中,需要对自己设备产品输出的定位信息进行验证。通过路跑测试获取到了一组经纬度数据。这时需要验证这组数据是否是实际路跑测试的轨迹,就用到了高德地图的轨迹回放功能。下面将详细讲述如何使用高德地图轨迹回放,在使用该功能之前需要先做坐标系转换,因为设备用的中科微GPS模组输出的经纬度格式是属于WGS-84坐标系的,使用高德地图需要转换为GCJ02坐标系。

二、坐标系

WGS84坐标系:即地球坐标系,国际上通用的坐标系。设备一般包含GPS芯片或者北斗芯片获取的经纬度为WGS84地理坐标系。

谷歌地图采用的是WGS84地理坐标系(中国范围除外);

GCJ02坐标系:即火星坐标系,是由中国国家测绘局制订的地理信息系统的坐标系统。由WGS84坐标系经加密后的坐标系

谷歌中国地图、高德地图、腾讯地图采用的是GCJ02地理坐标系;

具体转换工具见链接:

https://download.csdn.net/download/wanruiou/20347559

三、轨迹回放

      搜索高德地图,点击底下的开放平台。

     点击开发支持->地图JS API

 点击示例中心,进入界面后拉到底下找到轨迹回放

 

       打开轨迹回放如下图中已有示例,模拟小车的行驶轨迹。其模拟的轨迹为右侧框图的小车模拟位置点。

 

       点击运行之后,小车绘画出模拟路径,再点击开始动画小车便按照轨迹行驶。

 

 

 

 

       将自己获取的经纬度点替代上面提到的小车模拟位置点即可验证自己设备输出的GPS位置的准确性。

Vue 高德地图 API 提供了一个便捷的方式来展示轨迹并支持拖动回放。在 Vue 中使用高德地图组件(如 `AMap.Map`),你可以通过以下几个步骤实现轨迹回放拖动: 1. **初始化地图**: 首先需要在 Vue 组件中创建一个 `AMap.Map` 实例,并设置地图的中心点、缩放级别等属性。 ```javascript <template> <div id="map"></div> </template> <script> import AMap from '@amap/core'; export default { mounted() { this.initMap(); }, methods: { initMap() { const map = new AMap.Map('map', { zoom: 10, center: [116.404, 39.915], // 北京坐标 }); // ...其他地图配置... } } }; </script> ``` 2. **加载轨迹数据**: 然后,你需要获取到轨迹数据(通常是包含经纬度信息的数组)并在地图上绘制。 ```javascript async mounted() { // 假设你有一个轨迹数据数组轨迹Data const轨迹Data = await getTrajectoryData(); // 添加轨迹标记点 轨迹Data.forEach(point => { new AMap.Marker({ position: point, draggable: true, // 允许拖动 raiseOnDrag: false, // 拖动时不改变高度 map: map, }); }); // 创建轨迹线 const polylineOptions = { path: trajectoryData }; const polyLine = new AMap.Polyline(polylineOptions); polyLine.setMap(map); } ``` 3. **轨迹回放拖动**: 用户可以在地图上点击或拖动轨迹标记点,高德地图会自动播放沿路径移动的效果。 - 当用户拖动一个标记点时,可以根据该点的位置更新 Polyline 的 `setPath` 方法,显示新的路径。 - 可以监听 `dragend` 或 `draggingchange` 事件来调整动画效果。 ```javascript // 监听 marker 拖动事件 this.$refs.marker实例.addEventListener('dragend', event => { // 更新轨迹数据 this.trajectoryData.splice(event.target.dataIndex, 1, event.target.getPosition()); polyLine.setPath(this.trajectoryData); }); ```
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值