您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
百度地图javascript接口开发-步行路线
发布时间:2016-11-20 14:26:31编辑:雪饮阅读()
步行路线示例:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<style type="text/css">
html{height:100%;}
body{height:100%;margin:0px;padding:0px;}
#container{
clear:both;
height:100%;
width:100%;
}
</style>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=s9vYSVwPjtPFv00vuxKzoNxD"></script>
<script type="text/javascript">
BMap.Point.prototype.toString=function(){
return "当前的经度="+this.lng+",纬度="+this.lat;
}
BMap.Pixel.prototype.toString=function(){
return "当前点坐标x="+this.x+",y="+this.y;
}
var map;
function InitMap(){
map=new BMap.Map("container");
var point=new BMap.Point(104.06,30.67);//成都的经纬度点
map.centerAndZoom(point,12);
map.enableScrollWheelZoom();
var walkingRouteOptions={
renderOptions:{
map:map,
panel:document.getElementById("result"),
selectFirstResult:true,
autoViewport:true,
highlightMode:BMAP_HIGHLIGHT_ROUTE
},
onSearchComplete:function(results){
console.log("本次检索所在的城市:"+results.city);
console.log("起点:");
console.log(results.getStart());
console.log("终点:");
console.log(results.getEnd());
for(var i=0;i<results.getNumPlans();i++){
var routePlan=results.getPlan(i);
var numRoutes=routePlan.getNumRoutes();
for(var routeIndex=0;routeIndex<numRoutes;routeIndex++){
var route=routePlan.getRoute(routeIndex);
var numSteps=route.getNumSteps();
//下面的stepIndex的条件最大值不能超过关键点的总量,否则就会导致关键点把折线都挤掉了
for(var stepIndex=0;stepIndex<30;stepIndex++){
var step=route.getStep(stepIndex);
var stepPoint=step.getPosition();
var marker=new BMap.Marker(stepPoint,{title:"第"+(stepIndex+1)+"个关键点"});
map.addOverlay(marker);
}
}
}
},
onMarkersSet:function(){
},
onInfoHtmlSet:function(poi,htmlDom){
//在查询结果的div中的路线节点中点击后执行
console.log(poi);
console.log(htmlDom.innerHTML);
var marker=poi.marker;
marker.setRotation(30);//点击标注小图标时将该小图标旋转30度
marker.setTitle("起点和终点的marker");//点击气泡时设置其下标标注标题
},
onPolylinesSet:function(routes){
alert("驾车线路数组length="+routes.length);
for(var index=0;index<routes.length;index++){
var route=routes[index];
var polyline=route.getPolyline();
if(index==0)
polyline.setStrokeColor("green");
if(index==1)
polyline.setStrokeColor("blue");
if(index==2)
polyline.setStrokeColor("black");
}
},
onResultsHtmlSet:function(container){
console.log(container);
container.style.border="1px solid green";
}
};
var walkingRoute=new BMap.WalkingRoute(map,walkingRouteOptions);
var startPoint=new BMap.Point(104.105382,30.659159);
var endPoint=new BMap.Point(104.072109,30.663508);
//精确检索
//walkingRoute.search(startPoint,endPoint);
//模糊检索
walkingRoute.search("安康","渭南");
map.addEventListener("click",function(event){
//console.log(event.point);
});
}
</script>
</head>
<body onLoad="InitMap();">
<div id="container"></div>
<div id="result"></div>
</body>
</html>
关键字词:百度地图api,javascript