張廣春,仲偉政
(濟南市勘察測繪研究院,山東 濟南 250013)
Study on the Application of Tile Map Technology Based on ArcGIS Engine
ZHANG Guangchun,ZHONG Weizheng
?
基于ArcGIS Engine組件實現(xiàn)瓦片地圖的應用
張廣春,仲偉政
(濟南市勘察測繪研究院,山東 濟南 250013)
Study on the Application of Tile Map Technology Based on ArcGIS Engine
ZHANG Guangchun,ZHONG Weizheng
摘要:在桌面端,針對瓦片地圖數(shù)據(jù)存儲特點,采用ArcGIS Engine的自定義圖層,實現(xiàn)了瓦片地圖的動態(tài)加載與投影;利用異步訪問技術、線程池技術,實現(xiàn)了服務器瓦片數(shù)據(jù)的訪問和本地緩存;并在濟南高新區(qū)綜合地下管線信息管理系統(tǒng)建設中進行了具體的應用。
關鍵詞:瓦片地圖;ArcGIS Engine;WebGIS
一、引言
瓦片地圖是將配置好的一定坐標范圍的矢量地圖,按照固定的若干比例尺(瓦片級別)和指定圖片尺寸,切成若干行及列的正方形圖片,并以指定的格式保存成圖像文件,按照統(tǒng)一的命名規(guī)則和組織方式進行存儲,形成金字塔模型的地圖圖片靜態(tài)緩存。瓦片地圖結構如圖1所示。目前國內(nèi)對矢量地圖的切圖研究比較多[1-3]。
瓦片地圖切圖規(guī)則參考具體如下[4]:
1) 地圖瓦片分塊的起始點從西經(jīng)180°、北緯90°開始,向東、向南行列遞增。
2) 地圖瓦片分塊大小為256像素×256像素。
3) 地圖瓦片數(shù)據(jù)采用PNG格式。
圖1 瓦片地圖結構
在單機運行或局域網(wǎng)內(nèi)部運行GIS系統(tǒng),采用地圖瓦片技術比較少。但是,隨著GIS技術的推廣,以及天地圖在全國各省市級節(jié)點的建立及應用,基于GIS來實現(xiàn)具體業(yè)務的系統(tǒng)越來越多,如何降低業(yè)務系統(tǒng)中地理信息數(shù)據(jù)采集制作的成本,同時解決數(shù)據(jù)的安全保密及版權等問題,已經(jīng)成為目前亟須解決的問題[5-6]。
在具體的業(yè)務系統(tǒng)應用中,與WebGIS相比,桌面端GIS具有更豐富的功能和強大的分析處理能力。WebGIS盡管可以調(diào)用服務器端上的服務來實現(xiàn)一定的分析功能,但是更加復雜的、專業(yè)性的分析處理,尤其是針對一些大數(shù)據(jù)量的訪問或本身具有保密性質(zhì)的業(yè)務需求應用,還需要在本地機器處理運行。
瓦片地圖數(shù)據(jù)在對公眾使用或應用到具體的業(yè)務過程中時,可以先期進行一些必要的脫密處理,把矢量地圖中一些涉及國家秘密的數(shù)據(jù)進行處理和過濾。另外,瓦片地圖可以采用數(shù)字水印技術[7-9],實現(xiàn)瓦片地圖數(shù)據(jù)版權信息的保護,在地理信息資源共享的同時,對地理信息數(shù)據(jù)的版權進行有效的保護。
把WebGIS的瓦片地圖技術應用到桌面端的GIS系統(tǒng)中,一方面解決了地圖數(shù)據(jù)安全保密問題,另一方面解決了業(yè)務系統(tǒng)只能運行于局域網(wǎng)或單機上導致業(yè)務系統(tǒng)的底圖數(shù)據(jù)無法獲取的問題。因此,基于ArcGIS Engine組件在桌面端采用瓦片地圖技術,可以有效解決地圖數(shù)據(jù)成本和地圖數(shù)據(jù)版權保護的問題,有利于地理信息系統(tǒng)應用的推廣,且對地理信息資源的共享使用起到積極推動作用。
二、基于瓦片地圖數(shù)據(jù)訪問設計
目前,開源社區(qū)CodePlex里的ArcBruTile項目,解決了在ArcMap里面實現(xiàn)OpenStreetMap、Bing、SpatialCloud等在線地圖的瀏覽,但是該開源項目是基于ArcMap設計的,采用的是ArcMap工具菜單的形式。本文在ArcBruTile開源項目的基礎上,采用ArcGIS Engine組件實現(xiàn)了瓦片數(shù)據(jù)在線及離線模式下的訪問加載,同時支持天地圖網(wǎng)站數(shù)據(jù)訪問加載。
ArcGIS Engine中數(shù)據(jù)的加載是以圖層的方式組織的[10],包括矢量數(shù)據(jù)圖層、柵格數(shù)據(jù)圖層等,放到地圖容器MapControl控件中。瓦片地圖數(shù)據(jù)是以PNG或JPG格式保存的柵格圖像,在地圖的繪制過程中可以按照柵格數(shù)據(jù)處理。瓦片大小以像素為單位,沒有具體的空間參照系。但在桌面GIS系統(tǒng)中,必須具有空間參照系才能和其他的矢量數(shù)據(jù)進行疊加顯示。因此瓦片地圖在加載的同時需計算瓦片柵格圖像的空間位置。本文以C#語言設計實現(xiàn)了TileMapLayer 類,該類繼承于ILayer、ILayer Effect等接口。TileMapLayer 類結構如圖2所示。
圖2 TileMapLayer 類結構
定義TileMapHelper類,實現(xiàn)依據(jù)瓦片地圖數(shù)據(jù)配置文件,結合當前地圖訪問的MapControl空間視圖大小,計算當前顯示的地圖瓦片數(shù)據(jù),并從服務器端采用異步多線程方式,緩存所需要的瓦片數(shù)據(jù)。在緩存瓦片數(shù)據(jù)之前,依據(jù)當前瓦片數(shù)據(jù)更新周期設置,更新當前的瓦片數(shù)據(jù),并保存到本地硬盤中。TileMapHelper類定義如圖3所示。
圖3 TileMapHelper 類結構
TileMapLayer 類重寫了ILayer接口的Draw方法,繪制了由TileMapHelper實例返回的當前MapControl窗口大小和地圖圖層的級數(shù)的瓦片數(shù)據(jù),實現(xiàn)了瓦片數(shù)據(jù)的加載和瀏覽。
采用ArcGIS Engine組件訪問流程如圖4所示。
圖4 ArcGIS Engine組件訪問流程
三、濟南高新區(qū)綜合地下管線信息管理系統(tǒng)建設
濟南高新區(qū)綜合地下管線信息管理系統(tǒng)建設要求系統(tǒng)運行在用戶單位的內(nèi)部網(wǎng)絡環(huán)境中,系統(tǒng)設計采用ArcGIS Engine組件、C#開發(fā)語言。系統(tǒng)實現(xiàn)了濟南市瓦片地圖數(shù)據(jù)的離線加載和瀏覽,以及瓦片數(shù)據(jù)的定期更新;并在此基礎之上疊加了高新區(qū)綜合地下管線數(shù)據(jù)和高新區(qū)興趣點(POI)數(shù)據(jù),實現(xiàn)了對整個高新區(qū)綜合地下管線的管理工作,提高了高新區(qū)地下管線管理的信息化水平。
四、結束語
本文采用ArcGIS Engine組件,實現(xiàn)了桌面GIS對濟南天地圖瓦片數(shù)據(jù)的加載和瀏覽,并應用到具體的綜合管線業(yè)務環(huán)境中,同時在系統(tǒng)中加載了興趣點信息,實現(xiàn)了道路、單位和地名的查詢定位。桌面GIS實現(xiàn)瓦片地圖數(shù)據(jù)的運用,降低了業(yè)務系統(tǒng)地理空間數(shù)據(jù)的建設成本;同時可以利用桌面GIS的強大數(shù)據(jù)處理和分析能力,實現(xiàn)用戶的業(yè)務需求,具有較好的應用前景。
參考文獻:
[1]許虎,聶云峰,舒堅.基于中間件的瓦片地圖服務設計與實現(xiàn)[J].地球信息科學學報,2010,12(4):562-567.
[2]王小軍,劉璐.基于ArcGIS Engine進行瓦片式切圖的技術研究[J].測繪與空間地理信息,2010,33(4):49-51.
[3]趙大龍,孫恒宇.地圖切片技術分析與簡單實現(xiàn)[J].測繪與空間地理信息,2010,33(1):116-118.
[4]國家測繪地理信息局.CH/Z 9011-2011 地理信息公共服務平臺電子地圖數(shù)據(jù)規(guī)范[S].北京:測繪出版社,2012.
[5]韋勝.ArcEngine環(huán)境下實現(xiàn)瓦片地圖的訪問與拼接[J].武漢大學學報:信息科學版,2012,37(6):737-740.
[6]黃夢龍.瓦片地圖技術在桌面端GIS中的應用[J].地理空間信息,2011,9(4):149-151.
[7]任娜,朱長青.一種抗拼接的瓦片遙感數(shù)據(jù)水印算法[J].測繪通報,2012(S1):491-493.
[8]曹劉娟,門朝光,孫建國.基于空間特征的二維矢量地圖可逆水印算法原理[J]. 測繪學報, 2010,39(4):422-427.
[9]閔連權.一種魯棒的矢量地圖數(shù)據(jù)的數(shù)字水印[J]. 測繪學報, 2008, 37(2):262-267.
[10]劉仁義,劉南.ArcGIS 開發(fā)寶典-從入門到精通[M].北京:科學出版社,2006:35-37.
引文格式: 張廣春,仲偉政. 基于ArcGIS Engine組件實現(xiàn)瓦片地圖的應用[J].測繪通報,2015(3):115-116.DOI:10.13474/j.cnki.11-2246.2015.0092
作者簡介:張廣春(1977—),男,碩士,工程師,研究方向為地理信息系統(tǒng)應用開發(fā)。E-mail:zgc08@163.com
基金項目:住房和城鄉(xiāng)建設部科學技術項目(2012-K8-17)
收稿日期:2014-02-17
中圖分類號:P208
文獻標識碼:B
文章編號:0494-0911(2015)03-0115-02