百度地图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>
--摘自互联网