秦麗娟
摘 要:為提高地質(zhì)資料信息化服務(wù)水平,豐富網(wǎng)絡(luò)服務(wù)方式,通過圖形化方式在線檢索、展示和利用地質(zhì)資料,采用基于OpenLayers的技術(shù)開發(fā)了湖北省地質(zhì)資料在線檢索可視化服務(wù)系統(tǒng)。
關(guān)鍵詞:Web GIS;OpenLayers;地質(zhì)資料在線服務(wù)
中圖分類號:P628 文獻標志碼:A 文章編號:2095-2945(2017)36-0157-02
前言
目前湖北省國土資源資料館目前館藏成果地質(zhì)資料8045檔,共計19萬余件,按照國家大數(shù)據(jù)發(fā)展戰(zhàn)略和“互聯(lián)網(wǎng)+”行動計劃要求,地質(zhì)信息服務(wù)要面向社會大眾,多元化創(chuàng)新服務(wù)方式,特別是在網(wǎng)絡(luò)服務(wù)模式上要以用戶需求為出發(fā)點進行創(chuàng)新和深化。由于地質(zhì)資料數(shù)據(jù)是具有空間位置信息和空間屬性的數(shù)據(jù),傳統(tǒng)的列表瀏覽和關(guān)鍵字查詢的檢索方式無法展示地質(zhì)資料數(shù)據(jù)的空間特征與屬性。為更好的提供基礎(chǔ)地質(zhì)信息服務(wù),進行了地質(zhì)資料可視化查詢系統(tǒng)的開發(fā)研究工作,系統(tǒng)主要面對地質(zhì)行業(yè)工作人員和社會公眾,向用戶提供更加直觀的可視化展示與查詢服務(wù)。
1 系統(tǒng)總體架構(gòu)
本系統(tǒng)采用基于B/S模式的三層架構(gòu),即界面層(User Interface layer)、業(yè)務(wù)邏輯層(Business Logic Layer)、數(shù)據(jù)訪問層(Data access layer)。三層架構(gòu)中業(yè)務(wù)邏輯層響應(yīng)界面層的用戶請求,執(zhí)行邏輯任務(wù)并從數(shù)據(jù)訪問層獲得數(shù)據(jù),將處理后的數(shù)據(jù)按照一定的格式發(fā)送給界面層。三層架構(gòu)的優(yōu)點是:在犧牲一定性能的前提下,項目結(jié)構(gòu)更清楚,分工更明確,提高了系統(tǒng)的安全性,既便于團隊協(xié)作開發(fā),也為系統(tǒng)后期維護和擴展打下良好基礎(chǔ)。
界面層,采用OpenLayers框架實現(xiàn)多源地圖數(shù)據(jù)疊加顯示,采用AJAX技術(shù)與業(yè)務(wù)邏輯層之間進行數(shù)據(jù)交互,實現(xiàn)客戶端瀏覽器頁面的無刷新更新,優(yōu)化用戶體驗。
業(yè)務(wù)邏輯層采用ASP.NET提供的ashx一般處理程序向界面層提供數(shù)據(jù)服務(wù),采用MapGIS IGServer平臺架設(shè)地圖服務(wù)器,發(fā)布MAPGIS格式的地質(zhì)專業(yè)地圖服務(wù)。
數(shù)據(jù)訪問層通過微軟提供的OLEDB接口訪問SQL Server數(shù)據(jù)庫存儲的地質(zhì)資料目錄數(shù)據(jù),向業(yè)務(wù)邏輯層提供數(shù)據(jù)。
2 關(guān)鍵技術(shù)
2.1 通過OpenLayers實現(xiàn)多源地圖數(shù)據(jù)疊加
OpenLayers是輕量級的實現(xiàn)交互式Web地圖的開源JavaScript類庫,用于在Web GIS客戶端上實現(xiàn)標準格式發(fā)布的地圖數(shù)據(jù)訪問與用戶交互。OpenLayers支持Open GIS協(xié)會制定的WMS(Web Mapping Service)和WFS(Web Feature Service)等網(wǎng)絡(luò)服務(wù)規(guī)范,可以通過遠程服務(wù)的方式,將以O(shè)GC服務(wù)形式發(fā)布的各類地圖數(shù)據(jù)加載到基于瀏覽器的客戶端顯示。OpenLayers支持OGC標準地圖服務(wù)、多種數(shù)據(jù)格式、多種網(wǎng)絡(luò)地圖。既支持各種瓦片地圖,例如OSM、MapBox、Bing、Stamen、Google maps、百度地圖、天地圖等等,也支持各種矢量格式地圖,比如KML、GML、GeoJSON、TopoJSON等等。
本系統(tǒng)通過OpenLayers框架實現(xiàn)了多源地圖數(shù)據(jù)的疊加顯示:加載國家測繪地理信息局發(fā)布的天地圖網(wǎng)絡(luò)地圖服務(wù)作為底圖圖層,加載通過MapGIS IGServer發(fā)布的MAPGIS格式的地質(zhì)專業(yè)地圖服務(wù)作為疊加分析圖層,加載SQL Server數(shù)據(jù)庫存儲的地質(zhì)資料空間位置信息數(shù)據(jù)生成位于最上層的標注點圖層。OpenLayers向多來源、多格式、多比例尺的地圖數(shù)據(jù)分別進行請求和傳輸,最后在客戶端瀏覽器頁面上完成全部圖層的渲染和疊加。
2.2 SQL Server數(shù)據(jù)庫對空間數(shù)據(jù)的支持以及空間運算的具體實現(xiàn)方法
湖北省國土資源資料館地質(zhì)資料數(shù)據(jù)目前采用SQL Server數(shù)據(jù)庫存儲,每檔地質(zhì)資料的拐點坐標使用符合WKT(well-known text)格式的文本字段類型來存儲。SQL Server作為主流的關(guān)系型數(shù)據(jù)庫系統(tǒng),為滿足空間數(shù)據(jù)應(yīng)用的需求,從2008版本開始,新增兩個用于支持空間數(shù)據(jù)存儲與運算的字段類型:幾何平面向量空間類型(geometry)和大地向量空間類型(geography),同時提供了相關(guān)的空間運算的方法。
SQL Server(2008及以上版本)提供了方法geography:STGeomFromText實現(xiàn)由WKT文本格式向geography格式數(shù)據(jù)類型的轉(zhuǎn)換。SQL Server(2012及以上版本)提供了STContains方法判斷geography對象之間是否存在包含關(guān)系?;谏鲜龇椒ū鞠到y(tǒng)實現(xiàn)了地質(zhì)資料信息的空間檢索功能,用戶在瀏覽器的地圖上自由繪制任意空間范圍,系統(tǒng)將該范圍的坐標拐點WKT格式字符串傳遞到數(shù)據(jù)庫,從數(shù)據(jù)庫中篩選并顯示包含在該范圍內(nèi)的地質(zhì)資料信息。
2.3 AJAX技術(shù)
Web GIS應(yīng)用屬于大流量應(yīng)用,因此要求不能頻繁的刷新重載整個瀏覽器頁面,因此本系統(tǒng)采用AJAX技術(shù)來實現(xiàn)服務(wù)器端與客戶端的數(shù)據(jù)交互。AJAX技術(shù)在服務(wù)器端與客戶端之間增加一個AJAX引擎,客戶端的請求先發(fā)送到AJAX引擎,然后由AJAX引擎向服務(wù)器端發(fā)起請求,服務(wù)器端只返回必要的數(shù)據(jù),而不是整個頁面,AJAX引擎根據(jù)返回的數(shù)據(jù)局部更新客戶端頁面,實現(xiàn)了瀏覽器的無刷新更新。
2.4 使用JSON格式進行數(shù)據(jù)交換
JSON作為一種輕量級的文本方式數(shù)據(jù)交換格式,具有通用性好,格式簡單,便于傳輸?shù)戎T多優(yōu)點,而且OpenLayers和AJAX和都對JSON格式數(shù)據(jù)有良好的支持,因此本系統(tǒng)的服務(wù)器端與客戶端之間使用JSON格式進行數(shù)據(jù)交換。
2.5 通過MapGIS IGServer發(fā)布地圖服務(wù)
因為已經(jīng)擁有比較豐富的MAPGIS格式地圖成果數(shù)據(jù)資源,所以本系統(tǒng)采用MapGIS IGServer平臺作為地圖服務(wù)器發(fā)布MAPGIS格式地圖數(shù)據(jù)服務(wù),可以充分利用已有的地圖與數(shù)據(jù)庫資源,縮短開發(fā)周期,減少圖件處理的工作量。MapGIS IGServer支持MAPGIS6.7和MAPGIS10格式的圖件直接發(fā)布為地圖服務(wù)。MapGIS IGServer可以將MAPGIS格式文件發(fā)布為MAPGIS格式的矢量地圖服務(wù)和瓦片地圖服務(wù),還可以發(fā)布為符合OGC標準的WMS和WFS等規(guī)范的地圖服務(wù)。
3 系統(tǒng)實現(xiàn)
系統(tǒng)客戶端界面如圖1所示,瀏覽器窗口分為地圖顯示模塊和地圖查詢模塊,右邊的地圖顯示模塊提供了地圖的顯示、縮放、平移、復位、切換底圖和疊加地圖等基礎(chǔ)功能。左邊的地圖查詢模塊既提供了傳統(tǒng)的基于各類檢索條件的字符串組合檢索的方式,也提供了基于空間位置信息的查詢方式。用戶可以在當前地圖顯示窗口范圍內(nèi)查詢,也可以在地圖上自由繪制一個封閉區(qū)域范圍查詢。查詢的結(jié)果既以傳統(tǒng)列表的形式展示于地圖查詢模塊,同時也以標注點的形式直接標記在地圖上,點擊標注點展開資料詳細信息。
4 結(jié)束語
本文通過對基于OpenLayers的地質(zhì)資料在線檢索可視化查詢系統(tǒng)的研究,實現(xiàn)了地質(zhì)資料的檢索展示從文本查詢向圖形化查詢展示的進步,提供了準確,高效,形式豐富直觀的地質(zhì)資料在線查詢功能,一定程度上提升了地質(zhì)信息化服務(wù)水平,向行業(yè)用戶和社會公眾提供了更好的基礎(chǔ)地質(zhì)信息服務(wù)。
參考文獻:
[1]楊鵬,鄒時林.基于OpenLayers的Web GIS客戶端的研發(fā)[J].測繪與空間地理信息,2012,35(3):131-133.
[2]李新慶,等.OpenLayers在寧夏區(qū)域自動氣象站顯示系統(tǒng)中的應(yīng)用與研究[J].寧夏工程技術(shù),2015(06):14-2.
[3]吳信才.MapGIS IGServer原理與方法[M].電子工業(yè)出版社,2012.
[4]黃露.基于MapGIS IGServer的地質(zhì)災(zāi)害氣象預警預報系統(tǒng)的研究與應(yīng)用[A].第十屆全國數(shù)學地質(zhì)與地學信息學術(shù)研討會論文集[C].
2011.endprint