魏世軒
(1.重慶市勘測院,重慶 401121; 2.重慶市地理國情監(jiān)測工程技術(shù)研究中心,重慶 401121)
ArcGIS制圖表達的圖庫一體化數(shù)據(jù)到AutoCAD制圖數(shù)據(jù)的全要素轉(zhuǎn)換研究
魏世軒1,2*
(1.重慶市勘測院,重慶 401121; 2.重慶市地理國情監(jiān)測工程技術(shù)研究中心,重慶 401121)
通過研究ArcGIS制圖表達原理及AutoCAD數(shù)據(jù)交換格式DXF文件的結(jié)構(gòu),設(shè)計了一套AutoCAD的符號線型庫,研發(fā)了數(shù)據(jù)轉(zhuǎn)換系統(tǒng),實現(xiàn)了基于ArcGIS制圖表達的 1∶2 000圖庫一體化數(shù)據(jù)到AutoCAD制圖數(shù)據(jù)的全要素轉(zhuǎn)換。
地形圖;圖庫一體化;制圖表達;數(shù)據(jù)轉(zhuǎn)換
圖庫一體化是信息化測繪的要求,更是測繪技術(shù)的發(fā)展趨勢?;贏rcGIS制圖表達的圖庫一體化可有效解決傳統(tǒng)測繪數(shù)據(jù)中制圖數(shù)據(jù)與GIS建庫數(shù)據(jù)為兩套數(shù)據(jù)的矛盾,實現(xiàn)制圖和建庫數(shù)據(jù)一體化管理。在項目施工建設(shè)中,大部分用戶習慣于使用CAD格式的測繪數(shù)據(jù),雖然ArcGIS集成了CAD數(shù)據(jù)轉(zhuǎn)換功能,但是轉(zhuǎn)換后的CAD數(shù)據(jù)只有空間位置信息,丟失了ArcGIS制圖數(shù)據(jù)原有的符號、線型、顏色等信息,轉(zhuǎn)換后的數(shù)據(jù)不滿足制圖數(shù)據(jù)要求(轉(zhuǎn)換結(jié)果如圖1所示),存在使用困難的問題[1]。
目前已有的ArcGIS制圖表達數(shù)據(jù)到CAD制圖數(shù)據(jù)的轉(zhuǎn)換研究中,大部分只是實現(xiàn)了小比例尺數(shù)據(jù)(1∶5 000,1∶10 000)的轉(zhuǎn)換,涉及轉(zhuǎn)換要素更多、更復雜的 1∶2 000大比例尺數(shù)據(jù)的研究卻很少。本文將闡述如何實現(xiàn)基于ArcGIS制圖表達的 1∶2 000制圖數(shù)據(jù)到AutoCAD制圖數(shù)據(jù)的全要素轉(zhuǎn)換,如圖1所示。
圖1 ArcGIS(左)直接轉(zhuǎn)AutoCAD(右)數(shù)據(jù)
ArcGIS提供了一套靈活的制圖表達機制,可以靈活地使用基于規(guī)則的結(jié)構(gòu)對數(shù)據(jù)進行符號化,這些結(jié)構(gòu)與數(shù)據(jù)一同存儲在地理數(shù)據(jù)庫中。制圖表達是根據(jù)制圖規(guī)則Rules和覆蓋Overrides來實現(xiàn)地形圖的符號化。其表達規(guī)則由標記、線、填充及幾何效果、標記布局樣式組合而成。制圖表達中的自由表達允許對個別要素的外觀進行單獨的制圖編輯,而不影響要素的建庫幾何,也不會影響同類要素的表達[2]。
對于地形圖中符號化的點狀要素,可以通過在點位上插入對應標記的方式,實現(xiàn)點狀要素的繪制,比如電桿、不依比例尺船閘、不依比例尺通信塔等。
對于地形圖中符號化的線狀要素,可以利用ArcGIS已有的制圖效果偏移、平滑、虛線等,幫助實現(xiàn)符號表達效果定制。比如可以為線圖層添加虛線制圖表達效果,并指定黑線與空白的長度,實現(xiàn)小路的制圖效果。
對于地形圖中符號化的面狀要素,可以利用AcrGIS已有的表達規(guī)則及幾何效果組合表達。比如水面可以通過添加制圖表達規(guī)則中的線及面層,然后設(shè)置線層的寬度、顏色,面層的填充顏色,組合表達出水面的制圖效果;再如水田面,可以設(shè)置標記的布局樣式為“在面內(nèi)部”,然后設(shè)置相應的X步長、Y步長、平移奇數(shù)行等參數(shù)來表達出水田面。
但是ArcGIS已有的制圖表達仍無法實現(xiàn)地形圖中某些特殊要素的制圖效果,比如依比例尺的陡坎、依比例尺的臺階、棚房等,需要基于ArcObjects研發(fā)ArcGIS制圖表達擴展鏈接庫,如圖2所示。
圖2 ArcGIS制圖表達設(shè)置
DXF是Autodesk公司開發(fā)的用于AutoCAD與其他軟件之間進行CAD數(shù)據(jù)交換的CAD數(shù)據(jù)文件格式。DXF文件是由很多的“代碼”和“值”組成的“數(shù)據(jù)對”構(gòu)造而成,這里的代碼稱為“組碼”(group code),指定其后的值的類型和用途。每個組碼和值必須為單獨的一行的。DXF文件被組織成為多個“段”(section),每個段以組碼“0”和字符串“SECTION”開頭,緊接著是組碼“2”和表示段名的字符串(如HEADER)。段的中間,可以使用組碼和值定義段中的元素。段的結(jié)尾使用組碼“0”和字符串“ENDSEC”來定義[3~6]。
DXF文件的結(jié)構(gòu)如圖3所示:
圖3 DXF文件結(jié)構(gòu)
4.1 點符號制作
以塊的形式來表示1∶2 000地形圖中的點要素,并根據(jù)地形圖圖示設(shè)置塊符號的大小、顏色、基點等屬性??梢詫⒚總€符號存儲為一個CAD文件,也可以將所有的符號都存儲在同一個CAD文件中,在需要插入符號時再讀取相應的CAD文件中對應的塊符號,如圖4所示。
圖4 點符號
4.2 線型制作
AutoCAD中的線型是以線型文件(也稱為線型庫)的形式保存的,其類型是以“.lin”為擴展名的ASCII文件。復雜線型可以包含嵌入的形(保存在形文件中)。復雜線型可以表示實用程序、邊界和輪廓等等。與簡單線型一樣,指定端點后可以動態(tài)地繪制復雜線型。
以下線型定義了名為CON1LINE的線型,此線型由直線段、空移和嵌入的形CON1的重+復圖案構(gòu)成。其中,CON1來自ep.shx文件。(請注意,必須將ep.shx文件放在支持路徑中才能使以下樣例正常運行。)
*CON1LINE,---[CON1]---[CON1]---[CON1]
A,1.0,-0.25,[CON1,ep.shx],-1.0
下面的語法把形定義為復雜線型的一部分:
[shapename,shapefilename,scale,rotate,xoffset,yoffset]
圖5 線型庫
5.1 數(shù)據(jù)轉(zhuǎn)換流程
本文研究以1∶2 000比例尺地形圖為例,闡述 1∶2 000地形圖的ArcGIS圖庫一體數(shù)據(jù)到AutoCAD制圖數(shù)據(jù)轉(zhuǎn)換的實現(xiàn)方法。首先制作覆蓋全部 1∶2 000地形圖要素的ArcGIS制圖數(shù)據(jù)到AutoCAD制圖數(shù)據(jù)的轉(zhuǎn)換對照表,明確數(shù)據(jù)轉(zhuǎn)換關(guān)系,對于較復雜的要素制定組合生成方法[7],如圖6所示。
圖6 轉(zhuǎn)換對照表
數(shù)據(jù)轉(zhuǎn)換的流程為:根據(jù)圖層的壓蓋關(guān)系,確定圖層的轉(zhuǎn)換順序,再根據(jù)圖層的幾何類型及轉(zhuǎn)換對照表確定對應的轉(zhuǎn)換方法,寫入DXF文件中相應的TABLES、BLOCKS和ENTITIES數(shù)據(jù)段內(nèi),實現(xiàn)基于ArcGIS的制圖數(shù)據(jù)到AutoCAD制圖數(shù)據(jù)的轉(zhuǎn)換,如圖7所示。
圖7 數(shù)據(jù)轉(zhuǎn)換流程圖
5.2 點要素轉(zhuǎn)換
對與圖庫一體化數(shù)據(jù)中的點要素可根據(jù)轉(zhuǎn)換對照表,在已制作的AutoCAD符號庫中找到對應的符號塊進行轉(zhuǎn)換表示。
5.3 線要素轉(zhuǎn)換
根據(jù)線要素在AutoCAD是否有對應線型,轉(zhuǎn)換方法分為有線型和無線型兩種情況。有線型的要素可從線型庫中獲取對應線型直接轉(zhuǎn)換,并根據(jù)轉(zhuǎn)換對照表設(shè)置線型的顏色、線寬等信息。無線型的要素需要根據(jù)要素的特點對其進行拆分,再組合生成對應的AutoCAD制圖表達效果。
5.4 面要素轉(zhuǎn)換
面要素的轉(zhuǎn)換比點要素、線要素要較為復雜,地形圖中的面要素在AutoCAD中有對應的填充圖案的極少,大部分面狀要素的轉(zhuǎn)換都需要根據(jù)實際的制圖表達效果確定。簡單的面狀要素,比如坑塘,可以直接對應于AutoCAD數(shù)據(jù)中的實心填充,再組合對應線性的坑塘邊線。但是,對于較復雜的面狀要素,就需要根據(jù)各類要素在ArcGIS制圖表達里的相關(guān)參數(shù)、制圖效果,制定對應的轉(zhuǎn)AutoCAD制圖數(shù)據(jù)的方法。面要素的轉(zhuǎn)換方式較多,這里只列舉植被面和斜坡面進行闡述。
(1)植被面要素轉(zhuǎn)換
以VEGA層中的面狀要素旱地為例,其在ArcGIS里的制圖效果為填充了旱地符號的面要素。要實現(xiàn)轉(zhuǎn)換后的AutoCAD制圖數(shù)據(jù)與ArcGIS的制圖效果一致,就要獲得此面狀要素中每個旱地符號的坐標。如果要素沒有轉(zhuǎn)換為自由表達,每個符號的坐標不能直接獲得,需根據(jù)設(shè)置的坐標系、參考比例尺、填充方式、X步長、Y步長等參數(shù)進行解析,計算得到每個符號的坐標,再插入相應的符號塊轉(zhuǎn)換為AutoCAD制圖數(shù)據(jù)。另外還要從AcrGIS制圖表達的標記信息中讀取出旱地符號的大小信息,根據(jù)實際設(shè)置剔除出符號基點在面范圍內(nèi),但符號卻未完全位于面內(nèi)的情況,如圖8所示。
圖8 植被面轉(zhuǎn)換效果圖
(2)斜坡面要素轉(zhuǎn)換
對于斜坡面,要實現(xiàn)轉(zhuǎn)換為AutoCAD制圖數(shù)據(jù)就較為復雜。首先需要根據(jù)其制圖表達模式、點的屬性,解析出斜坡的上坡線、下坡線、分段點。斜坡面要素制圖效果中的長線從上坡線一直延伸到下坡線,在轉(zhuǎn)換時按制圖表達的長線間隔求出上坡線和下坡線上各個長線的點位,如果斜坡面設(shè)置了分段點,需要對上下坡線分段計算出各段內(nèi)長線的端點位置,然后將每個成對的點連接就生成了斜坡面的長線部分。對于短線部分,如果斜坡面是加固斜坡面,可將短線部分制作為一個符號塊,然后在每兩兩的長線中間插入短線塊,其傾斜角度與長線一致。如果斜坡面是未加固的,其短線部分就只是一個簡單的線段,可直接在每兩兩長線中間創(chuàng)建短線線段,角度與長線一致。最后將上坡線、下坡線、短線、長線等存儲為一個組寫入DXF文件中,即實現(xiàn)了斜坡面從ArcGIS制圖數(shù)據(jù)到AutoCAD制圖數(shù)據(jù)的轉(zhuǎn)換,如圖9所示。
圖9 斜坡面轉(zhuǎn)換效果圖
筆者以一幅丘陵地區(qū)的1∶2 000圖庫一體化數(shù)據(jù)進行轉(zhuǎn)換實驗,此圖庫一體化數(shù)據(jù)涵蓋點、線、面、注記要素層,轉(zhuǎn)換耗時為 15 s左右,轉(zhuǎn)換得到的AutoCAD制圖數(shù)據(jù)的空間位置與圖庫一體化數(shù)據(jù)一致,且具有符號、線型、顏色等信息,如圖10所示。
圖10 轉(zhuǎn)換成果(左邊為ArcGIS,右邊為AutoCAD)
近年來國家對基礎(chǔ)測繪數(shù)據(jù)的要求在由制圖轉(zhuǎn)向入庫,基礎(chǔ)測繪圖庫一體化是信息化測繪的要求,更是測繪技術(shù)的發(fā)展趨勢。通過運用本文的研究成果,可實現(xiàn)基于ArcGIS制圖表達的 1∶2 000圖庫一體化數(shù)據(jù)到AutoCAD制圖數(shù)據(jù)的全要素轉(zhuǎn)換,轉(zhuǎn)換得到的DXF格式的制圖數(shù)據(jù)在空間信息及制圖效果上與原有ArcGIS制圖數(shù)據(jù)一致,既具有準確的空間位置精度,又具有相應的符號、線型、顏色等信息,將有效拓寬圖庫一體化數(shù)據(jù)的使用范圍,保障測繪成果有效的服務(wù)于社會。
[1] 周曉芹,王偉樺,甘榮成. ArcGIS數(shù)據(jù)到CAD數(shù)據(jù)的轉(zhuǎn)換與符號化研究[J]. 測繪,2014(1):40~43.
[2] 張燕. 基于ArcGIS Representation的地形圖制圖表達庫研究[J]. 城市勘測,2015(5):71~74.
[3] 范占永,蔡東健,管發(fā)海等. DWG與SHP數(shù)據(jù)中空間圖元轉(zhuǎn)換技術(shù)的分析與應用研究[J]. 水利與建筑工程學報,2016(2):193~197.
[4] 謝江平,鄒自力. CAD矢量數(shù)據(jù)向ArcGIS轉(zhuǎn)換的方法[J]. 地理空間信息,2010(4) :130~133.
[5] 李瑞霞,楊敏,鄧喀中. 基于FME的GIS到CAD數(shù)據(jù)“無損”轉(zhuǎn)換[J]. 測繪通報,2009(5):55~59.
[6] 孟妮娜,周校東. GIS空間數(shù)據(jù)轉(zhuǎn)換為DXF格式的方法研究[J]. 測繪科學,2007(2):105~107.
[7] 劉衛(wèi)國,張弛月. 規(guī)則庫支持下的CAD數(shù)據(jù)到GIS數(shù)據(jù)自動轉(zhuǎn)換方法探討[J]. 科技創(chuàng)新導報,2009(9):252~253.
Full-feature Transformation of Cartographic Integration Data Based on ArcGIS Representation to AutoCAD Cartographic Data
Wei Shixuan1,2
(1.Chongqing Survey Institute,Chongqing 401121,China;2.Chongqing Engineering Research Center of Geographic National Condition Monitoring,Chongqing 401121,China)
In this paper,by studying the representation principle of ArcGIS and the structure of DXF file which is the data exchange format of AutoCAD,the author designs a set of AutoCAD symbolic and linetype library,and developed the data conversion system,which realizes the full-feature of cartographic integration data in 2000 scale based on ArcGIS representation transform to AutoCAD cartographic data.
topographic map;cartographic integration data;representation;data transform
1672-8262(2017)04-21-05
P208.1
A
2017—01—09
魏世軒(1988—),男,工程師,主要從事遙感應用及地理信息系統(tǒng)研發(fā)等技術(shù)工作。
住房和城鄉(xiāng)建設(shè)部科研項目(2015-K8-009)