百度地图api调用 实现车载导航功能

1、进入百度地图开放平台登录账号

2、百度地图api密钥获取

要想使用百度地图的api就需要申请创建对应的应用功能并获取AK密钥,从而才可以成功调用api的功能模块使用。

3、百度地图api密钥获取

选择相应的应用类型和启用服务,设置项目需求的白名单域名,没有域名限制可直接输入*,表示不限制访问,拿到对应的AK密钥就可以进行后续代码的实现了。

4、进入示例中心—驾车线路规划模块

http://lbsyun.baidu.com/jsdemo.htm#sLngLatSearchPath

5、两种车载轨迹实现方式

两种方式基本的html标签和css样式大致相同唯一的区别在于js上,故只将js区分出来说明。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><style type="text/css">body, html {width: 100%;height: 100%;margin:0;font-family:"微软雅黑";}#container{width:100%;height:100%;}#result{position: fixed;top: 10px;left: 20px;width: 300px;height: 40px;line-height: 40px;text-align: center;background: #fff;box-shadow: 0 2px 6px 0 rgba(27, 142, 236, 0.5);border-radius: 7px;z-index: 99;}</style><script type="text/javascript" src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=您的密钥"></script><title>根据起点和终点经纬度驾车导航</title>
</head>
<body><div id="container"></div><div id='result'>根据起点和终点经纬度驾车导航路线</div><script>//放入具体实现导航功能代码即可</script>
</body>
</html>

①第一种 根据起点终点经纬度查询驾车路线

1、更改html里面的ak密钥为自己申请的密钥

<script type="text/javascript" src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=您的密钥"></script>

2、底图加载至<div>并设置中心点

var map = new BMapGL.Map("container");
map.centerAndZoom(new BMapGL.Point(116.404, 39.915), 11);

3、以经纬度设置位置点,并调用车载路线规划函数实现

 var p1 = new BMapGL.Point(116.301934,39.977552);var p2 = new BMapGL.Point(116.508328,39.919141);var driving = new BMapGL.DrivingRoute(map, {renderOptions:{map: map, autoViewport: true}});driving.search(p1, p2);

②第二种 通过点击事件从当前初始经纬度位置到达任意点击位置的车载导

1、更改html里面的ak密钥为自己申请的密钥

<script type="text/javascript" src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=您的密钥"></script>

2、底图加载至<div>并设置中心点

var map = new BMapGL.Map("container");
map.centerAndZoom(new BMapGL.Point(116.304, 39.915), 15);

3、增加缩放并设置起始点

//增加缩放功能
map.enableScrollWheelZoom(true);
//设置起始点
var p1 = new BMapGL.Point(116.301934, 39.977552);

