如何制作多途經(jīng)點的線路導(dǎo)航?
毛毛
一、創(chuàng)建地圖 API1/?v=
1.2"> 創(chuàng)建一張簡單的地圖: var map = new BMap.Map("container"); map.centerAndZoom(new BMap.Point(11
6.404, 3
9.915), 13); 然后為地圖加上一些合適的控件: map.addControl(new BMap.NavigationControl()); // 添加平移縮放控件 map.addControl(new BMap.ScaleControl()); // 添加比例尺控件 map.addControl(new BMap.OverviewMapControl()); //添加縮略地圖控件 也可以使用localsearch類的search方法。這個可以隨意。 找到坐標(biāo)點之后,創(chuàng)建三個點對象。 var myP1 = new BMap.Point(10
6.521436,2
9.532288); //起點-重慶 var myP2 = new BMap.Point(10
8.983569,3
4.285675); //終點-西安 var myP3 = new BMap.Point(11
6.404449,3
9.920423); //終點-北京
二、創(chuàng)建一個駕車導(dǎo)航和兩個駕車搜索 用這句話就可以創(chuàng)建駕車導(dǎo)航啦。 var driving = new BMap.DrivingRoute(map); //創(chuàng)建駕車實例 然后寫兩個搜索方法: 第一個是搜索從重慶到西安的,第二個是從西安到北京的。 driving.search(myP1, myP2); //第一個駕車搜索 driving.search(myP2, myP3); //第二個駕車搜索
三、自己繪制折線 接下來,在回調(diào)函數(shù)setSearchCompleteCallback中,把搜索完畢的路線繪制出來。 注意,這里是兩個搜索的路線都繪制出來了~~ 第一句、獲取數(shù)組 第二句、創(chuàng)建折線 第三句、添加折線覆蓋物 driving.setSearchCompleteCallback(function(){ var pts = driving.getResults().getPlan(0).getRoute(0).getPath(); //通過駕車實例,獲得一系列點的數(shù)組 var polyline = new BMap.Polyline(pts); map.addOverlay(polyline);}。
淇寶2
2021-09-23 17:53:14 769查看 1回答
亞克力方格
2021-09-23 17:53:14 662查看 1回答
2021-09-23 17:53:14 487查看 0回答
毛毛
2021-09-23 17:53:14 531查看 1回答
2021-09-23 17:53:14 528查看 0回答
月色
2021-09-23 17:53:14 601查看 1回答
賺錢8888
2021-09-23 17:53:14 1053查看 1回答
2021-09-23 17:53:14 534查看 0回答
2021-09-23 17:53:14 596查看 0回答
2021-09-23 17:53:14 487查看 0回答