李奇,吳杰松,王磊
(廣州市城市規(guī)劃勘測(cè)設(shè)計(jì)研究院,廣東 廣州 510000)
1∶2000地形圖是城市基礎(chǔ)地理信息系統(tǒng)的重要組成部分。其生產(chǎn)方式有傳統(tǒng)測(cè)繪方法、航空攝影測(cè)量方法及縮編1∶500地形圖方法,其中縮編1∶500地形圖方法有工期短、效率高、不受環(huán)境影響、成本低的優(yōu)點(diǎn),成為生產(chǎn)1∶2000地形圖的最優(yōu)方式[1]。
EPS平臺(tái)因其兼顧了圖形美觀(guān)與信息豐富的特點(diǎn),適應(yīng)了測(cè)繪信息化的要求,已廣泛應(yīng)用于城市1∶500地形圖生產(chǎn)。1∶2000地形圖的生產(chǎn)最好方法無(wú)疑就是直接應(yīng)用EPS平臺(tái)縮編現(xiàn)有的1∶500地形圖。因而如何實(shí)現(xiàn)基于EPS平臺(tái)縮編1∶500地形圖極具研究意義。
本文主要研究了基于EPS平臺(tái)實(shí)現(xiàn)縮編1∶500地形圖的方法、流程。EPS提供了開(kāi)放的腳本語(yǔ)言,通過(guò)腳本程序可以減少手工操作,一定程度實(shí)現(xiàn)縮編自動(dòng)化,從而提高縮編效率。
縮編是保留較大比例尺地形圖本質(zhì)的、主要的和整體規(guī)律性的內(nèi)容,舍棄較大比例尺地形圖非本質(zhì)的、次要的和局部細(xì)節(jié)性的內(nèi)容,并進(jìn)行圖面處理,生成符合制圖要求的較小比例尺的地形圖[2]。其方法有以下幾種:
(1)取舍
取舍方法是對(duì)較大比例尺地形圖中不需要在較小比例尺地形圖中表示與不符合一定“資格”的地物、注記進(jìn)行刪除,保留重要地物及選取必要注記,是縮編最常用的方法。如1∶2000地形圖中不需要表示飄臺(tái)、飄檐等,直接刪除這些地物;刪除面積小于一定閾值的魚(yú)塘;1∶2000地形圖中的道路注記比1∶500地形圖少許多,需要將多余的道路注記刪除。
(2)化簡(jiǎn)
化簡(jiǎn)方法是將地物的內(nèi)部結(jié)構(gòu)與外部輪廓進(jìn)行簡(jiǎn)化,以達(dá)到圖面簡(jiǎn)潔美觀(guān)的目的。如對(duì)有較多小彎曲的土坎進(jìn)行結(jié)點(diǎn)化簡(jiǎn),將較小的彎曲“拉直”,保留大的彎曲;將間距較小的雙線(xiàn)溝渠化簡(jiǎn)為單線(xiàn)溝渠;將距離較近的多間房屋合并為一間。
(3)概括
概括方法是減少地物在空間及數(shù)量的差別。如草地及林地概括為綠地,面積較小的面狀水井概括為點(diǎn)狀水井符號(hào)。
(4)移位
移位是處理地物相互關(guān)系的基本方法,是為了避免地物圖面上的沖突,移動(dòng)次要地物。如比例尺改變后,加固坎與籬笆部分重疊,將籬笆移位,保持圖面美觀(guān)。
縮編1∶500地形圖根據(jù)以下八大類(lèi)地物縮編規(guī)則進(jìn)行:
(1)居民地和柵欄縮編規(guī)則
相同結(jié)構(gòu)、共邊的房屋應(yīng)合并;房屋圖上間距小于0.5 mm,可共邊處理;房屋(A、B、C類(lèi))輪廓凹凸在圖上小于0.4 mm,簡(jiǎn)單房屋(D類(lèi))圖上小于0.6 mm可綜合成直線(xiàn);飄臺(tái)及飄臺(tái)符號(hào)、飄檐不表示。
(2)工礦建筑物及其附屬設(shè)施縮編規(guī)則
亭、露天設(shè)備、地磅等工礦面圖上面積小于3 mm×3 mm時(shí),概括為對(duì)應(yīng)的點(diǎn)狀地物;路燈只保留位于主要道路交叉處的。
(3)交通及附屬設(shè)施縮編規(guī)則
雙線(xiàn)路如大車(chē)路、鄉(xiāng)村路、內(nèi)部道路圖上寬度小于1 mm時(shí)簡(jiǎn)化為單線(xiàn)小路;高架路柱、墩如果圖上尺寸小于1 mm×1 mm,則用不依比例尺符號(hào)表示。
(4)管線(xiàn)及附屬設(shè)施縮編規(guī)則
各種地下檢修井在道路交叉口或主要道路的摘要表示;直線(xiàn)排列的電桿過(guò)密可取舍,圖上距離約4 cm左右進(jìn)行選取,拐彎處電桿不能舍去;變電室范圍過(guò)小的情況下,用不依比例尺變電室表示。
(5)水系及附屬設(shè)施縮編規(guī)則
池塘面圖上間距小于0.5 mm的,可以合并;雙線(xiàn)溝渠在寬度小于0.8 mm的情況下化簡(jiǎn)為單線(xiàn)溝渠。
(6)地貌和土質(zhì)縮編規(guī)則
等高距為1 m,刪除高程值為非整數(shù)的等高線(xiàn);地形高程點(diǎn)選取原則:均勻選取,優(yōu)先選取山頂、鞍部、山脊、山腳、谷底、谷口、溝底、坎上坎下、等高線(xiàn)疏密變換處及其他地面傾斜變換處的高程點(diǎn)。
(7)植被縮編規(guī)則
相同植被之間的田埂刪除,不同植被之間的田埂換成地類(lèi)界;耕地某品種面積小于25 mm2可合并到較大面積品種中;狹長(zhǎng)花圃圖上寬度小于1.5 mm可舍去。
(8)測(cè)量控制點(diǎn)縮編規(guī)則
三角點(diǎn)、小三角點(diǎn)、一、二、三級(jí)等級(jí)導(dǎo)線(xiàn)點(diǎn)、水準(zhǔn)點(diǎn)以及相應(yīng)的GPS點(diǎn)均應(yīng)全部選取;圖根點(diǎn)轉(zhuǎn)換為高程點(diǎn)。
縮編1∶500地形圖流程主要按照上述規(guī)則按八大類(lèi)地物順序縮編,操作上先執(zhí)行腳本自動(dòng)縮編,然后手動(dòng)處理程序無(wú)法完善處理的問(wèn)題。流程圖如圖1所示。
圖1 縮編流程圖
(1)調(diào)入1∶500地形圖數(shù)據(jù)及數(shù)據(jù)預(yù)處理。運(yùn)行腳本程序,調(diào)入需要縮編的EDB格式的1∶500地形圖數(shù)據(jù)。主要代碼如下:
上面代碼設(shè)置調(diào)入數(shù)據(jù)的類(lèi)型、文件名稱(chēng)以及擴(kuò)展屬性與模板中不匹配的屬性如何處理,ImportData函數(shù)負(fù)責(zé)調(diào)入數(shù)據(jù)。導(dǎo)入數(shù)據(jù)后,腳本自動(dòng)執(zhí)行BeforeSaveImportData系統(tǒng)函數(shù),可將必須執(zhí)行的數(shù)據(jù)處理放在此函數(shù)內(nèi)。包括以下幾類(lèi)處理:
①無(wú)條件刪除地物及注記。如刪除所有陽(yáng)臺(tái)符號(hào),通過(guò) SSProcess.GetSelGeoValue(i,"SSObj_Code")獲取地物編碼,判斷其是否需要?jiǎng)h除的編碼,若是,則刪除。腳本程序中刪除地物的函數(shù)有兩個(gè):一個(gè)是DeleteObject,根據(jù)地物ID刪除地物;另一個(gè)是RemoveSelGeo,根據(jù)選擇集中的索引號(hào)刪除地物。如刪除所有門(mén)牌注記,通過(guò) SSProcess.GetSelNoteValue(i,"SSObj_FontClass")獲取注記分類(lèi),判斷其是否需要?jiǎng)h除的注記類(lèi)型,若是,則刪除。刪除注記的函數(shù)也有兩個(gè):一個(gè)是DeleteObject,根據(jù)注記ID刪除注記;另一個(gè)是RemoveSelNote,根據(jù)選擇集中的索引號(hào)刪除注記。
②面概括為點(diǎn)。如面積小于24 m2的變電室概括為不依比例尺電房,通過(guò) SSProcess.GetSelGeoValue(i,"SSObj_Code")獲 取 編 碼 以 及 SSProcess.Get-SelGeoValue(i,"SSObj_Area")獲取面積,兩者符合條件則計(jì)算對(duì)象的焦點(diǎn),并在焦點(diǎn)處新建面對(duì)應(yīng)的點(diǎn)編碼地物。
③電力線(xiàn)化簡(jiǎn),其算法是計(jì)算連續(xù)的三點(diǎn)形成的轉(zhuǎn)折角是否小于閾值,如果轉(zhuǎn)折角小于閾值,則判斷線(xiàn)段長(zhǎng)度是否也小于閾值,如果也小于閾值則通過(guò)SSProcess.DeleteSelGeoPoint i,j刪除該點(diǎn)。
④編碼屬性轉(zhuǎn)換,如更改高程點(diǎn)屬性小數(shù)位數(shù),通過(guò) SSProcess.SetSelGeoValue i,"SSObj_Z",newValue實(shí)現(xiàn)高程點(diǎn)高程屬性賦值。
(2)房屋面綜合處理。房屋構(gòu)面在 1∶500及1∶2000中有較大不同,1∶500有一般房屋面及房屋分層面,一般房屋面包含房屋分層面,而1∶2000只有一般房屋面。因此1∶500的房屋面需要重新拓?fù)錁?gòu)面才能符合1∶2000的房屋構(gòu)面規(guī)則。
首先,刪除面積小于規(guī)定面積的房屋分層面以及房屋分層面內(nèi)的房屋結(jié)構(gòu)注記,然后將所有的房屋分層面換碼為一般房屋面,最后對(duì)所有一般房屋面進(jìn)行拓?fù)錁?gòu)面。構(gòu)面代碼如下:
上述代碼將所有的一般房屋面進(jìn)行拓?fù)錁?gòu)面,最終生成編碼為2的面,這些2面都不交叉重疊。拓?fù)錁?gòu)面后刪除原來(lái)所有的一般房屋面,代碼如下:
然后搜索2面內(nèi)的房屋結(jié)構(gòu)注記(注記分類(lèi)298100),將面換碼為“211050”一般房屋面,并根據(jù)注記填寫(xiě)2面的相應(yīng)屬性。主要代碼如下:
這樣就完成了房屋面的拓?fù)錁?gòu)面,房屋面處理還需要進(jìn)行房屋面合并處理和房屋邊線(xiàn)化簡(jiǎn),通過(guò)外部函數(shù)“HouseAreaMerge”與“HouseLINEClean”實(shí)現(xiàn),AddFunctionParameter可設(shè)置外部函數(shù)所需參數(shù)的值,主要代碼如下:
(3)高程點(diǎn)篩選
高程點(diǎn)選取主要以均勻分布為原則,對(duì)于地形特征點(diǎn)如道路交叉處等重要位置通過(guò)種植“釘子點(diǎn)”確保該位置的高程被選取。其思想是:首先程序搜索所有道路中心線(xiàn)的所有交點(diǎn),并在交點(diǎn)處新建“釘子點(diǎn)”,人工在其他重要區(qū)域種植“釘子點(diǎn)”,然后搜索離“釘子點(diǎn)”最近的高程,將其屬性設(shè)為保留;搜索數(shù)據(jù)庫(kù)內(nèi)所有的高程點(diǎn),獲取其最小外接矩形范圍,根據(jù)外接矩形范圍新建多個(gè)(250×250)編碼為2的矩形,然后搜索每個(gè)2面內(nèi)的高程點(diǎn),找出每個(gè)2面內(nèi)高程的極大極小值,并將其屬性設(shè)為保留;根據(jù)高程范圍新建多個(gè)(60×60)矩形編碼為1的矩形,如面內(nèi)沒(méi)有屬性設(shè)為保留的高程點(diǎn),則將離矩形中心最近的高程點(diǎn)設(shè)置為保留,確保60×60的范圍內(nèi)保有一個(gè)高程;最后刪除不需要保留的高程點(diǎn)。以上步驟完成后還需人工檢查及補(bǔ)充。
(4)植被點(diǎn)抽稀
植被點(diǎn)抽稀功能通過(guò)設(shè)置外部函數(shù)“間距”并執(zhí)行“PointFilter”外部函數(shù)實(shí)現(xiàn)。
確定縮編方法與縮編規(guī)則后,通過(guò)EPS腳本程序?qū)崿F(xiàn)大部分規(guī)則明確、規(guī)律明顯的縮編工作,大大簡(jiǎn)化了工作,提高了工作效率,之后進(jìn)行人工處理彌補(bǔ)程序沒(méi)有完成的工作。該半自動(dòng)縮編的技術(shù)路線(xiàn)能較好實(shí)現(xiàn)縮編工作,正確、高效地生產(chǎn)1∶2000地形圖。
當(dāng)前程序的自動(dòng)化縮編工作是將地物按類(lèi)型根據(jù)規(guī)則獨(dú)立處理,如何按地物關(guān)系進(jìn)行整體化縮編還有待深入研究。
[1]祁增營(yíng),裴亮,王京.利用EPS平臺(tái)對(duì)南海區(qū)地形圖進(jìn)行縮編[J].測(cè)繪與空間地理信息,2009,12(6):212~214
[2]盛業(yè)華,郊達(dá)志.GIS環(huán)境下空間要素的制圖綜合方法[J].測(cè)繪通報(bào),1995(3):26~30
[3]王磊.基于EPSX的MGE數(shù)據(jù)轉(zhuǎn)換研究與實(shí)現(xiàn)[J].地理空間信息,2007,5(3):49 ~52
[4]王磊.廣州地鐵竣工驗(yàn)收測(cè)量系統(tǒng)研究與實(shí)現(xiàn)[J].地理空間信息,2008(4):15~18
[5]吳信才,郭際元,鄭貴州等.地理信息系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[M].北京電子出版社,北京,2002