韋廖軍,王海英,劉容
(南寧市勘測院,廣西 南寧 530022)
隨著Internet應用的迅速普及和技術的日益發(fā)展以及GIS日趨強烈的社會化需求,基于網(wǎng)絡的地圖服務成為一種必然,也成為目前GIS發(fā)展的最重要的方向之一。國內(nèi)外公司先后推出了自己的網(wǎng)絡GIS開發(fā)組件,ArcIMS便是其中之一。作為可伸縮的網(wǎng)絡地圖服務器軟件,ArcIMS被廣泛地用于向大量網(wǎng)絡用戶發(fā)布網(wǎng)絡GIS地圖數(shù)據(jù)和元數(shù)據(jù)。
隨著航道事業(yè)和測繪事業(yè)的快速發(fā)展,在保證網(wǎng)絡訪問安全的前提下,建立航道平高控制網(wǎng)數(shù)據(jù)庫管理系統(tǒng),以先進的管理手段代替舊的文字資料查閱與使用方式,更好地滿足成果管理和成果應用的需求,為航道管理和維護提供及時、科學、深層次的服務。
本文所構建的管理系統(tǒng),基于ArcIMS的三層客戶端/服務器結構,用Javascript語言進行開發(fā)。系統(tǒng)架構可以分為三個層次,即客戶端、服務器端、數(shù)據(jù)庫,如圖1所示。
圖1 系統(tǒng)體系結構
作為廣域或局域網(wǎng)內(nèi)的客戶端或用戶終端,它是直接或間接與服務器相連的計算機或應用程序,通過HTTP或TCP/IP協(xié)議與服務器建立通訊。
ArcIMS提供了4種客戶端瀏覽器或模板,本系統(tǒng)采用的客戶端瀏覽器為 HTML Viewer,主要考慮到HTML Viewer不需要要素數(shù)據(jù)流和數(shù)據(jù)集成,即其對網(wǎng)絡傳輸性能要求不高,還可以通過HTML、Javascript語言對其進行定制。
服務器端包含兩部分,空間服務器和應用服務器。客戶端通過ArcIMS連接器與應用服務器連接,應用服務器請求的數(shù)據(jù)從空間數(shù)據(jù)服務器中獲得;空間數(shù)據(jù)服務器是整個ArcIMS的核心,它處理請求的地圖數(shù)據(jù)和相關信息。各組成部分依賴TCP/IP協(xié)議通訊,不僅僅是當它們運行在不同的計算機上時是這樣,即使其中的多個部分運行在同一臺計算機上時依然如此,彼此之間的通訊是通過ArcXML格式傳遞的。ArcXML是對XML的一個GIS擴展,ArcXML也提供易于使用、強大的方式去定制ArcIMS應用。
系統(tǒng)中所涉及的數(shù)據(jù),包括空間數(shù)據(jù)和屬性數(shù)據(jù),皆存儲在Oracle數(shù)據(jù)庫中??臻g數(shù)據(jù)和屬性數(shù)據(jù)點之記信息表以公共字段“點號”(DH)進行關聯(lián),并設“點號”字段為點之記信息表的主鍵。
本系統(tǒng)數(shù)據(jù)庫包括空間數(shù)據(jù)和屬性數(shù)據(jù)兩方面內(nèi)容,空間數(shù)據(jù)主要包括控制點的位置信息,屬性數(shù)據(jù)主要包括控制點的點之記、委托書、圖片、環(huán)視圖等。以GPS-B級控制點為例,各相關信息存在如下邏輯關系:
以GPS-B級控制點為例,描述其空間數(shù)據(jù)和屬性數(shù)據(jù)中的點之記信息的表結構設計,如表1、表2所示。
GPS-B級控制點空間數(shù)據(jù)表結構設計 表1
GPS-B級控制點點之記表結構設計 表2
航道平高控制網(wǎng)數(shù)據(jù)庫管理系統(tǒng)以網(wǎng)絡為管理平臺發(fā)布,既具有直觀的圖形化操作平臺,又具有與數(shù)據(jù)庫之間的良好交互能力。ArcIMS已經(jīng)為用戶提供了基本的地圖發(fā)布平臺,完全能滿足項目需要,本文把空間數(shù)據(jù)與屬性數(shù)據(jù)的交互作為重點討論。
為了實現(xiàn)空間數(shù)據(jù)到屬性數(shù)據(jù)的訪問,首先要得到可查詢的圖層,通過點選獲得符合要求的空間數(shù)據(jù),然后利用DH字段與屬性數(shù)據(jù)庫進行關聯(lián),把具體某個空間數(shù)據(jù)的屬性信息顯示在網(wǎng)頁上。通過ArcIMS定制的網(wǎng)絡發(fā)布系統(tǒng),已經(jīng)實現(xiàn)了對地圖上空間數(shù)據(jù)的點選、框選和緩沖選擇,二次開發(fā)時,僅需在原有功能基礎上,將具體某個空間數(shù)據(jù)的屬性數(shù)據(jù)以彈出網(wǎng)頁的形式顯示。修改后的代碼如下:
用戶根據(jù)需求,設置查詢條件篩選點之記,再查看某個點之記的詳細屬性信息,并能夠?qū)⑵滹@示在地圖中心位置。要實現(xiàn)此功能,同樣需要針對可訪問的圖層,設置查詢條件,得到符合條件的空間數(shù)據(jù),然后對地圖進行相應的放大、平移操作。具體實現(xiàn)方法需參考ArcIMS的例子“Parcels”。修改后的代碼如下:
(1)建立航道平高控制網(wǎng)數(shù)據(jù)庫管理系統(tǒng),保持其成果信息的現(xiàn)勢性和技術先進性,實現(xiàn)航道平高控制網(wǎng)數(shù)據(jù)長期、完整、可靠的保存和更新維護管理,是一項保持航道測繪事業(yè)可持續(xù)發(fā)展的基礎性工作;
(2)系統(tǒng)采用B/S模式進行開發(fā),客戶端直接用瀏覽器就可以登陸和操作系統(tǒng),減少了系統(tǒng)管理員的維護工作,也方便了用戶的使用;
(3)系統(tǒng)開發(fā)主要是利用了ArcIMS自身的Design建立的網(wǎng)站源碼,大大節(jié)省了開發(fā)周期和開發(fā)成本,再綜合應用Javascript、html和C#等開發(fā)語言,建設完成了本系統(tǒng);
(4)該系統(tǒng)的數(shù)據(jù)庫有空間數(shù)據(jù)庫和屬性數(shù)據(jù)庫兩部分,本系統(tǒng)采用ArcIMS為基礎,能方便、快捷、實時的實現(xiàn)空間數(shù)據(jù)與屬性數(shù)據(jù)的交互。
[1]http://www.esri.com.
[2]ArcIMS 9.2 Help.
[3]馬明,楊永國,鄧彩群.基于ArcIMS的城市小區(qū)信息發(fā)布系統(tǒng)的設計與實現(xiàn)[J].國土資源信息化,2008(5):20~22、34
[4]尚穎娟,張佐幫.基于ArcIMS和JSP的WebGIS設計與實現(xiàn).地理空間信息,2006,4(1):43~45
[5]吳曉明,崔曉臨,楊信廷等.ArcGIS Server平臺下空間數(shù)據(jù)與屬性數(shù)據(jù)的交互.測繪通報,2009(10):53~55