陳瑞磊
摘要:在傳統(tǒng)生產(chǎn)實(shí)踐中,地形圖接邊的方式為逐幅修改,但這種方式的效率非常低下,修改也很難徹底。為此,應(yīng)該設(shè)計(jì)一個(gè)適宜的技術(shù)方案,以實(shí)現(xiàn)地形圖圖元與圖號(hào)的自動(dòng)匹配,實(shí)現(xiàn)多幅地形圖合并后的同步修改、自動(dòng)分割、自動(dòng)輸出,從而實(shí)現(xiàn)地形圖的整體接邊。
關(guān)鍵詞: 地形圖;整體接邊技術(shù);VBA
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)04-0801-02
為便于生產(chǎn)、使用和管理,目前的大比例尺地形圖一般采用網(wǎng)格化形式分幅存儲(chǔ),一般可以選擇1:500、1:1000或1:2000比例尺來(lái)建立地形圖圖庫(kù)。網(wǎng)格化管理的優(yōu)點(diǎn)在于能夠化整為零,分片處理,多點(diǎn)更新,從而提高效率。但是在生產(chǎn)階段、更新維護(hù)階段,地形圖圖幅之間的接邊檢查工作卻比較繁瑣。如果1幅圖接邊的工作量按照打開(kāi)1次圖和插入4幅圖來(lái)計(jì)算的話(huà),那么1平方公里16幅1/500地形圖的接邊工作量就是打開(kāi)16次圖和插入64幅圖。而且,每條圖幅邊的接邊工作需進(jìn)行兩次,第二次重復(fù)第一次的內(nèi)容。所以,地形圖圖幅是否接好邊一直是生產(chǎn)階段的難點(diǎn),也是檢查工作的重點(diǎn)。
目前,借助接邊檢查軟件可以發(fā)現(xiàn)很多接邊問(wèn)題并且能夠自動(dòng)處理少量涉及屬性、顏色等的接邊問(wèn)題,但大量的接邊問(wèn)題還需要通過(guò)人工干預(yù)、主觀判斷來(lái)加以修改。在傳統(tǒng)生產(chǎn)實(shí)踐中,地形圖接邊的方式為逐幅修改,但這種方式的效率非常低下,修改也很難徹底。為此,應(yīng)該設(shè)計(jì)一個(gè)適宜的技術(shù)方案,實(shí)現(xiàn)地形圖圖幅外地物地貌圖元和圖框信息圖元的圖號(hào)匹配,實(shí)現(xiàn)多幅地形圖合并后的同步修改、自動(dòng)分割、自動(dòng)輸出,從而實(shí)現(xiàn)地形圖的整體接邊。
1 技術(shù)方案
多幅地形圖合并成總圖后,能否按照原先單幅地形圖的歸屬進(jìn)行總圖分割是關(guān)鍵。通常的做法是單幅地形圖預(yù)處理,所有圖元的擴(kuò)展數(shù)據(jù)添加圖號(hào)編碼,這樣就可以解決按圖號(hào)分割的難題。但是,這種方法的局限性在于,接邊修改時(shí)所有的圖元不可以在圖幅之間復(fù)制、移動(dòng),否則導(dǎo)致錯(cuò)亂。
通過(guò)對(duì)單幅地形圖圖元構(gòu)成的分析,可以發(fā)現(xiàn)以下規(guī)律:
1)圖框信息單獨(dú)放置在一個(gè)圖層,圖框信息跨越圖幅且大部分信息設(shè)置在圖幅外;
2)絕大部分地形數(shù)據(jù)圖元集中在圖幅內(nèi);
3)可能有少量地形數(shù)據(jù)圖元跨越圖幅或在圖幅外側(cè)。
基于以上規(guī)律,可以分別設(shè)計(jì)特征編碼以作標(biāo)識(shí):
1)圖框信息,必須強(qiáng)制填寫(xiě)圖號(hào)位置編碼,接邊修改時(shí)絕不可以復(fù)制、移動(dòng),一旦復(fù)制、移動(dòng),分割輸出時(shí)將統(tǒng)計(jì)圖元數(shù)量,檢索圖元位置,作適當(dāng)提示;
2)完全落入圖幅內(nèi)的地形數(shù)據(jù)圖元,必須強(qiáng)制清除圖號(hào)位置編碼,接邊修改時(shí)可以自由復(fù)制、移動(dòng);
3)跨越圖幅或落在圖幅外的地形數(shù)據(jù)圖元,必須強(qiáng)制添加圖號(hào)位置編碼,接邊修改時(shí)不可以復(fù)制,圖元一旦復(fù)制、移動(dòng),分割輸出時(shí)作適當(dāng)提示。
在接邊修改的基礎(chǔ)上進(jìn)行分割時(shí),分割過(guò)程可以分成三步:
1)檢索總圖所有圖框信息圖元,按圖號(hào)編碼分別建立對(duì)應(yīng)地形圖圖號(hào)信息文件,文件存放當(dāng)前總圖文件里的對(duì)應(yīng)圖號(hào)的圖框圖元序號(hào)。若發(fā)現(xiàn)實(shí)際位置與位置編碼不符或者圖框圖元無(wú)圖號(hào)信息,則指向該圖元提示無(wú)法輸出。
2)檢索所有地形數(shù)據(jù)圖元,分別按以下情形處理:
① 未跨越圖幅、無(wú)圖號(hào)位置編碼信息的圖元,按圖元實(shí)際位置計(jì)算圖號(hào)再歸類(lèi)至對(duì)應(yīng)地形圖圖號(hào)信息文件;
② 未跨越圖幅、有圖號(hào)位置編碼信息的圖元,比對(duì)實(shí)際位置與位置編碼的一致性,一致時(shí)按圖號(hào)編碼歸類(lèi)至對(duì)應(yīng)地形圖圖號(hào)信息文件,不一致時(shí)按實(shí)際位置計(jì)算圖號(hào)再歸類(lèi)至對(duì)應(yīng)地形圖圖號(hào)信息文件;
③ 已跨越圖幅、無(wú)圖號(hào)位置編碼信息的圖元,指向該圖元提示無(wú)法輸出;
④ 已跨越圖幅、有圖號(hào)位置編碼信息的圖元,比對(duì)實(shí)際位置與位置編碼的一致性,一致時(shí)按圖號(hào)編碼歸類(lèi)至對(duì)應(yīng)地形圖圖號(hào)信息文件,不一致時(shí)按實(shí)際位置計(jì)算圖號(hào)再歸類(lèi)至對(duì)應(yīng)地形圖圖號(hào)信息文件;
⑤ 經(jīng)以上4種情形過(guò)濾后的圖元,計(jì)算其實(shí)際位置的圖號(hào),有對(duì)應(yīng)地形圖圖號(hào)信息文件的直接輸出,否則指向該圖元提示無(wú)法輸出;
3)逐一讀取地形圖圖號(hào)信息文件,逐一輸出對(duì)應(yīng)地形圖。
2 技術(shù)實(shí)踐
利用VBA FOR AutoCAD編寫(xiě)該程序,主要通過(guò)兩個(gè)功能模塊實(shí)現(xiàn):
1)單幅地形圖預(yù)處理;2)總圖按地形圖分割輸出。
在具體實(shí)踐時(shí),主要有兩個(gè)技術(shù)難點(diǎn):
1)單幅地形圖預(yù)處理時(shí),如何準(zhǔn)確判斷地形數(shù)據(jù)圖元是否需要添加編碼?
地形圖經(jīng)過(guò)各道工序生產(chǎn)人員的編輯、處理,通過(guò)質(zhì)量檢查軟件的檢查、過(guò)濾、修改,其數(shù)據(jù)已經(jīng)比較規(guī)范、有序,但復(fù)雜性、多樣性仍可想而知。譬如,文本的對(duì)其方式就有15種之多,這就導(dǎo)致也許文本的整體在圖幅內(nèi),但定義點(diǎn)在圖幅外,或者反之;又譬如,塊的定義點(diǎn)也千變?nèi)f化,電力井在中心,紀(jì)念碑在底部,電力線(xiàn)在沿線(xiàn)端點(diǎn)偏移半個(gè)桿位等等,這就導(dǎo)致大量塊符號(hào)壓蓋圖幅邊。所以,單純從圖元的位置信息來(lái)判斷可能導(dǎo)致大量誤判情況發(fā)生,也不利于以后總圖分割輸出的運(yùn)行速度。
因此,按照所見(jiàn)即所得的原則,考慮提取圖元的外輪廓坐標(biāo)取其中數(shù)計(jì)算圖號(hào),若與當(dāng)前地形圖圖號(hào)不一致則強(qiáng)制添加圖號(hào)編碼和位置編碼,一致則強(qiáng)制清楚圖號(hào)編碼和位置編碼。同時(shí),若圖元外輪廓超越圖幅一定范圍,則指向該圖元提示無(wú)法預(yù)處理。
2)總圖分割輸出時(shí),如何準(zhǔn)確提示跨圖幅圖元無(wú)法輸出等情況?
在接邊修改過(guò)程中,若新增線(xiàn)類(lèi)圖元,可能由于鋪?zhàn)讲粶?zhǔn)確的緣故而出現(xiàn)新圖元跨越圖幅的情況,跨越的長(zhǎng)度可能是很短的1毫米、也可能是較長(zhǎng)的1米。若直接輸出,相鄰兩幅地形圖之間會(huì)存在圖元互借現(xiàn)象,則地形圖圖面的表達(dá)不盡合理。
因此,這個(gè)功能順利實(shí)現(xiàn)的關(guān)鍵是應(yīng)該檢索圖元外輪廓,計(jì)算其圖元重心,推算其超越圖幅范圍值,在規(guī)則允許范圍內(nèi)的可以輸出,否則指向該圖元提示無(wú)法預(yù)處理。
3 總結(jié)
通過(guò)該程序的研究,減少了原來(lái)約80%的人機(jī)互動(dòng)操作,生產(chǎn)效率和準(zhǔn)確性大大提高;也提供了一條地形圖接邊、修改、分割、輸出全過(guò)程的技術(shù)路徑,為其他城市地形圖接邊修改工作提供了借鑒。
參考文獻(xiàn):
[1] 王玨.用VBA開(kāi)發(fā)AutoCAD 2000應(yīng)用程序[M].北京:人民郵電出版社,1999.