百度地图api实现路线规划之步行驾车
着手做一个用户轨迹的demo,大概分了下步骤:1、过滤边缘点;2、分段量化聚类焦点关键点;3、基于关键点的百度地图api路线规划;4:路线择优
我们先看下第三点基于键点的百度地图api路线规划的方案,是否有现成的api支撑我最初的想法(其他几点下期介绍)。
貌似百度地图api近期做了改版调整,新的路线规划地址如下
--路线规划v1.0
http://lbsyun.baidu.com/index.php?title=webapi/direction-api
--路线规划v2.0
http://lbsyun.baidu.com/index.php?title=webapi/direction-api-v2
下面我们介绍下html js下路线规划的实例。
1:步行规划
html代码示例
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>步行途经点</title>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.2"></script>
</head>
<body>
<p><input type='button' value='开始' οnclick='run();' /></p>
<div style="width:820px;height:500px;border:1px solid gray" id="container"></div>
<script type="text/javascript"> var map = new BMap.Map("container"); map.centerAndZoom(new BMap.Point(116.404, 39.915), 13); map.enableScrollWheelZoom(true); //开启鼠标滚轮缩放map.addControl(new BMap.NavigationControl()); // 添加平移缩放控件 map.addControl(new BMap.ScaleControl()); // 添加比例尺控件 map.addControl(new BMap.OverviewMapControl()); //添加缩略地图控件 var myP1 = new BMap.Point(117.26542,39.112487); //起点-互助西里var myP2 = new BMap.Point(117.269646,39.111262); //终点-中山门公园 var myP3 = new BMap.Point(117.259773,39.112179); //终点-二宫 window.run = function (){ map.clearOverlays(); //清除地图上所有的覆盖物 var walking = new BMap.WalkingRoute(map); //创建步行实例 walking.search(myP1, myP2); //第一个步行搜索 walking.search(myP2, myP3); //第二个步行搜索 walking.setSearchCompleteCallback(function(){ var pts = walking.getResults().getPlan(0).getRoute(0).getPath(); //通过步行实例,获得一系列点的数组 var polyline = new BMap.Polyline(pts); map.addOverlay(polyline); var m1 = new BMap.Marker(myP1); //创建3个marker var m2 = new BMap.Marker(myP2); var m3 = new BMap.Marker(myP3); map.addOverlay(m1); map.addOverlay(m2); map.addOverlay(m3); var lab1 = new BMap.Label("起点",{position:myP1}); //创建3个label var lab2 = new BMap.Label("途径点",{position:myP2}); var lab3 = new BMap.Label("终点",{position:myP3}); map.addOverlay(lab1); map.addOverlay(lab2); map.addOverlay(lab3); setTimeout(function(){ map.setViewport([myP1,myP2,myP3]); //调整到最佳视野 },1000); }); }
</script>
</body>
</html>
2:驾车规划
html代码示例
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>驾车途经点</title>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.2"></script>
</head>
<body>
<p><input type='button' value='开始' οnclick='run();' /></p>
<div style="width:820px;height:500px;border:1px solid gray" id="container"></div>
<script type="text/javascript"> var map = new BMap.Map("container"); map.centerAndZoom(new BMap.Point(116.404, 39.915), 13); map.enableScrollWheelZoom(true); //开启鼠标滚轮缩放map.addControl(new BMap.NavigationControl()); // 添加平移缩放控件 map.addControl(new BMap.ScaleControl()); // 添加比例尺控件 map.addControl(new BMap.OverviewMapControl()); //添加缩略地图控件 var myP1 = new BMap.Point(117.26542,39.112487); //起点-互助西里var myP2 = new BMap.Point(117.213246,39.096892); //终点-文化中心 var myP3 = new BMap.Point(117.174799,39.105852); //终点-南开大学 window.run = function (){ map.clearOverlays(); //清除地图上所有的覆盖物 var driving = new BMap.DrivingRoute(map); //创建驾车实例 driving.search(myP1, myP2); //第一个驾车搜索 driving.search(myP2, myP3); //第二个驾车搜索 driving.setSearchCompleteCallback(function(){ var pts = driving.getResults().getPlan(0).getRoute(0).getPath(); //通过驾车实例,获得一系列点的数组 var polyline = new BMap.Polyline(pts); map.addOverlay(polyline); var m1 = new BMap.Marker(myP1); //创建3个marker var m2 = new BMap.Marker(myP2); var m3 = new BMap.Marker(myP3); map.addOverlay(m1); map.addOverlay(m2); map.addOverlay(m3); var lab1 = new BMap.Label("起点",{position:myP1}); //创建3个label var lab2 = new BMap.Label("途径点",{position:myP2}); var lab3 = new BMap.Label("终点",{position:myP3}); map.addOverlay(lab1); map.addOverlay(lab2); map.addOverlay(lab3); setTimeout(function(){ map.setViewport([myP1,myP2,myP3]); //调整到最佳视野 },1000); }); }
</script>
</body>
</html>
百度地图api实现路线规划之步行驾车相关推荐
- Android 调用百度地图sdk 实现路线规划导航
Android 调用百度地图sdk 实现路线规划导航 功能: 实现实时/需求定位 卫星地图查看 路况 周边poi检索 地点输入提示检索 驾驶 步行 公交 骑行路线规划 注:以上为实现的大概功能 ,接下 ...
- android百度地图根据点路线规划,Android 百度地图路径规划一直都是搜索不到结果...
百度地图api2.4.1 在发起步行路径检索的时候 onGetWalkingRouteResult回调方法中的结果总是空的,即使直接复制api的代码也不对. 坐标我是用的百度地图的拾取坐标系统获取的坐 ...
- 利用百度地图api,自定义起始点进行驾车路线的搜索,并可以根据不同驾车策略给出驾驶指导
利用百度地图api,通过在输入框(带自动填充)输入起始点,然后根据用户选择的不同驾车策略来进行驾车路线搜索并显示具体的路线信息.驾车策略共三种,默认路线(时间最短).最短路程.不走高速.左侧搜索栏可以 ...
- java 高德地图路线规划_高德地图api之路线规划
1.引入 2.创建并初始化实例对象 const map = new AMap.Map("container") 3.创建一个导航元素,用来承载导航路线(这里不要忘了,是个坑,用的啥 ...
- 结合奥维地图与百度地图api进行路径规划开发测试(python、HTML)
第一步:奥维地图如何得到规划路径上轨迹点的经纬度(参见我之前的博客). 第二步:各种坐标系转换,选择对应转换坐标系以及输入输出文件路径后可以直接调用(python批量转换,每次运行前清空输出文件res ...
- 百度地图api公交路线,IE下跳转百度地图后中文变成乱码的解决办法
百度开放的公交路线的链接,IE跳转会出现中文变成乱码的问题.如图: //创建InfoWindow function createInfoWindow() { var desDiv = []; desD ...
- python调用百度地图画轨迹图_百度地图 API 绘制路线
后台拿到数据返回给了jsp页面,并且显示到了地图上 . 现在要根据两个位点.绘制出他们之间的路线. 有实现过这个功能的大神,给指点一下,如果有实例,那当热是最好了. 下面是 : 我显示坐标的代码: v ...
- 百度地图API - 行车路线 轨迹
转自:http://hi.baidu.com/hackerbase/item/0a54b12d0005690e72863e3c <!DOCTYPE html> <html> ...
- Python调用百度地图api获取起点终点路线规划距离和预估时长
现有起点和终点坐标值(经纬度lng.lat),目的是通过百度地图开发者平台的路线规划功能获取起点终点路线规划距离和预估时长,百度地图开发者平台路线规划使用说明网址为:http://lbsyun.bai ...
最新文章
- Java面试宝典——————Java基础部分(三)
- Jasperreport导出pdf内容展示不完全处理
- 关于JVM结构的学习
- Opencv 实现图像的离散傅里叶变换(DFT)、卷积运算(相关滤波)
- 中国冶金工业节能减排行业十四五投资动态与运营方向调研报告2022-2027年
- 用ISAPI方式实现Web页面的自动更新
- WPF ListBox样式去掉默认选中效果
- html div模块前留空白,html – 3个DIV彼此相邻,中间填充空白
- vue内检测是否有swiper_vue.js怎么用swiper
- java大数据组件Kafka
- Linux安装prometheus+grafana监控
- 剑指offer面试题07. 重建二叉树(递归)(切片)
- asp.net 页面转向 Response.Redirect, Server.Transfer, Server.Execute的区别
- 排除包_冷水机压缩机压缩机常见故障和排除方法
- Mac 下更新 .bash_profile 文件
- java keytool用法,java中Keytool的使用总结
- 下列命令中 哪些用于退出MySQL服务_智慧树知到音乐鉴赏(西安交通大学)答案搜题公众号...
- ant的下载与安装(一)
- 2013-10-19第一次去招聘市场面试
- php如何设置页面布局,excel页面布局怎么调整
热门文章
- 计算机专业大专毕业后可以考研,【专科生怎么考研】专科生考研计算机常见问题答疑...
- 《亲爱的安德烈》读后感
- 大塚化学接管Astellas制药的部分头孢克肟业务
- android mp4添加滤镜,Android 视频外部滤镜:挂件、贴纸,或美颜效果
- html 响应式布局怎么实现,CSS实现响应式布局
- ElasticSearch8.x.x 【一篇文章精通系列】【ES的基本操作,ES安装,ES head + Kibana】
- layui日历和tui.calendar日程表联动
- 如何看待 35 岁提前退休的人?
- 可持久化线段树【主席树】可持久化并查集【主席树+并查集】
- “网站变灰”的代码实现