ArcGIS軟件支持對(duì)CAD格式數(shù)據(jù)的讀取,但是我們通常要對(duì)數(shù)據(jù)進(jìn)行編輯,就必須將它轉(zhuǎn)換成ArcGIS所能編輯的數(shù)據(jù)格式(shapefile、coverage、geodatabase)。由于CAD格式只是對(duì)數(shù)據(jù)進(jìn)行邏輯分層,在物理存儲(chǔ)上與這幾種數(shù)據(jù)的要素類結(jié)構(gòu)不同,所以要在轉(zhuǎn)換時(shí)將CAD的各層元素獨(dú)立地識(shí)別和存儲(chǔ)。
常用的格式轉(zhuǎn)換工具,我們都可以在ArcToolBox中找到:CAD to Geodatabase、DLG to Coverage、DXF to Coverage。另外,ArcGIS還提供了一個(gè)Simple Data Loader,支持向Geodatabase中加載CAD數(shù)據(jù)。
無論是哪個(gè)工具或向?qū),在轉(zhuǎn)換過程中所涉及的問題都不外乎這幾個(gè)方面:
輸入CAD數(shù)據(jù):ArcGIS軟件能將CAD識(shí)別成點(diǎn)、線、面的要素類,在轉(zhuǎn)換時(shí)你要選擇正確的幾何類型
輸出數(shù)據(jù):格式只能是coverage或geodatabase,你可以根據(jù)需要用數(shù)據(jù)集將它們組織起來
空間參考信息:使用Simple Data Loader向?qū)r(shí),它會(huì)自動(dòng)采用目標(biāo)數(shù)據(jù)的空間參考信息
圖片 1
字段:CAD數(shù)據(jù)存儲(chǔ)的Item里包含的內(nèi)容并非地理數(shù)據(jù)的屬性,在轉(zhuǎn)換時(shí)可以將它們刪除,但必須保留缺省的字段
查詢:CAD數(shù)據(jù)的邏輯分層是通過Layer字段體現(xiàn)出來的,轉(zhuǎn)換時(shí)要將數(shù)據(jù)物理地分層,通過對(duì)Layer字段進(jìn)行查詢
圖片 2 Simple Data Loader的使用 Simple Data Loader可以分別在ArcCatalog和ArcMap中使用,它們的名稱略有不同,都是通過Customize窗口來加載。
圖片 3
上圖顯示的是在ArcCatalog中,你可以將Load Data命令拖到任意的工具條上,但最好是將它放在要素類的環(huán)境菜單(Feature class context menu)中,這樣更方便使用。
接下來給大家提供的是在ArcMap中使用Data Loader的練習(xí)。 打開練習(xí)文檔
1. 打開ArcMap。
2. 在標(biāo)準(zhǔn)工具條上點(diǎn)擊Open按鈕。在練習(xí)數(shù)據(jù)安裝目錄下(缺省目錄為C:\ArcGIS\ArcTutor)有一個(gè)WorkingWithCAD.mxd的地圖文檔,點(diǎn)擊打開該地圖文檔。
3. 將地圖放大到紅色陰影范圍。
圖片 4
加載Load Objects Wizard工具
你可以使用Load Objects Wizard直接從CAD要素類中加載CAD實(shí)體。首先需要在ArcMap中增加Load Objects Wizard。
在Tools菜單下點(diǎn)擊Customize。點(diǎn)擊Commands標(biāo)簽。
圖片 5
2.從列表中找到Data Converters,將Load Objects命令拖拉到Editor菜單中。關(guān)閉Customize對(duì)話框。
圖片 6
3.選擇Editor菜單,點(diǎn)擊Start Editing。將目標(biāo)圖層設(shè)置為L(zhǎng)otLine圖層,這就是需要加載這些parcel線的圖層。
加載CAD要素
CAD要素類中每一個(gè)CAD要素都包括了一個(gè)Layer字段。它可以標(biāo)示各個(gè)要素來自的圖層。在本練習(xí)中,你要將LotLines圖層中的要素加載到geodatabase要素類中。
在Editor工具條下,點(diǎn)擊Load Objects向?qū)А?
點(diǎn)擊Browse按鈕。在ArcTutor數(shù)據(jù)目錄下(缺省目錄為C:\ESRI\ArcTutor),在Editor\ExerciseData\EditingCAD目錄下。
雙擊Parcels.dwg要素集,選擇Polyline要素類,點(diǎn)擊Open按鈕。
點(diǎn)擊Add按鈕,將CAD要素類增加到數(shù)據(jù)源列表中。
點(diǎn)擊Next。
匹配輸入和目標(biāo)圖層 下一步你將對(duì)輸入和目標(biāo)圖層間的字段建立匹配。
圖片 7
接受缺省的字段設(shè)置,點(diǎn)擊Next。
定義查詢條件
因?yàn)镃AD圖層被放置在同一個(gè)要素類中,而使用Layer屬性值進(jìn)行標(biāo)示,你將定義一個(gè)屬性查詢只有圖層名稱為L(zhǎng)OT-L的要素才被加載到目標(biāo)圖層中。
點(diǎn)擊選中Load only features that satisfy the query。
點(diǎn)擊Query Builder定義個(gè)查詢。
雙擊Fields列中的Layer,它將在查詢語句中增加該字符串。
點(diǎn)擊”=”。
點(diǎn)擊Complete List顯示Layer字段中所有的屬性值。雙擊LOT-L,完成查詢語句。
在結(jié)束上面的步驟后,查詢語句為”Layer”=’LOT-L’。如果你很熟悉SQL語句,你可以直接在對(duì)話框中輸入查詢語句。
圖片 8
6.點(diǎn)擊Verify,檢查創(chuàng)建的SQL語句是否有效。
7.在確認(rèn)你創(chuàng)建的查詢語句是正確有效之后,點(diǎn)擊OK。 捕捉和有效性驗(yàn)證
下面,Object Loader將問你是否在加載過程中使用你設(shè)置的捕捉環(huán)境進(jìn)行捕捉,以及是負(fù)對(duì)要素的有效性進(jìn)行驗(yàn)證。
如果你關(guān)心輸入的要素間的連通性,你可以應(yīng)用捕捉。然而,你應(yīng)該了解這種操作將在當(dāng)前的捕捉容限范圍內(nèi)移動(dòng)。如果CAD數(shù)據(jù)是通過坐標(biāo)值構(gòu)建的,使用任何捕捉將降低原始數(shù)據(jù)的準(zhǔn)確性。
點(diǎn)擊Next(不要使用捕捉)。 結(jié)束向?qū)б约凹虞d要素 最后的對(duì)話框顯示了在向?qū)н^程中你的各種選項(xiàng),你可以檢查是否正確。如果有任何問題,可以使用Back按鈕后退。 點(diǎn)擊Finish 狀態(tài)欄中將顯示進(jìn)度。 一旦結(jié)束加載要素,你需要刷新地圖顯示區(qū)就可以看見新的lot線了。
圖片 9
這就是直接加載CAD的過程,我們可以控制字段、圖層和數(shù)據(jù)的一些規(guī)則,這個(gè)過程不需要設(shè)置空間參考信息。 如果要了解更多的信息,可以參考《ArcGIS初級(jí)教程》和《ArcMap編輯自學(xué)通》。