楊澤運,楊金玲,李秀海,曹先革,霍春玲,梁 欣
(1.黑龍江工程學院 科研處,黑龍江 哈爾濱150050;2.黑龍江工程學院 測繪工程學院,黑龍江 哈爾濱150050)
隨著計算機技術、互聯(lián)網(wǎng)技術、信息技術的不斷發(fā)展,利用Internet在 WWW(萬維網(wǎng))上發(fā)布空間信息,為用戶提供在線的數(shù)據(jù)瀏覽、查詢、分析功能已經(jīng)成為GIS發(fā)展的潮流,Web已經(jīng)成為地圖傳播的理想媒介[1-3]。21世紀將會是網(wǎng)絡地圖時代,網(wǎng)絡地圖也將成為地圖產(chǎn)品的主流。針對于網(wǎng)絡地圖服務,傳統(tǒng)的4D產(chǎn)品遠遠不能滿足大眾在Web時代下的要求,網(wǎng)絡地圖服務正朝著多元化、個性化、實時化、動態(tài)化的方向發(fā)展[2-6]。ArcGIS Server是一個用于構建集中管理、支持多用戶的企業(yè)級GIS應用的平臺,使用ArcGIS Server可以構建Web應用、Web服務以及其它運行在標準的.NET和J2EE Web服務器上的企業(yè)應用,ArcGIS Server的出現(xiàn)為網(wǎng)絡地圖服務提供了一個全新的途徑[7-8]。本文基于ArcGIS Server采用當前流行的RIA技術FLEX,搭建一個網(wǎng)絡地圖服務系統(tǒng),對地理空間數(shù)據(jù)在網(wǎng)絡中的發(fā)布應用進行研究。
網(wǎng)絡地圖服務系統(tǒng)在總體結構上采用三層結構體系:數(shù)據(jù)層、應用邏輯層和應用層,體系結構見圖1。
數(shù)據(jù)層:使用關系型數(shù)據(jù)庫對系統(tǒng)所有數(shù)據(jù)進行管理;
中間層:響應應用層提出的請求,調(diào)用封裝的具體處理模塊進行處理,按照模塊要求對數(shù)據(jù)進行存取;
應用層:直接面向用戶,與用戶進行交互,記錄用戶的操作,向中間層發(fā)出請求[9-10]。
網(wǎng)絡地圖服務系統(tǒng)網(wǎng)絡結構根據(jù)要求設計如圖1所示,將數(shù)據(jù)部署于單獨的數(shù)據(jù)服務器以保證讀取運行速度,應用部署于應用服務器,以滿足用戶操作請求完成功能。通過中心交換機將網(wǎng)絡分為局域網(wǎng)和廣域網(wǎng),局域網(wǎng)用于部門內(nèi)部使用,部署管理系統(tǒng)以保證系統(tǒng)安全,廣域網(wǎng)經(jīng)過防火墻同互聯(lián)網(wǎng)連接,以保證系統(tǒng)面向公眾功能實現(xiàn)及外部系統(tǒng)交互整合。
圖1 系統(tǒng)網(wǎng)絡結構圖
本文以數(shù)字城市規(guī)劃業(yè)務為例實現(xiàn)網(wǎng)絡地圖服務系統(tǒng)的設計。規(guī)劃管理業(yè)務涉及城市基礎測繪、建設工程、建設用地、城市規(guī)劃編制、環(huán)境藝術工程、市政工程的報建審批等,該系統(tǒng)功能結構如圖2所示。
圖2 系統(tǒng)功能結構
基于REST+FLEX技術設計的數(shù)字城市規(guī)劃網(wǎng)絡地圖服務系統(tǒng)的功能包括地圖基本操作、查詢、書簽、空間分析、繪圖、打印等,下面對地圖基本操作、查詢等幾個功能及其代碼實現(xiàn)進行簡單介紹。
地圖基本操作功能包括放大、縮小、漫游、前一視圖、后一視圖、全幅顯示等導航操作。
實現(xiàn)導航功能部分函數(shù)代碼:
查詢功能用于查詢特定要素,本系統(tǒng)采用兩種查詢方式,空間查詢和屬性查詢,查詢后將結果高亮顯示并置于結果視圖,在結果視圖中可對每項查詢結果進行定位,如圖3所示。
圖3 空間與屬性查詢
查詢功能通過QueryTask和Query類實現(xiàn)。在Declaration標簽中聲明一個QueryTask類,實例化一個Query類用于設置查詢參數(shù),Qurey的屬性見表1。
表1 Query屬性表
設置完畢Query之后,調(diào)用QueryTask的execute方法執(zhí)行查詢,查詢結果以FeatureSet形式返回。
空間分析是GIS系統(tǒng)的重要功能,本系統(tǒng)以空間分析中的緩沖區(qū)分析為例結合規(guī)劃業(yè)務實現(xiàn)了道路拓寬功能。在此功能中首先選中一條欲要拓寬的道路,輸入拓寬距離,即緩沖區(qū)距離,然后選取目標圖層,最終建立拓寬后結果顯示在結果視圖中,如圖4所示。
圖4 空間分析結果
采用GeometryService和BufferParameters兩個類實現(xiàn)空間分析的功能。在Declaration標簽中聲明一個GeometryService,對選中線要素即道路要素使用GeometryService的buffer方法建立緩沖區(qū),參數(shù)為BufferParameters。以緩沖區(qū)生成結果對目標圖層通過QueryTask進行空間查詢以得到道路拓寬受到影響的目標。
利用ArcGIS Server可以簡單快速進行服務器端的配置和服務的集中管理,在節(jié)省時間的同時也提供了大量的空間數(shù)據(jù)操作和分析的組件,使面向服務器端的開發(fā)人員能夠結合城市規(guī)劃的業(yè)務需求在服務器端應用ArcObjects包含的所有功能。文中對基于ArcGIS Server的網(wǎng)絡地圖服務系統(tǒng)進行了總體設計、功能設計與實現(xiàn),通過構建城市規(guī)劃的公眾服務實例表明了基于ArcGIS Server來實現(xiàn)網(wǎng)絡地圖服務完全可行。
[1]李琳琳,曹凱濱,管斌,等.基于 ArcGISServer的城市規(guī)劃數(shù)據(jù)網(wǎng)絡發(fā)布的研究[J].北京測繪,2009(2):35-37.
[2]袁懷月,侯澄宇,楊恒.基于ArcGIS Flex API的工廠基礎地理信息共享服務系統(tǒng)設計[J].測繪工程,2011,20(2):61-65,69.
[3]孫啟亮,吳天余,高強,等.基于JSF和 ArcGISServer的WebGIS實現(xiàn)方法研究:在哈爾濱植物園綠化系統(tǒng)中的應用[J].林業(yè)科技情報,2012(3):72-74.
[4]徐永龍.基于Flex和ArcGIS Server的 WGIS實現(xiàn)研究[D].西安:長安大學,2011.
[5]王昊.基于ArcGISServer的動態(tài)電力空間數(shù)據(jù)優(yōu)化顯示[J].測繪與空間地理信息,2014,37(9):158-160.
[6]曹建明,程朋根,王海江,等.一種基于非典型P2P技術的地圖緩存更新方法[J].測繪通報,2011(7):74-76.
[7]俞亮,洪勝.淺析基于Silverlight的 WebGIS客戶端應用[J].浙江測繪,2010(3):26-27.
[8]夏元友,劉棱頒,張進.一種 WebGIS的底層實現(xiàn)方法研究[J].武漢理工大學學報,2011,33(2):148-152.
[9]祝青,向南平.Ajax技術在 WebGIS中的應用與研究[J].測繪工程,2007,16(5):39-41.
[10]欒紹鵬,朱長青.基于Ajax的 WebGIS開發(fā)新模式[J].測繪工程,2006,15(6):30-33.