读书人

百度mapAPI详解之驾车导航

发布时间: 2013-04-09 16:45:09 作者: rapoo

百度地图API详解之驾车导航

var map = new BMap.Map('container');map.centerAndZoom(new BMap.Point(116.404, 39.915), 11);var driving = new BMap.DrivingRoute(map, {    renderOptions: {        map: map    }});driving.search('圆明园', '西单');

上面代码很简单,先初始化地图(地图容器的html代码省略),接着实例化一个DrivingRoute类,并配置好参数(参数具体含义后续再说)。最后调用该实例的search方法进行驾车方案查询。我们会在浏览器看到如下效果:

百度mapAPI详解之驾车导航

DrivingRoute的构造函数的第一个参数制定检索的范围,这里我们传递的是map实例,也就是说驾车导航的位置会根据当前地图中心点所在的城市进行检索。当然你也可以传递一个城市名称的字符串:

<!DOCTYPE html><html><head><meta charset="utf-8"/><title>驾车导航</title><script src="http://api.map.baidu.com/api?v=1.2"></script></head><body><div id="container" style="width:400px;height:248px"></div><div id="panel" style="position:absolute;left:420px;top:10px"></div><script>var map =new BMap.Map('container');map.centerAndZoom(new BMap.Point(116.404, 39.915), 11);var driving =new BMap.DrivingRoute(map, {    renderOptions: {        map: map,        panel: 'panel'    }});driving.search('圆明园', '西单');</script></body></html>

这里我们增加一个div,id为panel,接着在renderOptions中增加panel属性,把div的id传递进去。我们会看到如下效果:

百度mapAPI详解之驾车导航

API会将详细的驾车方案描述填充到id为panel的div容器中。此时点击panel中的具体方案会在图区产生交互效果。

另外,呈现设置的enableDragging如果设置为true的画,则用户可以在地图上拖拽起点、终点改变驾车方案,也可以任意拖拽修改途径点:

var driving = new BMap.DrivingRoute(map, {    renderOptions: {        map: map,        panel: 'panel',        enableDragging: true    }});

百度mapAPI详解之驾车导航

highlightMode属性可以控制点击panel中的方案描述时展示点位置还是展示一段路线,它支持如下两个值:

读书人网 >移动开发

热点推荐