張燕(重慶市勘測院,重慶 400020)
基于ArcGIS Representation的地形圖制圖表達庫研究
張燕?
(重慶市勘測院,重慶 400020)
摘 要:針對傳統地形圖生產軟件不能兼顧制圖表達和GIS空間分析的問題,介紹ArcGIS的制圖表達功能,并以制作1∶2 000地形圖制圖表達庫為例,充分利用ArcGIS制圖表達功能,并根據測繪地形圖生產的特殊要求,自行研發程序對ArcGIS制圖效果進行擴展,完成了1∶2 000制圖表達庫在ArcGIS中的制作,解決了DLG數據在符號化環節的制圖和建庫一體化的問題,提高了GIS制圖效率和豐富了復雜地物表達能力。
關鍵詞:符號化;ArcGIS;制圖表達
隨著GIS技術的快速發展,對地形圖成果的提交要求越來越高,一方面要按照標準的地形圖制圖規范進行符號化,另一方面需要達到數據建庫滿足各種空間拓撲關系和屬性要求。傳統的專業制圖軟件很難在兩者之間達到平衡,不少測繪單位采用兩套軟件對同一地形圖分別進行制圖和建庫的數據的生產,使得工作流程繁瑣,增加了人工工作量,提高了數據風險,也不利于數據的維護和管理。
ArcGIS目前已經成為了行業流行的GIS軟件,其格式也作為通用的數據匯交格式。探索如何依托Arc-GIS平臺,完成地形圖制圖表達庫建立以及實現對ArcGIS的地形圖建庫數據進行滿足規范的符號化已經成為亟待解決的問題。ArcGIS 9.2及其后續版本推出了Representation制圖表達技術,因其表達的智能靈活性和圖屬關聯,使這一想法變得可行[4]。筆者利用這一技術,通過編寫程序對ArcGIS進行功能擴展,建立了滿足1∶2 000地形圖的制圖表達庫,并實現了對地形圖的自動符號化。經檢驗,只需對個別特殊要素進行制圖表達的屬性設定即可形成成果圖,實現制圖建庫一套數據。
ArcGIS傳統的符號化方式通常用基于樣式管理器的符號化方式。ArcGIS 9.2以前的版本不支持制圖表達,借助樣式管理器制作的符號可以完成一般地物的符號表達,但對于復雜地物的缺乏靈活性表達甚至無法表達,無法滿足地形制圖的規范,通常需要借助輔助線等來完成制圖。制圖表達Representation機制的引入,使得數據可以實現基于規則的符號化。一個要素類可以有多種制圖表達,一個圖層可以采用多種制圖規則進行符號化[1]。制圖表達允許對個別要素的外觀進行單獨的制圖編輯,而不影響該要素的建庫幾何,也不會影響同類要素的表達。它不僅能實現符號化的重復使用,也使其在制圖上功能更智能便捷和個性化。
2.1 制圖表達庫組織
依據《GBT 13923-2006基礎地理信息要素分類與代碼》及《基礎地理信息數字成果數據組織及文件命名規則》進行要素分類和幾何分類,將地形圖要素劃分為41個要素圖層[2]。最終的制圖表達庫存儲于個人地理數據庫MDB中。
制圖表達庫的制作方法為:在ArcCatalog中創建個人地理數據庫MDB文件,創建數據集,在數據集下完成41個要素圖層的創建,并分別為每個要素圖層定義層名、屬性字段等。在ArcMap中,加載該MDB文件,將每個要素類符號系統轉換為制圖表達,進入“圖層屬性”對話框的“符號系統”頁,為該要素類增加要素,對要素定義規則表達。要素規則命名方法為:GB編碼+要素名稱+備注。在基礎地理信息編碼中,一個GB編碼可能對應于不同類型的同一個要素,如依比例的圍墻和不依比例的圍墻,分別為線和面;又如臺階, 在1∶2 000圖式上分為普通臺階,U型臺階,雙線邊臺階等多種表達方式。定義制圖表達規則時,需要為臺階要素建立相應的多個制圖表達規則,以供制圖調用。因此一個GB編碼可能對應一個或多個制圖規則,一個要素可能拆分為幾個要素規則表達。
制圖表達庫制作完成后,可以直接利用MDB文件作為制圖模板進行地形圖繪制或者利用程序對已有建庫數據進行對照和符號化。該方式有利于實現符號庫的重復利用[6],并可良好地存儲和管理。圖1所示為個人地理數據庫中的制圖表達庫。

