導航:首頁 > 線路規劃 > 百度地圖api地鐵線路

百度地圖api地鐵線路

發布時間:2021-02-26 18:33:24

❶ iOS開發 百度地圖API支持公交地鐵規劃

用戶點擊注冊後彈出地圖並使用地圖拖拽功能確定自己的位置,取得位置坐標並保存到資料庫,用戶登錄後根據坐標位置顯示其周圍500米范圍內其它用戶信息,OK!

❷ 如何在百度地圖上看整個地鐵線路圖

准備工具:電腦,可以上網的瀏覽器以360瀏覽器為例

1.在桌面中找到360瀏覽器圖標,雙擊瀏覽器打開瀏覽器頁面。

❸ 百度地圖api路線規劃的線路顏色能改變嗎

路徑規劃是我調sdk的方法,他內部畫的,我如果要自己畫怎樣才能得到每個點的經緯度。V3.0的sdk

❹ 百度地圖api中怎樣實現火車查詢功能,或者說 是誇省市路線查詢功能哪個API

你看看 聚合數據的 有現成的線路查詢介面

❺ baidu地圖的那個api提供火車路線查詢服務,或是飛機路線查詢服務

公交導航功能是告訴使用者從A到B的公交出行方案,而不是某條具體的公交線路信息,這一點需要廣大開發者注意。

公交導航功能通過類TransitRoute來實現,這里需要說說為啥不是BusRoute,而是TransitRoute。網路提供的是公共交通導航,公共交通不僅僅涉及bus,可能還會有地鐵、渡輪甚至以後的飛機火車,所以這里使用的是public transit中的transit進行描述。

一個簡單的例子

我們還是從一個簡單的例子開始:
var transit = new BMap.TransitRoute('北京', { renderOptions: { map: map, panel: 'panel' }});transit.search('頤和園', '西單');
代碼通過renderOptions設置渲染的地圖實例和側欄面板容器的id,其中map是已經實例化好的地圖,panel為已經准備好的div元素的id。我們會看到如下結果:

地圖上顯示了一個方案,在面板中列出了所有方案的描述,點擊不同的方案地圖會予以展示。

除了使用字元串類型以外,還可以提供坐標進行查詢,這樣可以得到更精確的結果。比如從「麥當勞」到「肯德基」這樣的路線查詢就不會得到結果,因為API不知道是從哪個麥當勞到哪個肯德基。下面的示例使用了坐標進行搜索。
transit2.search(new BMap.Point(116.315157,39.987946), new BMap.Point(116.371499,39.880394));
下面是使用坐標作為參數進行查詢得到的結果:

注意,由於提供的是坐標,所以起點和終點沒有具體的地點描述。

自定義覆蓋物展示

如果你不滿意API提供的默認線路的顏色和標注的樣式,你也可以選擇通過通過數據介面自行創建。注意,自己創建覆蓋物時,點擊列表中的方案將不會更新地圖區域,因為此時地圖區域的元素都是由開發者自行創建的。在使用數據介面之前,先通過一個結構圖來了解一個完整的公交方案的各個組成部分,以方便理解:

一個不需要換乘的公交方案是由:起點、起點到上車站的步行線路、上車站到下車站的公交線路以及下車站到終點的步行線路構成。當然有可能起點和上車站是重合的,或者終點和下車站是重合的,此時步行線路長度就為0(起點或終點本身就為公交站的時候)。如果有換乘,那麼每次換乘中的下車站到上車站也有步行線路(如上圖的第二個方案所示)。

所以不論公交方案具體是什麼樣,在數據上的表示都是一致的:
•直達方案:2條步行線路 + 1條公交線路
•換乘一次方案:3條步行線路 + 2條公交線路
•換乘兩次方案:4條步行線路 + 3條公交線路

以此類推。

