主要涉及到高德地图的路径规划、区域规划以及轨迹回放功能。

一、基础设置:地图

//创建地图var map = new AMap.Map('map',{zoom:17,//视角级别//中心点坐标// pitch:45,layers: [//使用多个图层new AMap.TileLayer.Satellite(),new AMap.TileLayer.RoadNet()],viewMode:'3D',//使用3D视图resizeEnable: true});
//设置地图属性//地图类型map.plugin(["AMap.MapType"],function(){//地图类型切换var type= new AMap.MapType({});map.addControl(type);});//鹰眼map.plugin(["AMap.OverView"],function(){view = new AMap.OverView();map.addControl(view);}); //标记点map.plugin(["AMap.MouseTool"],function(){ var mousetool = new AMap.MouseTool(map); mousetool.marker(); //使用鼠标工具,在地图上画标记点 });//计算面积map.plugin(["AMap.MouseTool"],function(){ var mousetool = new AMap.MouseTool(map); mousetool.measureArea()// mousetool.polyline() //这个是画线段的});// 简易缩放模式 默认为falsemap.plugin(['AMap.ToolBar',], function(){      map.addControl(new AMap.ToolBar({liteStyle: true }));})

二、路径规划

根据后端接口传来的数据,根据经纬度对路径进行连线,我这里使用的是本地json数据

 // 路径规划*****************var path_1 = [];// 请求本地jsonaxios.get('drone.json').then((res)=>{console.log('res',res)console.log('原来的path:',path_1)console.log(res.data.result.points[0].wgs)var ifor(i = 0;i<res.data.result.points.length;i++){path_1.push([res.data.result.points[i].wgs.lon,res.data.result.points[i].wgs.lat])console.log(path_1)}var polyline = new AMap.Polyline({path:path_1,isOutline: false,borderWeight: 1,strokeColor: "red", strokeOpacity: 1,strokeWeight: 1,strokeStyle: "solid",zIndex: 50,})   map.add(polyline)map.setCenter([res.data.result.points[0].wgs.lon,res.data.result.points[0].wgs.lat])  //设置中心点坐标map.setFitView([ polyline ])})

三、区域规划

同路径规划,依然是调用本地的json文件

// 绘制区域var path_2 = []// axios请求axios.get('drone.json').then((res)=>{console.log('ews',res)console.log('length',res.data.result.borders.length)for(i = 0;i<res.data.result.borders.length;i++){console.log(res.data.result.borders[i].wgs1)path_2.push([res.data.result.borders[i].wgs1.lon,res.data.result.borders[i].wgs1.lat])path_2.push([res.data.result.borders[i].wgs2.lon,res.data.result.borders[i].wgs2.lat])console.log(path_2)}var polygon = new AMap.Polygon({path: path_2,fillOpacity: 0,zIndex: 51,})map.add(polygon)map.setFitView([ polygon ])})

四、轨迹回放

重点来了!直接上代码!

html部分:

 <el-button type="primary" icon="el-icon-s-promotion" size="small" id="startDronePath" plain>轨迹回放</el-button>

css部分:

//其他样式自己调整 这里主要是设置小车的大小.amap-icon img{width: 15px !important;height: 7.5px !important;}

js部分:

//lineArr是要移动的轨迹 marker就是小车var lineArr = []var marker = []// 为移动点marker以及路径lineArr赋值 axios.get('drone.json').then((res)=>{var ifor(i = 0;i<res.data.result.points.length;i++){lineArr.push([res.data.result.points[i].wgs.lon,res.data.result.points[i].wgs.lat])} })marker = lineArr// 配置marker信息marker = new AMap.Marker({map: map,icon: "https://webapi.amap.com/images/car.png",offset: new AMap.Pixel(0,-3),//位置偏移设置 根据图片大小调整autoRotation: true,angle:-90,});// 动态轨迹var passedPolyline = new AMap.Polyline({isOutline: false,map: map,borderWeight: 1,strokeColor: "blue", //路径颜色strokeOpacity: 1,strokeWeight: 1,strokeStyle: "solid",zIndex: 55,});//marker.on方法marker.on('moving', function (e) {passedPolyline.setPath(e.passedPath);});// 移动document.getElementById('startDronePath').onclick = function(){marker.moveAlong(lineArr, 20);//在这里可以设置移动速度}

五、效果图

蓝色线为轨迹回放的线条,红色线条是路径规划线条,绿色为区域规划。点击按钮小车将按照蓝色轨迹移动。

