涂長永,鐘麗波
(長春師范大學城市與環(huán)境科學學院,吉林長春 130032)
人們在乘公交出行時的路線在出行途中可能發(fā)生變化。基于此,本文設(shè)計了一種可以讓乘客進行快速查找公交換乘方案的系統(tǒng)。本系統(tǒng)以長春市為例,使用SuperMap iServer設(shè)計并實現(xiàn)了公交換乘線路分析的4種方法:最少時間、最短距離、少步行和少換乘。還提供了網(wǎng)絡(luò)分析功能,如最優(yōu)路徑分析和旅行商分析等。
系統(tǒng)主要服務(wù)于有出行需求的大眾用戶,要求在系統(tǒng)設(shè)計,尤其是界面和接口設(shè)計上,設(shè)計簡捷,以方便用戶使用。根據(jù)需求分析的成果,把系統(tǒng)功能按層次圖形式呈現(xiàn),如圖1所示。
圖1 系統(tǒng)功能結(jié)構(gòu)圖
系統(tǒng)的重點在于實現(xiàn)交通換乘的設(shè)計,用戶可以輸入起點和終點,并選擇按最少時間、最短距離、少步行和少換乘四種偏好來查詢公交換乘方案,查詢結(jié)果會有不同方案供用戶選擇,當用戶點擊了某個具體方案,系統(tǒng)可以提供圖形和文字方式來指引用戶出行。
系統(tǒng)中主要包含公交路線和公交站點兩類實體集。公交路線實體包括6項:公交路線編號、公交路線名稱、公交路線起始點、公交路線目的地、公交路線途經(jīng)站點以及公交路線坐標等信息。網(wǎng)絡(luò)數(shù)據(jù)集中,公交線路表設(shè)計如表1所示。
系統(tǒng)使用的空間數(shù)據(jù)由SuperMap iServer 9D發(fā)布,并以SuperMap iClient for Android為客戶端開發(fā)工具,在Android Studio中用Java語言實現(xiàn)具體功能。系統(tǒng)架構(gòu)如圖2所示。
表1 公交線路表設(shè)計
圖2 系統(tǒng)架構(gòu)
當數(shù)據(jù)服務(wù)器連接成功以后就進入了系統(tǒng)功能選址界面,點擊交通換乘分析進入交通換乘界面,主界面顯示長春市交通圖。點擊移動設(shè)備的菜單按鈕,點擊“路線搜索”菜單,在彈出的對話框中輸入要查詢的起點和終點,用戶依據(jù)個人喜好選擇四種不同的換乘方式,實現(xiàn)流程圖如圖3所示。功能實現(xiàn)如圖4、圖5所示。
圖3 公交換乘分析流程圖
圖4 站點查詢界面
圖5 公交換乘方案選擇界面
交通換乘查詢的關(guān)鍵算法:
protected voidonNewIntent(Intent intent) {
Log.d("iserver","TrafficTransferAnalyst onNewIntent!");
isOnNewIntent=true;
Bundle newBundle=intent.getExtras();
List
geoPointList=(List
Log.d("iserver","points:"+geoPointList.size());
mapView.getOverlays().add(lineOverlay);
if(geoPointList.size()>=2){
if(mapView.getOverlays().contains(overlayStart)){
mapView.getOverlays().remove(overlayStart);
}
if(mapView.getOverlays().contains(overlayEnd)){
mapView.getOverlays().remove(overlayEnd);
}
overlayStart=newDefaultItemizedOverlay(drawableStart);
OverlayItemoverlayItemStart=newOverlayItem(geoPointList.get(0),"起點","起點");
overlayStart.addItem(overlayItemStart);
overlayEnd=newDefaultItemizedOverlay(drawableEnd);
OverlayItem overlayItemEnd =newOverlayItem(geoPointList.get(geoPointList.size()-1),"終點","終點");
overlayEnd.addItem(overlayItemEnd);
mapView.getOverlays().add(overlayStart);
mapView.getOverlays().add(overlayEnd);
}
lineOverlay.setData(geoPointList);
lineOverlay.setShowPoints(true);
mapView.invalidate();
}
為了方便步行至公交站點或目標地點,系統(tǒng)還應(yīng)包含常用的網(wǎng)絡(luò)分析功能,如最短路徑分析功能和旅行商分析功能。執(zhí)行結(jié)果如圖6、圖7所示。
圖6 交通網(wǎng)絡(luò)分析界面
圖7 最佳路徑分析結(jié)果
根據(jù)出行用戶對公交換乘查詢的實際需求,以SuperMap iServer 9D為開發(fā)平臺,基于移動GIS設(shè)計公交網(wǎng)絡(luò)分析系統(tǒng),利用該系統(tǒng)可以為乘客出行提供高效、便捷的服務(wù),滿足大多數(shù)移動終端客戶需求。系統(tǒng)采用輕量級客戶端解決方案,用戶無需下載數(shù)據(jù)到移動終端。這是一種較好的移動平臺公交查詢解決方案。