圖1 個人地理數據庫中的制圖表達庫
2.2制圖效果擴展
制圖表達Representation是根據制圖規則Rules和覆蓋Overrides來實現地形圖的符號化[3]。制圖規則由點、線、或面以及制圖效果組合而成,定義了符號化的方式。制圖效果可以改變點、線、面的顯示位置和顯示方式,而不影響其建庫幾何。ArcGIS還提供了基于點、線、面的通用的制圖效果和制圖規則,已有的制圖效果包括偏移、平滑、虛線等,可以幫助實現符號表達效果定制。但是某些特殊要素的制作仍無法實現,比如依比例的坡坎崖、依比例的臺階、棚房、多開口的橋、河流漸變線要素等,無法滿足1∶2 000的制圖需求,需要進行擴展。具體的擴展方法是根據1∶2 000地形圖符號庫制作的需要,利用C#作為開發環境,基于ArcObjects研發ArcGIS制圖表達擴展鏈接庫,對需要表達的特殊要素按照類型分別進行標記放置樣式、線放置效果、面放置效果的擴展。擴展程序以組件的方式在ArcGIS后臺支撐運行,使得在后續的制圖表達庫制作過程中能利用其完成制圖規則的定制。
以依比例陡崖的制圖規則為例:依比例尺未加固斜坡的幾何是一個面。面的繪制方向為順時針,從坡頂向坡腳。在制圖表達編輯時,可以使用制圖表達編輯器,對面幾何增加控制點,用以標示坡頂線的結束位置。在程序中實現方法為:遍歷面幾何的結點,找到制圖控制點以提取斜坡上棱線和坡腳線。然后根據程序界面提供的坡面長短線間距、短線長度、是否加固等參數,計算生成坡面長短線。由于大部分的特殊制圖都需要制圖控制點輔助,所以將制圖控制識別作為一個效果程序,再將坡面長短線的繪制作為另一個效果程序。在制圖表達規則定義時,通過定義兩效果程序的參數,來實現依比例陡崖的符號化樣式配置。
利用程序擴展的自定義的制圖效果包括:
(1)河流出入口效果GEArcOpen:根據雙線河流開口連線,實現雙線河河流的出入口符號繪制。
(2)平行線效果GEMLine:根據提供的線幾何,實現按指定距離參數的一側或兩側平行線輸出效果。
(3)坡坎效果GESlope:根據提供的坡上線和坡下線,分段點,長短線長度參數、間距參數等,繪制依比例的斜坡,陡坎、崖等制圖效果。支持通過制圖控制點的放置,實現制圖效果的調整。
(4)臺階效果GEStep:根據提供的臺階面幾何,識別左右邊線,根據臺階間距參數繪制階梯線;并根據控制點點位,來控制臺階上的平臺效果。同時支持包括凹狀臺階、弧形臺階,雙邊臺階等效果。
(5)棚房效果GETooth:根據提供的面幾何,對夾角進行角平分線計算,按照設定的長度參數繪制棚房制圖效果。
(6)控制效果GEUD:識別幾何上的制圖控制點,將幾何劃分出子幾何以備后續制圖使用。包括支持提取上下邊線,左右邊線,對角線等效果。
(7)漸寬線效果GETapper:根據線幾何以及起始點寬度參數設置,繪制諸如水系漸變線效果、地裂縫效果等。
(8)符號填充效果GEPattern:根據面幾何以及填充橫向縱向參數,符號旋轉參數、偏移參數等繪制如植被填充等效果。
(9)符號沿線設置效果GEOnEndPoints:根據線幾何以及符號放置參數,實現如電力線效果等。
2.3制圖表達規則定制
在規則的制作中,對過去傳統ArcGIS樣式符號庫可以加以利用。如單元符號,如果尺寸與圖式一致即可直接導入利用,不必重新制作。一個要素符號的制圖規則可以由一個或多個規則圖層疊加表示[5],可以包括標記圖層、線劃圖層、面填充圖層。要素符號的偏移、旋轉、平滑、虛線等效果可以通過對圖層增加幾何效果來實現。ArcGIS本身支持的點符號效果包括沿線、在線上、在端點處、在折點處等;線效果包括偏移、虛線、移動等;面效果如緩沖、封閉等。
(1)點
點狀符號表示不依比例尺的小面積地物或獨立的點狀地物[7],符號擁有固定的圖形樣式,尺寸固定,幾何定位與地物實際位置一致。
在點單元符號的制作中,首先選中該地物所在的圖層,如“零星樹木”,就在VEGP圖層下,進入圖層屬性,選擇符號系統,創建新的規則,規則命名為“810509零星樹木”;如果有可以利用的Style樣式符號庫,就可以通過導入符號將已有的單元符號導入;或通過標記編輯器也可以進行符號的制作。比照圖式要求,指定單元的定位點,顏色,控制單元的尺寸等,選擇符號放置方式為“在點上”。在單元的制作過程中,同時盡可能地把單元的掩膜加上,方法是添加新填充圖層,利用白色的底色制作壓蓋面,附加到單元符號上。
對于有方向性的符號,可以將角度屬性字段映射到角度上。這樣就能將地物的屬性作為符號化的一部分來符號化地物[8]。
(2)線
線狀符號是指長度在地圖上按比例表示,而寬度不依比例表示的半依比例符號[7],如電力線、河流、道路等。線狀符號是在定位線的基礎之上進行符號表達的。
線型的制作方法需要遵循右手法則,即線型符號在前進方向的右側。線型上的符號可以由符號圖層表示,線可以由可以設置線粗的線劃圖層表示,線的掩膜可以用填充底色的面圖層或有厚度的線圖層表示。疊加幾何效果來實現最終制圖效果。如石質無灘陡岸,可拆分為一個簡單線劃圖層,和一個沿線等距離排列的單元圖層,如果需要增加壓蓋效果,則還需要增加一個底色面填充圖層。在圖層TFCL下,,進入圖層屬性,選擇符號系統,創建新的規則,規則命名為“750604
石質無灘陡岸”。新增加一個標記圖層、兩個線劃圖層。標記圖層的標記放置方式是按間隔距離“沿線放置”,線劃圖層設置線粗和顏色與圖式一致,掩膜使用加粗的線,效果是偏移標記符號尺寸一般的距離。
(3)面
面狀符號是指在地圖上長度和寬度均依比例尺表示的符號。如大面積的樹林、沙灘、苗圃等。面狀符號通常以封閉的輪廓線為基礎進行表達,在輪廓線內用不用的密度和樣式進行點符號、線符號、色塊等的填充。
面要素約定按順時針方向繪制,并且起點一般選擇在如斜坡坡上線起點,開口要素的一邊的起點等。與線型制作類似,ArcGIS制圖表達對面的制作允許添加單元圖層、線劃圖層、面填充圖層,搭配相應可選的效果以及放置樣式。
如依比例煙囪要素的表達:在圖層RFCA下,進入圖層屬性,選擇符號系統,創建新的規則,規則命名為“321106 煙囪”。為規則新增加一個標記圖層、一個線劃圖層、一個面填充圖層。標記圖層的標記放置方式是“面中心放置”,即將煙囪符號放到面幾何中心,線劃圖層設置線粗和顏色與圖式一致,面填充色為地形圖背景色,作為要素自帶的掩膜。
(4)特殊類要素
利用ArcGIS自帶功能無法制作的要素,需要使用擴展制圖效果來實現。如依比例的斜坡的規則制作,首先在TERA圖層下,新建名為“760001未加固斜坡面”,然后為規則新增一個線劃圖層和一個面填充圖層。線圖層里增加GETUD效果用以輸出坡頂線和坡腳線,然后再疊加GESLOPE效果,在界面中設置效果屬性中的長短線間距、長線長度、短線長度、是否保留坡頂線、是否包含加固點、加固點半徑等參數;面填充圖層位于線劃圖層之下,以背景色填充,作為斜坡自帶的掩膜。
筆者在ArcGIS平臺中制作完成了1∶2 000制圖表達庫,包括點狀、線狀、面狀要素規則共969個,符號尺寸準確,完全符號地形圖圖示規定。對于特殊類的坡坎崖、橋、臺階、變寬線等要素,筆者通過編寫程序擴展ArcGIS制圖表達功能進行支持。運用程序調用制圖表達庫,將已有的建庫數據按照國標編碼和制圖規則號進行對應,能迅速地完成地形圖的符號化,作業人員后期只需要做一些簡單的調整,如制圖控制點添加,個別注記的位置拖移等即能成圖。圖2所示為數據進行制圖符號化前后對比圖。

