別建曉
(武漢市政工程設(shè)計(jì)研究院有限責(zé)任公司,湖北武漢 430015)
清華山維工程文件大小的精簡(jiǎn)方法
別建曉?
(武漢市政工程設(shè)計(jì)研究院有限責(zé)任公司,湖北武漢 430015)
在介紹EPSW平臺(tái)數(shù)據(jù)存儲(chǔ)原理的基礎(chǔ)上,簡(jiǎn)要介紹了對(duì)清華山維圖形文件大小進(jìn)行精簡(jiǎn)的方法和技巧,以便有效地管理和存儲(chǔ)數(shù)據(jù),最大化地避免計(jì)算機(jī)磁盤空間的浪費(fèi)。
模板;表;實(shí)體對(duì)象
不少清華山維用戶在使用EPSW測(cè)繪軟件進(jìn)行數(shù)字化成圖時(shí)可能會(huì)發(fā)現(xiàn)以下問題:
(1)工程文件(mdb格式)通常都比較大,動(dòng)輒幾兆,乃至幾十兆。
(2)工程文件大小與工程規(guī)模的大小不成比例,比如筆者手中有3個(gè)道路工程實(shí)例,500 m長(zhǎng)的工程文件大小為 1.57 MB,2 km長(zhǎng)的工程文件大小為1.75 MB,5 km長(zhǎng)的工程文件大小為1.69 MB。
(3)在調(diào)入AutoCAD數(shù)據(jù)時(shí),文件更大。
(4)在刪除了大量地物數(shù)據(jù)后,文件大小并沒有變小。
文件過大,往往造成在機(jī)器上運(yùn)算時(shí)間長(zhǎng),在文件存儲(chǔ)方面也特別消耗硬盤空間。因此探索該類文件大小的壓縮技術(shù)方法、優(yōu)化存儲(chǔ)方式也日益受到更多用戶的重視。
圖1 GB-500.mdt模板中的表
圖2 實(shí)體對(duì)象在數(shù)據(jù)庫中的存儲(chǔ)實(shí)例
EPSW平臺(tái)采用了數(shù)據(jù)庫技術(shù),在創(chuàng)建新工程時(shí),需要以一個(gè)準(zhǔn)備好的技術(shù)規(guī)則作為依據(jù),以使數(shù)據(jù)全面規(guī)范化,這個(gè)技術(shù)規(guī)則我們稱為模板。模板其實(shí)就是一個(gè)Access數(shù)據(jù)庫,內(nèi)容包括地理數(shù)據(jù)結(jié)構(gòu)表、數(shù)據(jù)分層分色方案、編碼體系及符號(hào)化描述定義、系統(tǒng)環(huán)境用戶化設(shè)置及用戶擴(kuò)展屬性表定義。模板不但是數(shù)據(jù)標(biāo)準(zhǔn)化的有力保證,同時(shí)也體現(xiàn)了生產(chǎn)與技術(shù)相分離的先進(jìn)理念。用Access97打開的模板,如圖1所示,我們可以看到共有53個(gè)表。
一個(gè)新工程建立后,我們會(huì)在工程中加入數(shù)據(jù):如一個(gè)路燈、一個(gè)土坎或一個(gè)道路名稱注記,這些數(shù)據(jù)的存儲(chǔ)都是作為一條記錄存放在工程數(shù)據(jù)庫的數(shù)據(jù)結(jié)構(gòu)表中,它們包括GeoPointTB(點(diǎn)表)→CPointTB_p、Geo-LineTB(線表)→CPointTB_l、GeoAreaTB(面表)→CPointTB_a、MarkNoteTB(注記表)→CPointTB_n,如圖2所示的為數(shù)據(jù)庫中實(shí)體對(duì)象的存儲(chǔ)實(shí)例。對(duì)象ID為22582的房屋,其對(duì)象基本特征存儲(chǔ)在GeoLineTB表中,坐標(biāo)點(diǎn)列存儲(chǔ)在CPointTB_l表中,對(duì)象擴(kuò)展屬性存儲(chǔ)在房屋擴(kuò)展屬性表中,三個(gè)表之間由對(duì)象的ID號(hào)關(guān)聯(lián)。對(duì)象的基本屬性特征通過Code字段從Feature-CodeTB表中獲取,符號(hào)解析的具體描述同樣由Code字段從SymbolScriptTB表中得到相關(guān)定義。
圖3是空間數(shù)據(jù)組織與圖形數(shù)據(jù)庫結(jié)構(gòu)關(guān)系圖,從中可以看到,數(shù)據(jù)的空間特性與屬性信息一體化存儲(chǔ)記錄得清清楚楚。脫開了EPSW環(huán)境,通過數(shù)據(jù)庫訪問,數(shù)據(jù)的信息一樣可以完全得到,有了數(shù)據(jù)庫的支持?jǐn)?shù)據(jù)的管理和生命力也有了重要保證。
圖3 數(shù)據(jù)的組織存儲(chǔ)結(jié)構(gòu)
3.1 工程文件普遍較大
基于模板(GB-500.mdt)新建工程時(shí),相當(dāng)于得到一個(gè)等同于模板的拷貝作為新建的工程數(shù)據(jù)庫,所不同的是讓實(shí)體編碼特征及符號(hào)描述表留在模板中,不管有多少個(gè)作業(yè)組或數(shù)據(jù)工程,當(dāng)數(shù)據(jù)要求有所變化時(shí)只需修改模板中相應(yīng)的定義表,從新打開工程即可實(shí)現(xiàn)數(shù)據(jù)的批量處理或標(biāo)準(zhǔn)化。EPSW平臺(tái)提供的缺省模板大小為1.57 MB(如果用戶對(duì)其進(jìn)行了修改或用戶化設(shè)置,其大小可能會(huì)更大),因此新建的工程中即使沒有任何地物對(duì)象,其大小也為1.57 MB,這相當(dāng)于電話座機(jī)費(fèi)或的士起步價(jià),因此工程文件通常都比較大。
3.2 工程文件大小與實(shí)體對(duì)象的多少有關(guān)
工程文件的大小與工程的長(zhǎng)短沒有直接關(guān)系,而是取決于工程文件中實(shí)體對(duì)象的多少,實(shí)體對(duì)象的多少又與測(cè)圖面積的大小、地形的復(fù)雜程度、繪圖員的作業(yè)習(xí)慣等因素有關(guān)。
在EPSW系統(tǒng)中我們可以在菜單“查看/當(dāng)前對(duì)象統(tǒng)計(jì)”中查到當(dāng)前工程中各類實(shí)體對(duì)象的多少。對(duì)上文提到的2 km長(zhǎng)的工程文件進(jìn)行當(dāng)前對(duì)象統(tǒng)計(jì)可得到以下信息:點(diǎn)對(duì)象有1 627個(gè),線對(duì)象有779個(gè),面對(duì)象有16個(gè),注記有226個(gè),共有2 648個(gè)實(shí)體對(duì)象,如圖4所示。5 km長(zhǎng)的工程文件中點(diǎn)對(duì)象有1 252個(gè),線對(duì)象有682個(gè),面對(duì)象有0個(gè),注記有145個(gè),共有2 079個(gè)實(shí)體對(duì)象,因此2 km長(zhǎng)的工程文件會(huì)比5 km長(zhǎng)的文件要大。
圖4 當(dāng)前對(duì)象統(tǒng)計(jì)
3.3 調(diào)入CAD數(shù)據(jù)
在EPSW系統(tǒng)中繪如下對(duì)象,如圖5所示。經(jīng)當(dāng)前對(duì)象統(tǒng)計(jì),分別有6個(gè)點(diǎn)對(duì)象(路燈)、6個(gè)線對(duì)象(2條坎子、3條路邊、1個(gè)花壇)、1個(gè)面對(duì)象(花壇填充符號(hào))、3個(gè)注記對(duì)象,共16個(gè)實(shí)體對(duì)象。我們把它轉(zhuǎn)為CAD的公共交換數(shù)據(jù)格式,即R12的DXF格式。
圖5 工程樣圖
現(xiàn)在我們?cè)贓PSW系統(tǒng)中新建一工程,將上述DXF數(shù)據(jù)調(diào)入該工程中,為了保證地物符號(hào)能完整無誤地顯示出來,需要在CAD中將圖形全部選中并炸開。此時(shí)我們?cè)贓PS系統(tǒng)中進(jìn)行當(dāng)前對(duì)象統(tǒng)計(jì),系統(tǒng)提示分別有0個(gè)點(diǎn)對(duì)象、310個(gè)線對(duì)象、1 833個(gè)面對(duì)象、11個(gè)注記對(duì)象,共 2 154個(gè)實(shí)體對(duì)象。經(jīng)對(duì)比,我們可以發(fā)現(xiàn),實(shí)體對(duì)象的數(shù)量大大增加了。如果圖形面積較大,地物對(duì)象較多,在調(diào)入EPSW系統(tǒng)后實(shí)體對(duì)象增加得還會(huì)更多。所以調(diào)入AutoCAD數(shù)據(jù)時(shí),工程文件尤其大,有時(shí)甚至難以想象。
3.4 刪除數(shù)據(jù)的屬性
在EPSW系統(tǒng)中刪除了大量地物數(shù)據(jù)后,文件大小并沒有相應(yīng)變小。這是因?yàn)槟切﹦h除的對(duì)象在數(shù)據(jù)庫中仍然存在,只是在EPSW系統(tǒng)中沒顯示罷了。比如在圖5中我們刪除2條坎線后,再用Access97打開該工程文件的GeoLineTB表,我們可以看到如圖6所示的界面。在Mark列中有0和1兩種情況,其中為1的是顯示的對(duì)象,為0的是不顯示的對(duì)象,其中有ID為21的未加固坎。打開CPointTB_l表,可以發(fā)現(xiàn)ID為21的坐標(biāo)點(diǎn)列依然存在。
圖6 刪除對(duì)象后的線表
4.1 利用Access97來精簡(jiǎn)
由圖6可知,刪除對(duì)象后其Mark屬性值變?yōu)?。因此我們可以在GeoLineTB表中將Mark值為0的對(duì)象刪除,同時(shí)在CPointTB_l表中將對(duì)應(yīng)ID號(hào)的坐標(biāo)點(diǎn)列也刪除,這樣就清理了所有的線對(duì)象。采用同樣的辦法在相應(yīng)的表中可以清理所有的點(diǎn)、面、注記等對(duì)象。
采用此方法需要人工去區(qū)分對(duì)象的屬性,刪除坐標(biāo)點(diǎn)列也要對(duì)應(yīng)ID號(hào),刪除不同的對(duì)象要在各自的表中才能進(jìn)行,如果刪除的對(duì)象比較多,需要花費(fèi)大量的時(shí)間和精力,因此在實(shí)際上并不怎么可行。
4.2 利用“數(shù)據(jù)庫清理.exe”來精簡(jiǎn)
其實(shí)清華山維為用戶提供了一個(gè)應(yīng)用小程序“數(shù)據(jù)庫清理.exe”,界面如圖7所示。它就在EPSW系統(tǒng)的安裝目錄下。該程序的高級(jí)選項(xiàng)中有無效數(shù)據(jù)和屬性數(shù)據(jù)之分,無效數(shù)據(jù)又可分為點(diǎn)、線、面、注記等對(duì)象,屬性數(shù)據(jù)即房屋擴(kuò)展屬性、圖廓屬性等內(nèi)容。如果同時(shí)選中這些選項(xiàng),點(diǎn)擊“開始清理”就可以一次性地清理掉所有不需要的數(shù)據(jù)。
圖7 數(shù)據(jù)庫清理程序界面
利用該程序不需要人工干預(yù),可以自動(dòng)清理所有不需要的對(duì)象,還可以同時(shí)清理多個(gè)工程文件,實(shí)現(xiàn)批量清理。
將無效數(shù)據(jù)和屬性數(shù)據(jù)進(jìn)行清理后,可以將清華山維工程文件進(jìn)行有效精簡(jiǎn),從而提高文件處理速度以及減少對(duì)硬盤空間的浪費(fèi)。
[1]黃益明.精簡(jiǎn)CAD工程文件大小的兩種方法[J].城市勘測(cè),2008(6)
[2]北京清華山維新技術(shù)有限公司.EPSW2003電子平板測(cè)圖系統(tǒng)使用說明書.2002
[3]北京清華山維新技術(shù)有限公司.EPS地理信息基礎(chǔ)平臺(tái)使用說明書.2003
[4]武漢山維信息技術(shù)有限公司.清華山維軟件技術(shù)培訓(xùn)講義.2005
The Methods of Reducing Volumes of Sunway Project Files
Bie JianXiao
(Wuhan Municipal Engineering Design&Research Institute Co.,Ltd,Wuhan 430015,China)
Based on the storage principle of EPS data,this paper gives a brief introduction to some methods and techniques of reducing the volumes of files when necessary in the management and storage of sunway project graphics files.This necessary reduction can manage and store data more effectively and avoid the waste of the computer space.
template;sheet;object
1672-8262(2010)03-116-03
P209
B
2009—05—15
別建曉(1975—),男,高級(jí)工程師,主要從事城市測(cè)繪技術(shù)與研究工作。