高德地图轨迹回放、路径规划以及计算面积(超详细!!)相关推荐

  1. 高德地图轨迹回放功能

    一.介绍        在项目过程中,需要对自己设备产品输出的定位信息进行验证.通过路跑测试获取到了一组经纬度数据.这时需要验证这组数据是否是实际路跑测试的轨迹,就用到了高德地图的轨迹回放功能.下面将 ...

  2. Android实现高德地图轨迹回放

    Android实现高德地图轨迹回放 写在前面 准备 官方文档解读 创建应用: 地图api引入: 权限添加 效果展示 过程实现 地图初始化 定位 显示标记点 点平滑移动 添加呼吸点 写在结尾 写在前面 ...

  3. android高德地图轨迹偏纠,GitHub - YangHaoyi/DrawTraceDemo: 高德地图轨迹回放带定位纠偏加彩虹渐变线...

    DrawTraceDemo 高德地图轨迹回放带定位纠偏加彩虹渐变线 由于高德自身持续定位存在偏移状况,故摒弃了高德自身的定位点,改用自定义marker点作为定位点 加注轨迹纠偏函数,根据时间判定此次移 ...

  4. 高德地图WebAPI : 驾车路径规划

    参考API 一个demo 获取路径规划返回结果中的两点间最短驾车距离 import java.io.BufferedReader; import java.io.BufferedReader; imp ...

  5. python调用高德地图api获取路径规划,然后规划好点显示在地图上(农机路径转移)

    我的博客好像跳度比较大,不少内容都涉及,但我是做ros组合导航的,其他的或者是项目设计,或者是因为兴趣,或者是随笔记下来. 无聊写来玩下的小demo,本来试图在硕士期间研究下这个课题即农机从仓库到田间 ...

  6. 高德地图-轨迹回放(二)

    利用高德地图作轨迹回放的另一种方法是利用官方api覆盖物中的AMap.Polyline来做,官方给出的例子中也是此原理实现的. 实现地图轨迹的主要函数如下 function track(){map.c ...

  7. 高德地图轨迹回放、点的弹跳效果、浏览器环境监测、设置地图的主题样式、GPS坐标转为高德坐标、地图加载提示、地图DOM事件、修改图层等API接口

    1.轨迹回放 https://lbs.amap.com/api/javascript-api/example/marker/replaying-historical-running-data 2.点的 ...

  8. 基于高德地图的APP路径规划开发

    一.初始化一个APP项目 参见我的上一篇文章:https://blog.csdn.net/QiwzDeBLOG/article/details/84701746 前期准备: 我的项目名称:AmapTe ...

  9. 高德地图轨迹回放_高德地图上线了一个新功能….

    文.路人甲TM 德地图这两天刚上线了一个叫做「家人地图」的功能,所谓家人地图顾名思义,就是你可以通过高德地图组建一个家人圈,在这个圈子里面你可以看到你的家人在什么位置,当你的家人到达什么位置的时候自动 ...

最新文章

  1. 从hook007学习dll劫持自启动方式
  2. Xilinx SelectIO 接口
  3. 爬虫小案例:基于Bing关键词批量下载图片
  4. 群论及Polya计数定理题目入门
  5. 【资料】avr单片机和stm32区别,avr单片机选型技巧
  6. 自适应机器人:定义工业机械臂的未来
  7. ape是什么格式?ape怎么转mp3?
  8. url相关工具 - url转码工具
  9. 转特权:NIOS2下的SDHC调试
  10. ossec支持mysql数据库_开源入侵检测工具ossec安装配置(HIDS)
  11. Linux强制修改超级用户root密码
  12. Mac创建自签名的代码证书
  13. 网络隔离环境下的跨网数据传输,如何保障安全性?
  14. np.meshgrid, ravel(), np.c_, plt.contourf()函数的用法,以及决策边界的画法。
  15. 深入了解C语言和C++哪个更难?
  16. 洛谷P1424 小鱼的航程(改进版)-c++题解
  17. 超级生产力的背后是强大的技术实力 央媒点赞小米“黑灯工厂”
  18. 树上战争(2545)
  19. Cadence OrCAD Capture打开.bxl封装文件的方法图文教程
  20. Automatic multiorgan segmentation in thorax CT images using U-net-GAN

热门文章

  1. 22种超全用户触点采集,易观方舟SDK又更新了
  2. 易语言内存搜索DLL源码
  3. 服务器电池维修,服务器电池故障
  4. 8个可以提高数据科学工作效率并节省宝贵时间的Python库
  5. 旁观ACM ICPC
  6. Matlab:实现冲压发动机确定传热质量流量冲压发动机燃烧室(附完整源码)
  7. 浪潮NF5568M4落地猿题库 让机器老师更智能
  8. 学术工具-文献引文分析利器之 HistCite
  9. 《阿里工程师的自我修养》笔记
  10. 浅析PAC,修改PAC文件及user-rule文件实现自动代理