BMapGL实现地图轨迹 【百度地图|BMapGL实现地图轨迹运动(地图视角不变)】想要实现:
- 轨迹运动地图视角不能随之改变
- 有icon标识运动当前的位位置
由于数据之间的经纬度之间的距离太遥远,不能使用每隔一段时间换一个point这种办法,后来仔细看了看百度地图的demo文档,路书的能实现均匀的轨迹运动,但是需求和demo还是有一点点的不同,所以做了小小的改动。
路书demo
最后实现的效果如下:
文章图片
- 引入路书的js
文章图片
- 在地图上根据数据绘制出一条线
- icon和轨迹
var points = [] //里面为多个point的点var point = new BMapGL.Point(116.39,28.33)
var polyline = new BMapGL.Polyline(points, { strokeColor: '#1a66c7ba', strokeWeight: 6, strokeOpacity: 0.2 }) //创建折线
//添加在地图上 这里的“map”地图初始化就定义的变量
map.addOverlay(polyline)
引入您需要用的icon
var icon = require('@/assets/img/carIcon.png')
var trackExample = new BMapGLLib.LuShu(map, points, {
// defaultContent: '起飞啦', // "信息窗口文案"
autoView: true, // 是否开启自动视野调整,如果开启那么路书在运动过程中会根据视野自动调整
speed: 100,
icon: new BMapGL.Icon(icon, new BMapGL.Size(30, 30), { anchor: new BMapGL.Size(24, 24) }),
enableRotation: true, // 是否设置marker随着道路的走向进行旋转
})
当然这里路书的事件也是一样的,直接在需要用到的地方代用就ok了
//开始
trackExample.start();
//停止
trackExample.stop();
//暂停
trackExample.pause();
//隐藏信息窗口
trackExample.hideInfoWindow();
//展示信息窗口
trackExample.showInfoWindow();
路书的js也可以直接下载放在项目里面,需要的如下:
https://bj.bcebos.com/v1/mapopen/github/BMapGLLib/Lushu/src/Lushu.min.js
推荐阅读
- echarts|更换迁徙图的图标icon
- slick笔记
- 新版MDN正式上线,还有收费版的MDN Plus,下个月也即将到来
- GIS相关|Openlayers中使用Overlay实现点击要素显示html内容弹窗并且动态更改弹窗内容
- JavaScript|JavaScript第二个分水岭——对象
- 前端开发工程师知识体系|H5画布 canvas 入门到精通 _ 第三部分(canvas 库 Konva.js 的使用)
- 前端开发工程师知识体系|H5画布 canvas 入门到精通 _ 第二部分(绘制文字、图片、坐标系,canvas颜色和样式,canvas绘制环境)
- vue.js|尚品汇学习笔记
- vue.js|尚品汇后台管理系统