百度地图API - 行车路线 轨迹

<!DOCTYPEhtml>

<html>

<head>

<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>

<title>驾车途经点</title>

<scripttype="text/javascript"src="http://api.map.baidu.com/api?v=1.2"></script>

</head>

<body>

<p><inputtype='button'value='开始'onclick='run();'/></p>

<divstyle="width:820px;height:500px;border:1pxsolidgray"id="container"></div>

<scripttype="text/javascript">

varmap=newBMap.Map("container");

map.centerAndZoom(newBMap.Point(116.404,39.915),13);

map.addControl(newBMap.NavigationControl());//添加平移缩放控件

map.addControl(newBMap.ScaleControl());//添加比例尺控件

map.addControl(newBMap.OverviewMapControl());//添加缩略地图控件

varmyP1=newBMap.Point(106.521436,29.532288);//起点-重庆

varmyP2=newBMap.Point(108.983569,34.285675);//终点-西安

varmyP3=newBMap.Point(116.404449,39.920423);//终点-北京

window.run=function(){

map.clearOverlays();//清除地图上所有的覆盖物

vardriving=newBMap.DrivingRoute(map);//创建驾车实例

driving.search(myP1,myP2);//第一个驾车搜索

driving.search(myP2,myP3);//第二个驾车搜索

driving.setSearchCompleteCallback(function(){

varpts=driving.getResults().getPlan(0).getRoute(0).getPath();//通过驾车实例,获得一系列点的数组

varpolyline=newBMap.Polyline(pts);

map.addOverlay(polyline);

varm1=newBMap.Marker(myP1);//创建3个marker

varm2=newBMap.Marker(myP2);

varm3=newBMap.Marker(myP3);

map.addOverlay(m1);

map.addOverlay(m2);

map.addOverlay(m3);

varlab1=newBMap.Label("起点",{position:myP1});//创建3个label

varlab2=newBMap.Label("途径点",{position:myP2});

varlab3=newBMap.Label("终点",{position:myP3});

map.addOverlay(lab1);

map.addOverlay(lab2);

map.addOverlay(lab3);

setTimeout(function(){

map.setViewport([myP1,myP2,myP3]);//调整到最佳视野

},1000);

});

}

</script>

</body>

</html>

--摘自互联网

相关推荐