【技術實現(xiàn)步驟摘要】
本專利技術涉及一種地圖發(fā)布方法,尤其涉及一種海量柵格瓦塊地圖發(fā)布方法。
技術介紹
Web GIS是Internet技術應用于GIS開發(fā)的地理信息系統(tǒng)。其使用的靜態(tài)背景地圖多采用預先生成柵格瓦塊地圖,然后通過HTTP (HyperText Transfer Protocol,超文本傳輸協(xié)議)的方式發(fā)布。這種方式減少了服務器端動態(tài)生成地片的計算壓力,是目前采用最多的Web GIS技術之一。柵格瓦塊地圖一般的發(fā)布方式是使用工具把矢量地圖按行列切割為大小統(tǒng)一的柵格小圖片并存儲于地圖目錄Root下;然后將這些柵格小圖片拷貝至Web服務器上并發(fā)布出去;客戶端程序根據(jù)當前地圖范圍計算待加載的柵格小圖片的URL(Universal Resour ceLocator,統(tǒng)一資源定位符)路徑,并根據(jù)該URL路徑查找對應柵格小圖片的存儲位置;最后客戶端通過HTTP加載對應的柵格小圖片。目前,柵格瓦塊地圖一般通過IIS軟件進行發(fā)布出去,IIS軟件發(fā)布方式存在以下缺點將矢量地圖切割成海量柵格小圖片,增大了磁盤空間的占有量,此外在柵格小圖片存儲于地圖目錄Root過程中,針對大量相同的圖片(諸如空白圖片)均按照行列分別重復存儲,進一步增大了磁盤空間的占有量;將柵格小圖片拷貝至Web發(fā)布服務器上并發(fā)布出去,由于海量柵格小圖片的數(shù)量較多,需要消耗較長的時間來拷貝數(shù)據(jù);在根據(jù)URL路徑查找對應柵格小圖片的位置時,IIS軟件只能依賴文件系統(tǒng),幾乎每次訪問,都要進行磁盤10,查找效率低。
技術實現(xiàn)思路
本專利技術旨在至少解決現(xiàn)有技術中存在的技術問題,特別創(chuàng)新地提出了一種海量柵格瓦塊地圖發(fā)布方法,將海量柵格小 ...
【技術保護點】
一種海量柵格瓦塊地圖發(fā)布方法,其特征在于包括以下步驟:S1、將矢量地圖切割成多個柵格小圖片并存儲于地圖目錄Root中,遍歷該地圖目錄Root中的柵格小圖片并打包至數(shù)據(jù)文件中;S2、建立索引文件,該索引文件用于表示URL路徑與數(shù)據(jù)文件中對應柵格小圖片存儲位置的索引關系;S3、根據(jù)客戶端請求的URL路徑以及索引文件,在數(shù)據(jù)文件中查找與該URL路徑對應的柵格小圖片的存儲位置,讀取該柵格小圖片并發(fā)送給客戶端。
【技術特征摘要】
1.一種海量柵格瓦塊地圖發(fā)布方法,其特征在于包括以下步驟 51、將矢量地圖切割成多個柵格小圖片并存儲于地圖目錄Root中,遍歷該地圖目錄Root中的柵格小圖片并打包至數(shù)據(jù)文件中; 52、建立索引文件,該索引文件用于表示URL路徑與數(shù)據(jù)文件中對應柵格小圖片存儲位置的索引關系; 53、根據(jù)客戶端請求的URL路徑以及索引文件,在數(shù)據(jù)文件中查找與該URL路徑對應的柵格小圖片的存儲位置,讀取該柵格小圖片并發(fā)送給客戶端。2.根據(jù)權利要求I所述的海量柵格瓦塊地圖發(fā)布方法,其特征在于所述步驟SI由以下步驟組成 510、將矢量地圖切割成多個柵格小圖片并存儲于地圖目錄Root中,針對大量內容相同的柵格小圖片設置模板文件T= (path, size, context, fno, offset),其中T. path表示模板文件T的存儲路徑,T. size表示模板文件T的大小,T. context表示模板文件T的內容,T. fno表示模板文件T所在數(shù)據(jù)文件Fi的編號,T. offset表示模板文件T在數(shù)據(jù)文件Fi中的偏移,初始狀態(tài)下T. fno=T. Offset=O且i為整數(shù); 511、設置i=0,打開數(shù)據(jù)文件Fi,讀取模板文件T并將該模板文件T=(path,size,context, fno, offset)寫入數(shù)據(jù)文件Fi中,保存該模板文件T在數(shù)據(jù)文件Fi中的偏移T. offset 且 T. fno=i ; 512、深度遍歷該地圖目錄Root,依次讀取該地圖目錄Root下各柵格小圖片LF=(path,size, context, fno, offset),其中LF. path表示柵格小圖片LF的存儲路徑,LF. size表示柵格小圖片LF的大小,LF. context表示柵格小圖片LF的內容,LF. fno表示柵格小圖片LF所在數(shù)據(jù)文件Fi的編號,LF. offset表示柵格小圖片LF在數(shù)據(jù)文件Fi中的偏移,在初始狀態(tài)下 LF. fno=LF. offset=0 ; 513、將各柵格小圖片LF與該模板文件T進行比較 在LF. size=T. size且LF. context=T. context時表不該柵格小圖片LF與模板文件T相同,不再將該柵格小圖片LF重復寫入該數(shù)據(jù)文件Fi中,并且LF. Offset=T. offset,LF. fno=T. fno=i ; 否則表示該柵格小圖片LF與模板文件T不相同,進一步判斷數(shù)據(jù)文件Fi是否超過其最大容量值MaxSize :如果判定該數(shù)據(jù)文件Fi未超過其最大容量值MaxSize,則將LF. context存放至當前的數(shù)據(jù)文件Fi中,保存該柵格小圖片LF在該數(shù)據(jù)文件Fi中的偏移LF. offset 且 LF. fno=i ; 如果判定該數(shù)據(jù)文件Fi超過其最大容量值MaxSize,則關閉當前的數(shù)據(jù)文件Fi,i=i+l,打開下一數(shù)據(jù)文件Fi,將LF. context存放至下一數(shù)據(jù)文件Fi中,并且保存該柵格小圖片LF在該數(shù)據(jù)文件Fi中的偏移LF. offset且LF. fno=i+l ; 514、判斷地圖目錄Root下是否還存在尚未被讀取的柵格小圖片,如果存在則重復執(zhí)行步驟S12 S13,否則關閉當前的數(shù)據(jù)文件Fi以及中間文件Fdb。3.根據(jù)權利要求2所述的海量柵格瓦塊地圖發(fā)布方法,其特征在于在所述步驟S12中深度遍歷該地圖目錄Root時,按照名稱大小順序依次讀取各柵格小圖片。4.根據(jù)權利要求I所述的海量柵格瓦塊地圖發(fā)布方法,其特征在于所述步驟S2由以下步驟組成S20、初始化路徑哈希表Hash_Path、文件名哈希表Hash_Name和數(shù)組FArray=O,其中該路徑哈希表HasH_Path中路徑的標號Path_ID初始化為O...
【專利技術屬性】
技術研發(fā)人員:向澤君,朱圣,羅再謙,龍川,饒鳴,汪明,楊元,李波,羅勇,
申請(專利權)人:重慶市勘測院,重慶數(shù)字城市科技有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。