可以先在坐標拾取系統(tǒng)拾取一些點作為測試數(shù)據(jù)
http://api.map.baidu.com/lbsapi/getpoint/index.html
復(fù)制下面的代碼到.html文件即可運行,需要聯(lián)網(wǎng)
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>百度地圖繪制駕車途經(jīng)點路線圖</title>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.2"></script>
</head>
<body>
<p><input type='button' value='開始畫線' onclick='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(113.288386,23.139859),20);
map.addControl(new BMap.NavigationControl()); // 添加平移縮放控件
map.addControl(new BMap.ScaleControl()); // 添加比例尺控件
map.addControl(new BMap.OverviewMapControl()); //添加縮略地圖控件
var myP1 = new BMap.Point(113.281774,23.13288);
var myP2 = new BMap.Point(113.292157,23.132951);
var myP3 = new BMap.Point(113.296208,23.131513);
var myP4 = new BMap.Point(113.300603,23.130487);
var myP5 = new BMap.Point(113.301513,23.129129);
window.run = function (){
map.clearOverlays(); //清除地圖上所有的覆蓋物
var driving = new BMap.DrivingRoute(map); //創(chuàng)建駕車實例
driving.search(myP1, myP5); //第一個駕車搜索
driving.setSearchCompleteCallback(function(){
var pts = driving.getResults().getPlan(0).getRoute(0).getPath(); //通過駕車實例,獲得一系列點的數(shù)組
var polyline = new BMap.Polyline(pts);
map.addOverlay(polyline);
var m1 = new BMap.Marker(myP1); //創(chuàng)建3個marker
var m2 = new BMap.Marker(myP2);
var m3 = new BMap.Marker(myP3);
var m4 = new BMap.Marker(myP4);
var m5 = new BMap.Marker(myP5);
map.addOverlay(m1);
map.addOverlay(m2);
map.addOverlay(m3);
map.addOverlay(m4);
map.addOverlay(m5);
var lab1 = new BMap.Label("起點",{position:myP1}); //創(chuàng)建3個label
var lab2 = new BMap.Label("途徑點1",{position:myP2});
var lab3 = new BMap.Label("途徑點2",{position:myP3});
var lab4 = new BMap.Label("途徑點3",{position:myP4});
var lab5 = new BMap.Label("終點",{position:myP5});
map.addOverlay(lab1);
map.addOverlay(lab2);
map.addOverlay(lab3);
map.addOverlay(lab4);
map.addOverlay(lab5);
setTimeout(function(){
map.setViewport([myP1,myP2,myP3,myP4,myP5]); //調(diào)整到最佳視野
},1000);
});
}
</script>
</body>
</html>
運行效果
