袁佳宇,劉素平
(蘭州交通大學交通運輸學院,甘肅 蘭州 730070)
近年來,科學技術(shù)快速發(fā)展,尤其是3S技術(shù)日漸發(fā)展和普及,被運用到各行各業(yè)。伴隨著科技的進步,城市建設(shè)也加快了步伐,中國的各大城市都相繼進入了大規(guī)模建設(shè)地鐵的階段。傳統(tǒng)的地鐵信息管理模式已不能滿足地鐵系統(tǒng)的發(fā)展需要,在地鐵系統(tǒng)中發(fā)展和應用GIS技術(shù),前景非常明朗。
WebGIS就是將傳統(tǒng)的桌面地理信息系統(tǒng)在互聯(lián)網(wǎng)上運行,它是地理信息系統(tǒng)的擴展和延伸。通過WebGIS以圖形數(shù)字信息來表現(xiàn)和管理地鐵的各種空間及屬性要素,使地鐵信息更豐富、更直觀地呈現(xiàn)給廣大用戶,進而實現(xiàn)地鐵信息的查詢和統(tǒng)計等操作功能,這將大大提高地鐵行業(yè)的市場競爭能力和服務水平。
ArcGIS Server是ESRI公司所做的GIS核心服務器,它可用于創(chuàng)建和管理GIS Web服務、應用程序和數(shù)據(jù),是一個與主流IT技術(shù)相兼容的軟件產(chǎn)品。ArcGIS Server允許在企業(yè)和整個Web上共享GIS資源包括地圖、地球儀、地址定位器、地理數(shù)據(jù)庫和與其他人共享的工具。通過ArcGIS Server平臺托管這些資源,客戶端應用程序可以使用資源或與資源進行交互,共享這些資源。在GIS服務器上共享GIS資源與通過其他類型的服務器技術(shù)共享數(shù)據(jù)相似,支持多用戶操作,并能為客戶端提供最新的信息。ArcSDE(空間數(shù)據(jù)庫引擎)是ArcGIS Server的一個組成部分,用于訪問和管理關(guān)系數(shù)據(jù)庫中的地理空間數(shù)據(jù)。
ArcGIS API for JavaScript是ESRI公司推出的一個使用JavaScript腳本語言的應用程序開發(fā)接口。該API可以用于ArcGIS Server REST服務,可實現(xiàn)在網(wǎng)頁中嵌入交互式地圖,ArcGIS Server 9.3版本及以上是可用的。
為了保證地鐵網(wǎng)電子示意圖展示系統(tǒng)的可擴展性以及可重用性,整個系統(tǒng)采用了三層架構(gòu)的設(shè)計思路。系統(tǒng)的總體架構(gòu)主要由數(shù)據(jù)層、服務層和客戶端三個部分組成。系統(tǒng)架構(gòu)設(shè)計如圖1所示。
圖1 地鐵線路展示系統(tǒng)示意圖
(1)數(shù)據(jù)層:主要涉及車站線路空間數(shù)據(jù)、業(yè)務屬性數(shù)據(jù)這兩類數(shù)據(jù)。系統(tǒng)使用的各種數(shù)據(jù)都由數(shù)據(jù)層進行存儲、管理、備份和存檔,數(shù)據(jù)層也負責維護系統(tǒng)的各種數(shù)據(jù)的關(guān)聯(lián),為地鐵網(wǎng)電子示意圖展示系統(tǒng)提供數(shù)據(jù)保障。
(2)服務層:客戶端應用層所需要的各種通用服務由服務層提供,主要包括三方面的服務:①地圖服務,利用ArcGIS Server發(fā)布地圖服務,服務會生成一個URL地址,為客戶端提供地鐵網(wǎng)電子示意圖展示;②數(shù)據(jù)服務,客戶端通過服務層訪問數(shù)據(jù)庫中的各類數(shù)據(jù),數(shù)據(jù)服務為其提供訪問接口,并實現(xiàn)對數(shù)據(jù)的維護;③業(yè)務應用服務,提供客戶端對服務器端口的高效訪問功能。
(3)客戶端:是本系統(tǒng)的業(yè)務應用平臺,它在數(shù)據(jù)層提供的空間數(shù)據(jù)、業(yè)務屬性數(shù)據(jù)等資源的基礎(chǔ)上,在服務層提供的各種服務的支持下,為系統(tǒng)提供相應的功能。客戶端表現(xiàn)層主要提供地鐵網(wǎng)電子示意圖展示、地圖基本操作、空間屬性數(shù)據(jù)互查詢、統(tǒng)計查詢、后臺數(shù)據(jù)管理、用戶權(quán)限管理等功能。
基于對系統(tǒng)靈活性和擴展性的考慮,采用異步分層加載方式將地鐵網(wǎng)繪制到空白底圖上,即采用Geodatabase數(shù)據(jù)模型對車站、線路圖層要素進行組織,利用ArcGIS創(chuàng)建地鐵網(wǎng)示意圖,將地鐵車站、線路要素及其相關(guān)屬性數(shù)據(jù)注冊到本地數(shù)據(jù)庫中,建立基于ArcSDE的空間數(shù)據(jù)庫。通過關(guān)鍵字段將本地數(shù)據(jù)庫中的車站、線路相關(guān)業(yè)務屬性數(shù)據(jù)與地鐵車站、線路空間數(shù)據(jù)匹配連接,在此基礎(chǔ)上,將創(chuàng)建好的地圖發(fā)布到服務器中。在加載地鐵網(wǎng)示意圖展示頁面時,從本地數(shù)據(jù)庫中讀取車站、線路相關(guān)業(yè)務屬性數(shù)據(jù)。這種方法定制性強,可以自己定義圖標,不同狀態(tài)、不同種類的車站、線路采用不同的圖標,用戶可以清晰、方便地分辨出不同類型的車站線路。如圖2所示。
圖2 地鐵網(wǎng)電子示意圖
地鐵網(wǎng)電子示意圖展示系統(tǒng)由地鐵網(wǎng)電子示意圖展示、地圖基本操作、空間屬性數(shù)據(jù)互查詢、統(tǒng)計查詢、后臺數(shù)據(jù)管理、用戶權(quán)限管理等六個功能模塊構(gòu)成,其功能結(jié)構(gòu)如圖3所示。
(1)地鐵網(wǎng)電子示意圖展示:建立地鐵網(wǎng)電子示意圖平臺,以直接美觀的方式展示地鐵網(wǎng),并實現(xiàn)車站名稱的標注顯示。
(2)地圖基本操作:實現(xiàn)地圖放大、縮小及鷹眼地圖、地圖漫游、全屏顯示等。
(3)空間屬性數(shù)據(jù)互查詢:包括空間查詢屬性和屬性查詢空間兩個功能??臻g查詢屬性信息可以實現(xiàn)鼠標點擊地圖上相應的車站或者線路,顯示車站線路屬性信息;屬性查詢空間可以根據(jù)用戶鍵入的缺省關(guān)鍵字來檢索需要的信息,將符合條件的車站或者線路高亮顯示并顯示相應的屬性信息。
(4)統(tǒng)計查詢:按照用戶選擇的統(tǒng)計條件來統(tǒng)計數(shù)據(jù)庫中的車站、線路數(shù)據(jù),并返回統(tǒng)計數(shù)據(jù),在統(tǒng)計界面可以按條形圖等圖形方式顯示統(tǒng)計結(jié)果。
(5)后臺數(shù)據(jù)管理:對系統(tǒng)涉及的車站、線路業(yè)務屬性數(shù)據(jù)進行增加、刪除、修改等。
(6)用戶權(quán)限管理:實現(xiàn)用戶信息和角色信息的增加、刪除、修改。不同的用戶只有一個角色,不同的角色具有不同的操作權(quán)限。
圖3 系統(tǒng)功能結(jié)構(gòu)示意圖
地鐵網(wǎng)電子示意圖展示系統(tǒng)建立的目的是使用地理信息系統(tǒng)(GIS)、網(wǎng)絡(luò)(Web)等高新技術(shù),構(gòu)建一個集管理、查詢、統(tǒng)計于一體的地鐵網(wǎng)電子地圖展示系統(tǒng)。用戶通過客戶端瀏覽器訪問地鐵網(wǎng)電子示意圖數(shù)據(jù)時,首先對Web服務器發(fā)出HTTP請求,Web服務器接到請求之后把參數(shù)傳遞給ArcGIS Server,ArcGIS Server再把用戶需求的數(shù)據(jù)傳遞給Web服務器,最終由Web服務器把結(jié)果嵌入HTML頁面中,顯示在客戶端瀏覽器里。系統(tǒng)功能效果如圖4所示。
圖4 地鐵網(wǎng)電子示意圖展示系統(tǒng)功能效果圖
隨著地理信息系統(tǒng)技術(shù)逐漸得到推廣和應用到各行各業(yè),同時互聯(lián)網(wǎng)應用也逐漸普及,本文所提出的基于 ArcGIS API for JavaScript的 WebGIS實現(xiàn)方法以及相關(guān)技術(shù),對于通過因特網(wǎng)實現(xiàn)具有空間特征的信息發(fā)布,以及利用空間數(shù)據(jù)庫引擎連接ArcGIS和關(guān)系型數(shù)據(jù)庫系統(tǒng),進行數(shù)據(jù)管理和系統(tǒng)的擴展等具有很好的參考意義。將來,伴隨著各種技術(shù)的不斷發(fā)展成熟,二維平面圖形的展現(xiàn)將不能滿足用戶的需求,在此基礎(chǔ)上建立基于三維動態(tài)、智能化、大數(shù)據(jù)融合的WebGIS虛擬地鐵環(huán)境系統(tǒng),會給用戶帶來更好的體驗。大數(shù)據(jù)逐漸增加并相互融合、相互調(diào)用,提高系統(tǒng)精度,同時數(shù)據(jù)的處理將由后臺的智能專家系統(tǒng)自動化處理完成,極大地減少人力投入,提高效率。這不僅僅會在地鐵系統(tǒng)管理模式中發(fā)揮良好作用,對其他方面的建設(shè)也具有極大的指導與借鑒作用。