4、添加点击监听事件并获取点击点为终点位置,进行起点至终点的车载导航实现

 map.addEventListener("click", function (e) {var p2 = new BMapGL.Point(e.latlng.lng, e.latlng.lat);map.clearOverlays();var driving = new BMapGL.DrivingRoute(map, { renderOptions: { map: map, autoViewport: true } });driving.search(p1, p2);console.log("我被点击了"); //测试点击事件是否设置成功})

这里的p1是起始点,是以经纬度设置定位的 即通过var p1 = new BMapGL.Point(116.301934, 39.977552);
p2是点击之后获得的点,它的经纬度是通过点击事件e发生之后自动赋值给p2的。
实际应用中可以根据车辆的实际定位设置当前车辆位置为起始点,p2是鼠标点击获取的点位,意指通过鼠标点击之后从当前p1位置车载导航至p2。

6、总结

百度地图车载导航api的调用,在成功申请ak密钥并设置好访问白名单的情况下时,只需进行实现过程1→2→3→4步将JS代码复制进<script></script>标签里即可完成车载导航功能的调用。

7、完整源码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><style type="text/css">body, html {width: 100%;height: 100%;margin:0;font-family:"微软雅黑";}#container{width:100%;height:100%;}#result{position: fixed;top: 10px;left: 20px;width: 300px;height: 40px;line-height: 40px;text-align: center;background: #fff;box-shadow: 0 2px 6px 0 rgba(27, 142, 236, 0.5);border-radius: 7px;z-index: 99;}</style><script type="text/javascript" src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=您的密钥"></script><title>根据起点和终点经纬度驾车导航</title>
</head>
<body><div id="container"></div><div id='result'>根据起点和终点经纬度驾车导航路线</div><script>//放入具体实现导航功能代码即可var map = new BMapGL.Map("container");map.centerAndZoom(new BMapGL.Point(116.304, 39.915), 15);//增加缩放功能map.enableScrollWheelZoom(true);var p1 = new BMapGL.Point(116.301934, 39.977552);map.addEventListener("click", function (e) {var p2 = new BMapGL.Point(e.latlng.lng, e.latlng.lat);map.clearOverlays();var driving = new BMapGL.DrivingRoute(map, { renderOptions: { map: map, autoViewport: true } });driving.search(p1, p2);console.log("我被点击了");//测试点击事件是否设置成功})</script>
</body>
</html>

百度地图api调用 实现车载导航功能相关推荐

  1. Java web与web gis学习笔记(二)——百度地图API调用

    系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...

  2. 百度地图API调用实现获取经纬度以及标注

    一.申请AK 百度搜索百度地图API,进入官网文档,按照官网文档提示注册百度账号并申请AK.申请AK 填写相关信息,应用名称随意.应用类型根据协议来选择. 二.编写代码 根据官网的代码(入门引用和获取 ...

  3. java web调用百度地图_Java web与web gis学习笔记(二)——百度地图API调用

    一.申请百度地图开发者 百度地图API是为开发者免费提供的一套基于百度地图服务的应用接口,包括JavaScript API.Web服务API.Android SDK.iOS SDK.定位SDK.车联网 ...

  4. 百度地图API调用实例之地址标注与位置显示

    之前弄了个谷歌地图API标注的调用实例,后来要求改成百度地图. 感谢主,通过网上资料(百度地图API,百度地图API详解之地图标注)收集及研究, 终于把百度地图标注和显示功能实现出来了,具体实现方法如 ...

  5. GPS坐标转换 百度地图API调用

    1 如果GPS输出的值是DD.DDDDDDDD格式的,直接调用地图API的转换函数处理,就可以正常显示 2 如果GPS输出的值是DD.MMMMMMMM格式的,就需要先进行分转度处理,然后再调API,就 ...

  6. 百度地图API调用问题-sn 的生成

    在使用百度地图的 逆地理编码 功能时遇到了一些问题,官方的文档有一些问题,并且说得也不是很清楚,现在把C# 版本的引用方式和调用方法在这里记录一下,给有需要的人参考一下. SN码生成类 public ...

  7. 百度地图api调用逆地理编码(python3)sn校验方式

    程序功能 通过调用百度api,输入中文地址,返回经纬度. 网站接口解释 百度官网其实有很清楚的,开发文档解释,链接:http://lbsyun.baidu.com/index.php?title=we ...

  8. springboot8==调用百度地图API从浏览器获取经纬度,后端使用geodesy依赖计算配送距离

    见百度地图API调用文档 jspopularGL | 百度地图API SDK ================ <!--引入百度地图API用于从浏览器获取当前经纬度--> <scri ...

  9. vue调用百度地图API输入提示示例下拉列表一直被触发问题

    2019独角兽企业重金招聘Python工程师标准>>> 先看图 然后点确定,居然下拉框又被触发了,而且在添加页面各种输入框只要一输入文字就会触发地图下拉框展示,很恶心的一个bug,不 ...

最新文章

  1. python模拟退火(Simulated Annealing)参数寻优实战
  2. 【深度总结】聊聊为什么技术要先广后精,对技术新人的几点建议
  3. background-sizi (转)
  4. spring3 常见异常解决
  5. python的migratetodb_Python的Flask框架中使用Flask-Migrate扩展迁移数据库的教程
  6. 让input支持 ctrl v上传粘贴图片? 让input支持QQ截图或剪切板中的图像数据(Java实现保存)...
  7. myEclipse 界面窗口打不开问题
  8. PAT 1090 危险品装箱(25 分)- 乙级
  9. 解决Vmware虚拟机中没有网络连接Ubuntu无法上网
  10. FISCO BCOS 控制台 部署合约 调用 查看已部署合约的地址
  11. 【MacOS】必备的常用快捷键
  12. 一名大一新生的年终总结
  13. 今日头条视频地址提取 谷歌插件
  14. 第八章 SQL修改数据库
  15. 天翼云80/8080/443端口访问不通问题
  16. js事件冒泡、阻止事件冒泡以及阻止默认行为
  17. 发布Java应用实践结合CCE
  18. 智慧睡眠风口之上,企业破圈要聚焦“场景竞争力”
  19. 央行下属的上海资信网络金融征信系统(NFCS)签约机构数量突破800家
  20. BZOJ 4466 [Jsoi2013]超立方体【模拟

热门文章

  1. 四路抢答器c语言编程,多路抢答器c程序(原创)
  2. 判断全角空格和半角空格
  3. oracle表空间文件扩容
  4. scandall pro找不到扫描仪_微信打开这个功能,手机秒变扫描仪,纸质文档一键电子化...
  5. 【开源项目】之智能婴儿摇篮
  6. 跨专业考研必须要了解的5个常识!
  7. java基础:运行、注释、标识符、数据类型、运算法则
  8. cad在线转换_CAD如何转换?一招教你在线免费将CAD转成多种格式
  9. 被勒索15亿,与黑客之间的佛系斗智斗勇,笑喷了……
  10. Dom4j的使用(全而好的文章)