專利名稱:地理信息系統(tǒng)動(dòng)態(tài)圖層實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及地理信息系統(tǒng)中的動(dòng)態(tài)圖層實(shí)現(xiàn)方法。
背景技術(shù):
時(shí)間和空間之間的矛盾無(wú)處不在,在地理信息系統(tǒng)領(lǐng)域更是不會(huì)例外,一方面地理信息系統(tǒng)需要處理大量的空間位置相關(guān)信息;另一方面又要求地理信息系統(tǒng)在實(shí)時(shí)處理速度方面有所突破?,F(xiàn)在的GIS系統(tǒng)針對(duì)這種矛盾有各種解決方案,都可以總結(jié)為空間優(yōu)先解決方案和時(shí)間優(yōu)先解決方案。
空間優(yōu)先方式實(shí)現(xiàn)的最好辦法是直接對(duì)磁盤文件進(jìn)行查詢?cè)L問,不過為了提高系統(tǒng)效率,還是犧牲了一些磁盤空間建立索引和保存冗余數(shù)據(jù),但是使用磁盤空間相對(duì)于內(nèi)存空間更加合適。在MapInfo和ArcView中采用的就是該辦法,圖形操作速度提高可通過建立高效的索引來(lái)實(shí)現(xiàn),但是速度提高有限,不能滿足實(shí)時(shí)性的要求,每次圖形操作都會(huì)出現(xiàn)等待的情況。
時(shí)間優(yōu)先是盡量將數(shù)據(jù)存入內(nèi)存中進(jìn)行,系統(tǒng)直接對(duì)內(nèi)存中數(shù)據(jù)進(jìn)行操作是最快的,這里的問題是如何快速將磁盤上面的數(shù)據(jù)讀入內(nèi)存,這里又會(huì)出現(xiàn)另外的一個(gè)時(shí)空矛盾,采用內(nèi)存文件映射可以提高速度,但是這一速度提高有限,對(duì)于實(shí)時(shí)性要求很強(qiáng)的GIS系統(tǒng),比如實(shí)時(shí)監(jiān)控系統(tǒng)一般都采用時(shí)間優(yōu)先的方法,但這種方式占用內(nèi)存空間較大,并且需要處理磁盤空間數(shù)據(jù)和內(nèi)存空間數(shù)據(jù)快速轉(zhuǎn)移的問題。
發(fā)明內(nèi)容
本發(fā)明的目的是為了克服上述存在的問題和不足,提供一種地理信息系統(tǒng)動(dòng)態(tài)圖層的實(shí)現(xiàn)方法,該方法是一種時(shí)間空間折中的解決方案,既能滿足空間優(yōu)先的要求又能滿足實(shí)時(shí)性的要求。
本發(fā)明將地圖數(shù)據(jù)內(nèi)容進(jìn)行分幅和分層處理,同時(shí)設(shè)置圖層的顯示比例范圍并保存。本發(fā)明將在GIS系統(tǒng)中不對(duì)超出當(dāng)前比例范圍的圖層進(jìn)行處理,同時(shí)系統(tǒng)會(huì)保存每個(gè)圖層的狀態(tài),當(dāng)系統(tǒng)當(dāng)前比例變化或者進(jìn)行圖幅切換時(shí),系統(tǒng)會(huì)動(dòng)態(tài)的打開和關(guān)閉圖層,保證每個(gè)狀態(tài)下的圖形數(shù)據(jù)內(nèi)容占用空間較小,同時(shí)保證每個(gè)狀態(tài)下空間數(shù)據(jù)交換量較小,這樣就實(shí)現(xiàn)了實(shí)時(shí)性強(qiáng)的需求。具體方法如下1、將GIS系統(tǒng)使用的地理空間數(shù)據(jù)進(jìn)行分幅和分層處理,分幅是按照專題和區(qū)域來(lái)進(jìn)行,分層是按照詳細(xì)程度和重要性來(lái)進(jìn)行,概要和重要地物顯示比例小,詳細(xì)和次要地物顯示比例大,同時(shí)將圖層的顯示比例范圍保存下來(lái)。
2、系統(tǒng)打開地圖時(shí),只將滿足顯示比例范圍的圖層從磁盤空間讀入內(nèi)存空間,將已經(jīng)讀入內(nèi)存空間的圖層狀態(tài)設(shè)置為打開,其它圖層設(shè)為關(guān)閉。
3、系統(tǒng)顯示比例變化時(shí)需要進(jìn)行兩個(gè)判斷。首先判斷所有關(guān)閉狀態(tài)的圖層,如果系統(tǒng)當(dāng)前比例在圖層顯示比例范圍里面,將圖層數(shù)據(jù)從磁盤空間讀入內(nèi)存空間,并將圖層設(shè)置為打開;判斷所有打開狀態(tài)的圖層,如果系統(tǒng)當(dāng)前顯示比例不在該圖層的顯示比例范圍內(nèi),將圖層數(shù)據(jù)從內(nèi)存中刪除。
對(duì)地圖數(shù)據(jù)按照地理位置進(jìn)行分幅,按照地物類型進(jìn)行分層,設(shè)置每幅地圖的圖層顯示比例范圍并保存,保證概要和重要地物先顯示,詳細(xì)和次要地物后顯示。
本發(fā)明保證了無(wú)論什么情況下,系統(tǒng)都會(huì)占用較小的內(nèi)存空間,同時(shí),大部分情況下不會(huì)發(fā)生數(shù)據(jù)交換,即使在發(fā)生數(shù)據(jù)交換時(shí),系統(tǒng)也通過分層設(shè)置保證交換量較小,從而保證了圖形操作速度。
圖1地理信息系統(tǒng)時(shí)空關(guān)系圖。
圖2地理信息系統(tǒng)動(dòng)態(tài)圖層實(shí)現(xiàn)流程圖。
具體實(shí)施例方式
下面結(jié)合附圖進(jìn)一步說(shuō)明本發(fā)明。
圖1說(shuō)明了GIS系統(tǒng)在針對(duì)時(shí)空要求的幾種解決方案,本發(fā)明屬于時(shí)間和空間折中的一種解決方案,系統(tǒng)既能處理海量數(shù)據(jù)又能保證實(shí)時(shí)性。本發(fā)明通過分幅和分層處理,將大數(shù)據(jù)量的空間信息分為多塊,然后動(dòng)態(tài)的在磁盤空間和內(nèi)存空間上交換少量數(shù)據(jù),GIS系統(tǒng)每次只對(duì)內(nèi)存空間上面的少量數(shù)據(jù)進(jìn)行處理。
圖2說(shuō)明了本發(fā)明的具體處理流程,首先系統(tǒng)需要將地圖數(shù)據(jù)進(jìn)行分幅和分層處理,同時(shí)設(shè)置每幅地圖初始化顯示圖層標(biāo)志和圖層顯示比例范圍值,范圍值的設(shè)定可以由操作人員根據(jù)實(shí)際需要完成,一般情況下,概要和重要地物先顯示,顯示比例小,詳細(xì)和次要地物后顯示,顯示比例大。
在GIS計(jì)算機(jī)系統(tǒng)啟動(dòng)時(shí),將每幅地圖初始化顯示圖層標(biāo)志為真的圖層從磁盤空間讀入內(nèi)存空間,當(dāng)系統(tǒng)如果每幅地圖的在地圖窗口中的比例不發(fā)生變化,系統(tǒng)只需對(duì)內(nèi)存中的數(shù)據(jù)進(jìn)行處理。
當(dāng)對(duì)某幅地圖進(jìn)行圖形操作引起圖形比例變化時(shí),比如放大和縮小操作,對(duì)該圖幅中所有存在于磁盤空間而內(nèi)存空間中不存在的圖層進(jìn)行判斷,判斷當(dāng)前系統(tǒng)的顯示比例是否在該圖層的最小顯示比例和最大顯示比例之間,如果在,需要將該圖層的數(shù)據(jù)內(nèi)容從磁盤空間讀入內(nèi)存空間,將圖層打開狀態(tài)標(biāo)志設(shè)置為真,如果不在,不用進(jìn)行處理;同時(shí)對(duì)該圖幅中所有存在于內(nèi)存空間的圖層進(jìn)行判斷,判斷當(dāng)前系統(tǒng)的顯示比例是否在該圖層的最小顯示比例和最大顯示比例之間,如果不在,將該圖層的數(shù)據(jù)內(nèi)容從內(nèi)存空間中刪除,將圖層打開狀態(tài)標(biāo)志設(shè)置為假,如果在,不進(jìn)行處理。
當(dāng)系統(tǒng)對(duì)不同的圖幅之間進(jìn)行切換時(shí),系統(tǒng)會(huì)將切換之前圖幅的非初始化圖層內(nèi)容從內(nèi)存空間刪除,在處理大數(shù)據(jù)量地圖時(shí),系統(tǒng)內(nèi)存中始終只保存所有圖幅的初始化圖層數(shù)據(jù)和在當(dāng)前操作圖幅比例范圍里面的該幅地圖的一些圖層。這樣保證了無(wú)論什么情況下,系統(tǒng)都會(huì)占用較小的內(nèi)存空間,同時(shí),大部分情況下不會(huì)發(fā)生數(shù)據(jù)交換,即使在發(fā)生數(shù)據(jù)交換時(shí),系統(tǒng)也通過分層設(shè)置保證交換量較小,從而保證了圖形操作速度。
權(quán)利要求
1.一種地理信息系統(tǒng)動(dòng)態(tài)圖層實(shí)現(xiàn)方法,其特征在于按以下步驟進(jìn)行(1)將GIS系統(tǒng)使用的地理空間數(shù)據(jù)進(jìn)行分幅和分層處理,同時(shí)設(shè)置每幅地圖初始化顯示圖層標(biāo)志和圖層顯示比例范圍值;(2)系統(tǒng)打開地圖時(shí),只將滿足顯示比例范圍的圖層從磁盤空間讀入內(nèi)存空間,將已經(jīng)讀入內(nèi)存空間的圖層狀態(tài)設(shè)置為打開,其它圖層設(shè)為關(guān)閉;(3)系統(tǒng)顯示比例變化時(shí)需要進(jìn)行以個(gè)兩個(gè)判斷,首先判斷所有關(guān)閉狀態(tài)的圖層,如果系統(tǒng)當(dāng)前比例在圖層顯示比例范圍內(nèi),將圖層數(shù)據(jù)從磁盤空間讀入內(nèi)存空間,并將圖層設(shè)置為打開;再判斷所有打開狀態(tài)的圖層,如果系統(tǒng)當(dāng)前顯示比例不在該圖層的顯示比例范圍內(nèi),將圖層數(shù)據(jù)從內(nèi)存中刪除。
2.根據(jù)權(quán)利要求1所述的動(dòng)態(tài)圖層實(shí)現(xiàn)方法,其特征在于對(duì)地圖數(shù)據(jù)按照地理位置進(jìn)行分幅,按照地物類型進(jìn)行分層,設(shè)置每幅地圖的圖層顯示比例范圍并保存,保證概要和重要地物先顯示,詳細(xì)和次要地物后顯示。
全文摘要
本發(fā)明涉及地理信息系統(tǒng)中的動(dòng)態(tài)圖層實(shí)現(xiàn)方法,對(duì)地圖空間數(shù)據(jù)內(nèi)容進(jìn)行分幅和分層處理,同時(shí)設(shè)置每幅地圖的圖層顯示比例范圍并保存。本發(fā)明不對(duì)每幅地圖中超出當(dāng)前比例范圍的圖層進(jìn)行處理,當(dāng)系統(tǒng)當(dāng)前比例變化或者切換圖幅時(shí),系統(tǒng)會(huì)動(dòng)態(tài)的打開和關(guān)閉圖層,保證每個(gè)狀態(tài)下的圖形數(shù)據(jù)內(nèi)容占用空間和空間數(shù)據(jù)交換量都較小。
文檔編號(hào)G06F12/00GK1702631SQ20051001887
公開日2005年11月30日 申請(qǐng)日期2005年6月8日 優(yōu)先權(quán)日2005年6月8日
發(fā)明者周訓(xùn)飛, 吳玲琦, 鄧先禮, 汪新春, 許諾菲 申請(qǐng)人:武漢虹信通信技術(shù)有限責(zé)任公司