当前位置: 首页 > news >正文

百度地图api文档实现任意两点之间的最短路线规划

两个点之间的路线是使用“Marker”点连接起来的,目前还没找到改变点颜色的方法,测试过使用setStyle没有效果。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no"/>
<style type="text/css">
body, html, #allmap {
width: 100%;
height: 100%;
overflow: hidden;
margin: 0;
font-family: "微软雅黑";
}

.anchorBL {
display: none;
}
</style>
<script type="text/javascript"
src="http://api.map.baidu.com/api?v=2.0&ak=dpB1d25b7smGMe8evaIAxw881Aq3AUfb"></script>
<title></title>
</head>
<body>
<div id="allmap"></div>
<script type="text/javascript">

// 百度地图API功能
var map = new BMap.Map("allmap");
map.centerAndZoom("重庆", 14);
var walking = new BMap.WalkingRoute(map, {
renderOptions: {
map: map,
autoViewport: true
}
});

map.enableScrollWheelZoom(); //启用滚轮放大缩小,默认禁用
map.enableContinuousZoom(); //启用地图惯性拖拽,默认禁用
//路况
var traffic = new BMap.TrafficLayer(); // 创建交通流量图层实例
map.addTileLayer(traffic); // 将图层添加到地图上

//浏览器定位
/*var geolocation = new BMap.Geolocation();
geolocation.getCurrentPosition(function(r){
if(this.getStatus() == BMAP_STATUS_SUCCESS){
var mk = new BMap.Marker(r.point);
map.addOverlay(mk);
map.panTo(r.point);
alert('您的位置:'+r.point.lng+','+r.point.lat);
}
else {
alert('failed'+this.getStatus());
}
});
*/
var myIcon = new BMap.Icon("../images/marker_MAN.png", new BMap.Size(20, 26));
var _points = [];
map.addEventListener("click", function (e) {
var _point = {
lng: "",
lat: ""
};
_point.lng = e.point.lng;
_point.lat = e.point.lat;
_points.push(_point);
map.addOverlay(new BMap.Marker(new BMap.Point(e.point.lng, e.point.lat), {icon: myIcon}));
console.log(_points);
// alert(e.point.lng + "," + e.point.lat);
if (_points.length === 2) {
var start = new BMap.Point(_points[0].lng, _points[0].lat);
var end = new BMap.Point(_points[1].lng, _points[1].lat);
walking.search(start, end);
map.clearOverlays();
_points = [];
}
});
</script>
</body>
</html>

转载于:https://www.cnblogs.com/LindaBlog/p/10455517.html

相关文章:

  • 链表
  • Spark一些必须知道的概念
  • Linux系列(5)linux基础命令
  • 08r2活动目录迁移升级2012r2--(DHCP迁移)
  • 唯一分解定理
  • 关于 es6的 let 特性在 for 循环结构 的个人理解
  • 蚂蚁数据分析平台的演进及数据分析方法的应用
  • 从第一行代码开始开发区块链(二)
  • 函数组件与类有什么不同?
  • 通过find文件并对大小求和统计目录大小
  • elasticsearch 占CPU过高
  • Windows本地代码仓库使用连接教程
  • Redis 安装加集群配置
  • 带你快速了解ES1D-E361T
  • 分布式关系型数据库服务 DRDS 支持显示的 Prepare 及逻辑库锁功能等多项能力 ...
  • 9月CHINA-PUB-OPENDAY技术沙龙——IPHONE
  • -------------------- 第二讲-------- 第一节------在此给出链表的基本操作
  • 分享一款快速APP功能测试工具
  • (ckeditor+ckfinder用法)Jquery,js获取ckeditor值
  • 2017-09-12 前端日报
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • Docker 笔记(2):Dockerfile
  • es的写入过程
  • JavaScript中的对象个人分享
  • puppeteer stop redirect 的正确姿势及 net::ERR_FAILED 的解决
  • Vim 折腾记
  • 码农张的Bug人生 - 初来乍到
  • 判断客户端类型,Android,iOS,PC
  • 区块链共识机制优缺点对比都是什么
  • 什么是Javascript函数节流?
  • 使用docker-compose进行多节点部署
  • 试着探索高并发下的系统架构面貌
  • 要让cordova项目适配iphoneX + ios11.4,总共要几步?三步
  • 找一份好的前端工作,起点很重要
  • 做一名精致的JavaScripter 01:JavaScript简介
  • 【云吞铺子】性能抖动剖析(二)
  • 7行Python代码的人脸识别
  • Python 之网络式编程
  • ​LeetCode解法汇总307. 区域和检索 - 数组可修改
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • #14vue3生成表单并跳转到外部地址的方式
  • #includecmath
  • #考研#计算机文化知识1(局域网及网络互联)
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • (09)Hive——CTE 公共表达式
  • (51单片机)第五章-A/D和D/A工作原理-A/D
  • (八)五种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (初研) Sentence-embedding fine-tune notebook
  • (四)Linux Shell编程——输入输出重定向
  • (一)硬件制作--从零开始自制linux掌上电脑(F1C200S) <嵌入式项目>
  • (原創) 物件導向與老子思想 (OO)
  • (转)AS3正则:元子符,元序列,标志,数量表达符
  • ***微信公众号支付+微信H5支付+微信扫码支付+小程序支付+APP微信支付解决方案总结...
  • ... 是什么 ?... 有什么用处?
  • .gitignore