圖2 制圖表達前后對比圖
本文基于ArcGIS制圖表達技術,通過對地圖符號庫的解析,利用AO進行二次開發,擴展了ArcGIS平臺的符號化表達和制圖效果,以地形圖采集中特殊要素的符號化靈活定義。實現了ArcGIS平臺下基礎測繪1∶2 000制圖和建庫數據的一體化表達,創建了1∶2 000地形圖制圖表達符號庫,滿足了地形圖在實際生產中的更多樣化靈活的表現需求,提高了GIS制圖的效率以及地圖符號化能力,經過試驗證明具有很好的實用性和擴展性。
參考文獻
[1] 余應剛,陳朝暉,包世泰等.基于規則與覆蓋的GIS制圖表達[J].現代計算機,2009(313):50~53.
[2] 肖提榮,何照攀,楊勇.基于ArcGIS的DLG自動符號化模塊的設計與開發[J].測繪通報,2012(7):85~87.
[3] 譚成國.基于ArcGIS Representation圖庫一體化的設計與實現[J].城市勘測,2011(6):46~49.
[4] 王佩,余樹影,施建輝等.ArcGIS制圖表達在地形圖生產中的應用[J].測繪標準化,2013,29(2):46~48.
[5] 王蓉,何紅梅,嚴曉斌.GIS數據與制圖數據一體化方法研究與實現[J].地理空間信息,2014,37(9):142~143.
[6] 趙成福,王苑,李永花等.基于ArcGIS Engine的符號化研究與實現[J].地理空間信息,2009,7(4):57~59.
[7] 祁華斌,艾廷華,胡珂.基于ArcGIS的地圖符號庫建立及符號化實施[J].測繪通報,2003(1):14~17.
[8] 彭巖,高源鴻,康來成等.基于ArcGIS的屬性驅動可視化成圖技術應用初探[J].測繪與空間地理信息,2013,36 (12) :201~203.
Research on the Map Symbol Library Based on the ArcGIS Representation
Zhang Yan
(Chongqing Survey Institute,Chongqing 400020,China)
Abstract:Traditional map production software does not take into account the representations and GIS spatial analysis problems,introduced ArcGIS representation function,and to produce 1∶2000 map representation library as an example, take advantage of ArcGIS representation function,and based on the special requirements of the Representation,develop program to extend ArcGIS representation geometric effects,completed 1∶2000 representation library,resolve the integration of the DLG data mapping and spatial data,improve the efficiency of the GIS mapping,enrich the expression ability of complex object.
Key words:symbolization;ArcGIS;representation
文章編號:1672-8262(2015)05-71-04中圖分類號:P208.1
文獻標識碼:A
收稿日期:?2015—07—02
作者簡介:張燕(1979—),女,高級工程師,從事GIS系統應用與開發工作。