API中通過TransitRouteResult來描述公交導航結果,通過TransitRoutePlan來描述一條公交方案。那麼怎麼獲取公交導航結果和具體的方案的信息呢?請看下面的示例:
var transit = new BMap.TransitRoute('北京', { onSearchComplete: function(result) { if (transit.getStatus() == BMAP_STATUS_SUCCESS) { // 從結果對象中獲取起點和終點信息 var start = result.getStart(); var end = result.getEnd(); addStart(start.point, start.title); addEnd(end.point, end.title); // 直接獲取第一個方案 var plan = result.getPlan(0); // 遍歷所有步行線路 for (var i = 0; i < plan.getNumRoutes(); i++) { if (plan.getRoute(i).getDistance(false) > 0) { // 判斷只有大於0的步行線路才會繪制 addWalkRoute(plan.getRoute(i).getPath()); } } // 遍歷所有公交線路 var allLinePath = []; for (i = 0; i < plan.getNumLines(); i++) { allLinePath = allLinePath.concat(plan.getLine(i).getPath()); addLine(plan.getLine(i).getPath()); } // 最後根據公交線路的點設置地圖視野 map.setViewport(allLinePath); } }});transit.search('清華大學', '北京交通大學');// 添加起點覆蓋物function addStart(point, title){ map.addOverlay(new BMap.Marker(point, { title: title, icon: new BMap.Icon('http://images.cnblogs.com/cnblogs_com/jz1108/329471/o_blue.png', new BMap.Size(38, 41), { anchor: new BMap.Size(4, 36) })}));}// 添加終點覆蓋物function addEnd(point, title){ map.addOverlay(new BMap.Marker(point, { title: title, icon: new BMap.Icon('http://images.cnblogs.com/cnblogs_com/jz1108/329471/o_red.png', new BMap.Size(38, 41), { anchor: new BMap.Size(4, 36) })}));}// 添加路線function addWalkRoute(path){ map.addOverlay(new BMap.Polyline(path, { strokeColor: 'black', strokeOpacity: 0.7, strokeWeight: 4, strokeStyle: 'dashed', enableClicking: false }));}function addLine(path){ map.addOverlay(new BMap.Polyline(path, { strokeColor: 'blue', strokeOpacity: 0.6, strokeWeight: 5, enableClicking: false }));}
在上面的代碼中,通過TransitRouteOptions的onSearchComplete屬性設置了回調函數,一旦檢索完成這個回調函數就會被調用。在回調函數開始我們先判斷檢索是否成功,如果成功表示至少有一條公交方案返回,這里我們先通過結果對象獲取起點和終點,接著直接獲取第一條方案,遍歷方案中所有步行線路和公交線路並繪制在地圖上,最後我們根據公交線路的點來設置一個合適的地圖視野。

你會在瀏覽器中得到如下效果:

在獲取結果對象時,除了通過回調函數參數獲取以外,還可以通過TransitRoute的getResults方法獲得,需要注意的是,由於搜索過程是非同步的,以下代碼的寫法將不會得到結果:
transit.search('西單', '頤和園');var res = transit.getResults(); // undefined
因為search方法調用結束後搜索結果並沒有立即返回。開發者可以在回調函數中調用此方法立即獲得結果,也可以等回調函數執行完若干時間後再想獲取結果數據時調用。

自定義方案描述

通過TransitRoutePlan的getDescription可以獲得完整的方案描述,但是如果開發者想自行定義描述的形式則可通過數據介面進行。例如:
var transit = new BMap.TransitRoute('北京', { onSearchComplete: function(result) { if (transit.getStatus() == BMAP_STATUS_SUCCESS) { // 從結果對象中獲取起點和終點信息 var start = result.getStart().title; var end = result.getEnd().title; // 直接獲取第一個方案 var plan = result.getPlan(0); // 獲取步行線路與公交線路個數總和,用於遍歷 var total = plan.getNumRoutes() + plan.getNumLines(); var description = ['從' + start]; var addEndTitle = true; for (var i = 0; i < total; i++) { if (i % 2 == 0) { // i為偶數 // 處理第一個步行描述邏輯 if (i / 2 == 0) { if (plan.getRoute(i / 2).getDistance(false) == 0) { description = ['從']; } } // 處理最後一個步行描述邏輯 if (i / 2 == plan.getNumRoutes() - 1) { if (plan.getRoute(i / 2).getDistance(false) == 0) { addEndTitle = false; } } if (plan.getRoute(i / 2).getDistance(false) > 0) { description.push('步行約' + plan.getRoute(i / 2).getDistance(true) + '至'); } } else { // i為奇數 var line = plan.getLine((i - 1) / 2); description.push(line.getGetOnStop().title + ', '); description.push('乘坐' + line.title + ', '); description.push('經過' + line.getNumViaStops() + '站'); description.push('在' + line.getGetOffStop().title + '站下車,'); } } if (addEndTitle) { description.push(end + '。'); } // 替換可能出現的末尾位置的逗號 var descriptionStr = description.join('').replace(/\uff0c$/, '。'); } }});transit.search('清華大學', '北京交通大學');
變數descriptionStr的內容為:「從清華大學步行約830米至五道口, 乘坐地鐵13號線(東直門-西直門), 經過3站在西直門站下車,步行約310米至城鐵西直門站, 乘坐運通105(上地環島東-中苑賓館), 經過2站在北京交通大學站下車。」

回調函數詳解

前面的幾個例子我們使用了onSearchComplete回調函數,在API中還提供了如下幾個回調函數,它們的含義和觸發時機如下:
•onMarkersSet:如果設置了渲染的地圖,則API自動添加標注後會觸發此函數。
•onPolylinesSet:如果設置了渲染的地圖,則API自動添加線路覆蓋物後會觸發此函數。
•onInfoHtmlSet:如果設置了渲染地圖,當用戶點擊標注彈出信息窗口時會觸發此函數。
•onResultsHtmlSet:如果設置了渲染側欄,則API填充完HTML後會觸發此函數。

❻ 關於百度地圖API的線路顯示難題,我想在同一個地圖頁面里,顯示2條以上的公交線路

只提供思路,首先是檢查API看是否能夠傳入多組Point參數直接生成多條路線。
當然這個版很可能是沒有的,權其次是能否獲取路線的數據,而不是調API直接顯示在地圖上。
如果可以,那顯示多條就不是問題了。
你說的圖層的方法,是可以是實現的,兩張一樣的圖,調整上面一張圖的透明圖即可。
路線名稱很簡單。

❼ 百度地圖api中如何將多個地點連接成一條線路

使用網路的推薦線路試一下

❽ 最近要實現一個在地鐵線路圖上加標注的功能,類似於百度地鐵地圖功能,百度地圖有沒有API可調用

網路地圖api:http://developer..com/map/
全是js,引用包就行了,裡面有標注的添加,c#搞這個可以?
當然用js動態輕量操作啊

❾ 百度地圖api 怎麼在百度地圖的兩個坐標點之間畫一條直線

var polyline = new BMap.Polyline([
new BMap.Point(lng1,lat1)//起始點的經緯度
new BMap.Point(lng2,lat2)//終止點的經緯度
], {strokeColor:"red",//設置顏色
strokeWeight:3, //寬度
strokeOpacity:0.5});//透明度
map.addOverlay(polyline);

給你個地址吧,都是版最基礎的例子,我一直在這學:權http://developer..com/map/jsdemo.htm

❿ android百度地圖api,請問導航時只搜索地鐵線路用什麼介面啊就是一個地點去另一個地點,我只顯示地鐵線

你什麼意思呀?只搜索地鐵線路怎麼會顯示公交的??想顯示公交就選擇公交線路搜索呀。。。

閱讀全文

與百度地圖api地鐵線路相關的資料

熱點內容
廣佛地鐵出口地圖 瀏覽:273
武漢地鐵報站英文 瀏覽:92
白石高鐵站 瀏覽:294
北京地鐵安全隱患 瀏覽:382
南京東善橋地鐵 瀏覽:905
深圳地鐵列車有多長 瀏覽:556
金洲地鐵站到廣州火車站地鐵要多久 瀏覽:783
南京地鐵機場線單程時間 瀏覽:161
乘地鐵去佛山東建世界廣場 瀏覽:498
惠州仲愷深業喜悅城地鐵規劃 瀏覽:378
天府廣場到韋家碾地鐵價格 瀏覽:112
萬菱匯地鐵出口 瀏覽:402
長水機場到大觀樓地鐵 瀏覽:704
廣州t2機場那個地鐵站 瀏覽:909
s7地鐵南京運行時間 瀏覽:943
高鐵為什麼夜間不開行 瀏覽:500
西安門地鐵站怎麼去南京眼 瀏覽:480
廣州火車站去廣州機場地鐵 瀏覽:694
成都地鐵站項目總監招聘 瀏覽:691
佛山地鐵廣州火車站 瀏覽:965