百度地图API 怎样实现根据起点和终点点击查询能出现路线
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了百度地图API 怎样实现根据起点和终点点击查询能出现路线相关的知识,希望对你有一定的参考价值。
我就不贴代码了,说个思路
需要点击地图 两下 设置,获取起点的 坐标和终点的坐标。 这个应该比较简单
map.addEventListener("click",clickCab) clickCab回调中获取 回调参数的 target.point属性,这是点击的点。 可以在点击的时候 绘制一个marker,标注起点终点
得到两个点的坐标后
var routePolicy = [BMAP_DRIVING_POLICY_LEAST_TIME,BMAP_DRIVING_POLICY_LEAST_DISTANCE,BMAP_DRIVING_POLICY_AVOID_HIGHWAYS];var transit = new BMap.DrivingRoute(map,
renderOptions:
map: map,
//panel: "r-result", //结果列表的HTML容器id或容器元素,提供此参数后,结果列表将在此容器中进行展示。此属性对LocalCity无效。
autoViewport: true,
enableDragging : true //起终点可进行拖拽
,
policy: routePolicy[0],//线路规范方式,时间最短,距离最近等等
onSearchComplete: function(res)
if (transit.getStatus() == BMAP_STATUS_SUCCESS)
var plan = res.getPlan(0);
var arrPois =[];//线路数组
for(var j=0;j<plan.getNumRoutes();j++)
var route = plan.getRoute(j);
arrPois= arrPois.concat(route.getPath());
//得到线路总长
var polylineLength=plan.getDistance(false);
else
console.log("检索失败!")
);
transit.search(point1,point2); //point1和point2 可以换成 地名
如果是用的离线地图,可清理下应用程序百度导航里面的缓存,然后重新进入百度导航就有声音了。供参考下。
百度地图为啥不能任意设置起点和终点
百度地图不能任意设置起点和终点是因为手机定位出错了。可能导致的原因以及解决办法如下:
1.检查手机是否有明显的碰撞痕迹,可能是由于手机进行了碰撞而导致手机的GPS损坏从而无法进行定位。如果损坏需要进行维修。
2.进入软件之后,检查一下版本的更新,确保当前手机软件的版本为最新,可以避免出现不兼容的情况出现。
3.在手机的设置当中,看看自己有没有给软件使用定位的权限,如果没有这个权限是不能进行GPS定位的。
4.顺便检查一下自己下的APP是不是真正的官方授权的正版软件,最好去官网进行下载,要不然可能会下载到有木马病毒的垃圾或伪正版软件。
5.不能正常的使用定位还有可能是因为自己的手机网络不通畅,可以检查一下自己的手机网络连接情况。
扩展内容:
打开百度地图网页版,如不知道的可以在百度搜索"百度地图"后面带官网字样的那个,打开后,并没有看到起点和终点的输入框,那么先点击输入框右侧的那个折线箭头。现在就有了起点和终点的地址的输入框了。
参考技术A 换一款手机地图导航吧现在也是有很多的手机地图导航的,你可以试试看腾讯地图吧
它的功能是很多很好的,可以按照你不同的需要来帮你查询到很多的东西,比如像任意两地之间的路线,可以乘坐到达的交通方式,等等,都是可以显示给你的
希望能帮到你吧,望采纳啊 参考技术B 百度地图支持任意设置起点和终点,设置方法如下:
1.打开百度地图,点击下方的【路线】功能。
2.点击进去后,选择【我的位置】选项,输入你所需要设置的起点
3.或者选择【地图选点】,手指按住地图,将起点的标记移动到需要的地点上,点【设为起点】
5.起点设好后,选择【输入终点】
6.设好终点以后,选择【确定】,就会出现起点和终点的路径,以及打车所要时间和价钱。也可以选择公交及步行方式。 参考技术C 能,在地图上长按,然后选择导航 参考技术D 起点和终点可以任意的啊!谁说不行的?
以上是关于百度地图API 怎样实现根据起点和终点点击查询能出现路线的主要内容,如果未能解决你的问题,请参考以下文章