1. 程式人生 > >【ArcGIS操作】2 高階編輯篇

【ArcGIS操作】2 高階編輯篇

本內容整理自湯國安、錢柯健、熊禮陽等教授編著的《地理資訊系統 基礎實驗操作100例》。感謝!

文章目錄

1、地形圖配準(無地理座標系的地形圖)

序號 步驟 工具 位置 功能 備註
1 確定目標座標資訊 比例尺、座標範圍、投影方法;1:1萬(3度帶投影),1:2.5萬~50萬(6度帶)
2 確定四角點高斯投影座標 座標轉換工具 四角點標註的座標為該區域的地理座標
3 設定配準連線 新增控制點 【地理配準】(取消【自動配準】)>【新增控制點】(四角點,右擊輸入X和Y) 新增控制點 ArcMap中X軸為高斯座標的Y軸;【自動校正】容易造成圖片校正前後發生嚴重扭曲、錯位等錯誤
4 檢視連線表 檢視連線表 【地理配準】工具條 檢視殘差資訊篩選調整控制點 變換選擇【自動校正】或【一階多項式(仿射)】;一階多項式或二階多項式等變換方法是在犧牲校正精度的情況下保持影象的完整性(無錯位)
5 執行影象校正 糾正 【地理配準】工具條下拉框 進行資料的糾正 儲存校正後的地形圖為tif格式
6 定義投影 定義投影 【資料管理工具】>【投影和變換】>【定義投影】 對資料的投影進行定義

2、向量資料的空間校正

序號 步驟 工具 位置 功能 備註
1 載入空間校正工具條 採用不同地理座標系或未知座標系所表達的資料無法通過直接投影轉換的方式統一
2 設定校正引數 【開始編輯】>【空間校正】>【設定校正資料】>【校正方法】 仿射變換無法校正變形的線段
3 設定校正控制點 新建位移連線 【空間校正】工具條 實現源圖層與待校正圖層控制點的連線 檢視連線表檢視殘差和RMS誤差
4 校正資料 校正 【空間校正】工具條 實現待校正圖層向源圖層的空間校正 校正前可以先進行校正預覽

3、清除座標系資訊

方法 步驟 工具 位置 功能 備註
1 檢視當前資料座標系資訊 【屬性】>【源】 在不損壞資料座標的情況下清除當前地理資訊的座標系資訊
清除座標系資訊 定義投影 資料管理工具】>【投影和變換】>【定義投影】 對原始資料的投影進行定義 開啟空間參考資訊,點選清除,結果為座標系未知
2 1 檢視當前資料座標系資訊 【屬性】>【源】
清除座標系資訊 屬性 【圖層屬性】>【XY座標系】 清除資料的投影資訊 點選清除,結果為座標系未知

4、糾正柵格座標

通過間接修改柵格資料的基本引數,實現柵格圖層的偏移糾正

序號 步驟 工具 位置 備註
1 將兩個柵格資料轉ASCII檔案 柵格轉ASCII 【轉換工具】>【由柵格轉出】>【柵格轉ASCII】
2 糾正柵格資料的座標引數 對比ASCII檔案,將發生偏移的柵格資料的xllcornor和yllcorner改為另一柵格資料引數
3 生成被糾正的柵格資料 ASCII轉柵格 【轉換工具】>【轉為柵格】>【ASCII轉柵格】 【輸出資料型別】設為“INTEGER”,ASCII轉柵格生成的柵格資料不帶有座標資訊,如果原柵格資料有座標資訊則必須對糾正後的柵格資料進行座標定義

5、計算柵格行列號

通過像元中心相對於柵格初始源點座標的偏移量來求解像元行列號(柵格轉點)

序號 步驟 工具 位置 備註
1 給待計算行列號的向量點新增XY座標 新增XY座標 【資料管理工具】>【要素】>【新增XY座標】
2 檢視參考柵格資料起始點的座標值和解析度大小 【圖層屬性】>【源】>【像元大小】&【範圍】 一般從左往右列號逐漸增大,從下至上行號逐漸增大
3 新建向量點圖層欄位儲存行列號 新增欄位 【屬性表】>【表選項】>【新增欄位】 行列號為整型數值,需要用整型欄位儲存
4 計算行列號 欄位計算器 右鍵【屬性表字段】>【欄位計算器】 行號公式:Int(([Y座標-柵格範圍座標“下”的值)/像元大小值)+1;列號公式:Int(([X座標-柵格範圍座標“左”的值)/像元大小值)+1

6、計算柵格統計引數

柵格資料的基本引數包括資料區座標原點、邊界座標範圍、像元行列數、統計指標等引數

序號 步驟 工具 位置 備註
1 計算柵格統計指標 獲取柵格屬性 【資料管理工具】>【柵格】>【柵格屬性】>【獲取柵格屬性】 檢視統計指標選項通過【屬性型別】設定,在【選單欄】>【地理處理】>【結果】中檢視結果
2 檢視柵格統計屬性 【屬性】>【源】>【統計資料】

7、浮點型柵格轉整型

在特殊情況下必須滿足柵格屬性值為整型,如建立柵格資料的屬性表、將柵格區域轉面要素等

序號 步驟 工具 位置 備註
1 將柵格轉為整型 轉為整型 【Spatial Analyst】>【數學】>【轉為整型】 將浮點型柵格轉為整型後,自動完成屬性表計算

8、等高線生成DEM

數字地形可以用等高線資料(平面二維資料)、不規則三角網TIN資料(三維表面資料)和規則格網DEM資料(柵格資料)進行表達

序號 步驟 工具 位置 備註
方法一 1 建立TIN資料 建立TIN 【3D Analyst】>【TIN管理】>【建立TIN】 空間參考與等高線資料一樣,高度欄位選擇高程值欄位“CONTOUR”,SF-type選擇“硬斷線”。硬斷線模式保留等高線特徵,軟斷線模式保留等高線的趨勢
2 TIN資料轉DEM柵格資料 TIN轉柵格 【3D Analyst】>【轉換】>【由TIN轉出】>【TIN轉柵格】 取樣距離即生成柵格資料解析度
方法二 1 直接插值建立DEM資料 地形轉柵格 【Spatial Analyst】>【插值】>【地形轉柵格】

9、建立特徵線約束TIN

TIN資料要無法保留特殊的地形特徵如水系結構線,因此需要建立具有水系特徵約束的TIN資料,使得TIN資料保留特殊的地形結構特徵。TIN是三維表面資料,新增的特徵約束素必須具有三維高程屬性。

序號 步驟 工具 位置 備註
1 建立原始TIN資料 建立TIN 【3D Analyst】>【TIN管理】>【建立TIN】 輸入要素為等高線要素,空間參考與水系要素一樣
2 設定TIN顯示模式 【圖層屬性】>【顯示】>取消【邊顯示】 採用硬斷線模式構建的TIN資料會帶有“邊型別”的符號顯示(即等高線)
3 新增特徵約束 編輯TIN 【3D Analyst】>【TIN管理】>【編輯TIN】 【height_filed】:Shape,【tag_field】:預設,【SF_type】:硬斷線,【use_z】:ture。輸入要素水系資料為三維線資料其Shape屬性中具有Z欄位(高程欄位)

10、線要素生成規則或隨機取樣點

規則取樣按照等間距或固定樣點的模式,隨機取樣按照隨機模式。

序號 步驟 工具 位置 備註
1 建立空間取樣點 【新建】>【Shapefile】 【要素型別】:點,【空間參考】:與線要素一樣
2 啟動編輯點要素 構造點 【編輯器】下拉>【構造點】
3 等間距取樣 編輯點圖層>選中線要素>開啟構造點>選中距離選項>設定距離值>選中在起點和終點建立附加點>儲存並停止編輯
4 固定點取樣 編輯點圖層>選中線要素>開啟構造點>選中點數選項>設定點數值>選中在起點和終點建立附加點>儲存並停止編輯
5 隨機取樣 建立隨機點 【資料管理工具】>【要素類】>【建立隨機點】 先要選中線要素,約束要素類為line

11、刪除冗餘節點

當某段線要素被過多的節點表達時,常造成資料冗餘

序號 步驟 工具 位置 備註
1 顯示要素節點 啟動編輯器,雙擊線要素即可檢視
2 手動移除冗餘節點 刪除折點 【選單欄】>【自定義】>【工具條】>【編輯折點】>【刪除折點】 選中工具後直接框選要刪除的節點
3 批量刪除節點 簡化線 【製圖工具】>【製圖綜合】>【簡化線】 【簡化演算法】:POINT_REMOVE,【簡化容差】:0.0000001(儘可能小,接近0),資料框儘量要有座標資訊或設定地圖單位

12、編輯公共邊與頂點

相鄰面要素具有公共邊和公共頂點,若對其中一個面要素進行圖形編輯,必須保證其與相鄰面要素之間不存在空隙,即保證相鄰面要素在編輯前後保持拓撲不變

序號 步驟 工具 位置 備註
1 載入拓撲工具條 【選單欄】>【自定義】>【工具條】>【拓撲】>【拓撲工具條】
2 編輯多邊形公共邊 選擇【地圖拓撲】>設定編輯要素類>點選【拓撲編輯工具】選中一條公共邊>點選【顯示共享要素】(檢視該公共邊所屬多邊形要素)>雙擊公共邊顯示節點>移動節點以編輯多邊形
3 編輯多邊形公共頂點 點選【拓撲編鍵輯工具】>按住【N】鍵>框選一個公共頂點>點選【顯示共享要素】>移動頂點以編輯多邊形

13、構建點對連線

通過將各個點對的屬性關係進行符號化顯示,達到有效表達點集內部相互關係的目的,如點對連線邊的強度係數等。

序號 步驟 工具 位置 備註
1 構造視線 構造通視線 【3D Analyst工具】>【可視性】>【構造通視線】 視點和目標要素均設為同一點要素
2 清除冗餘記錄 按屬性選擇、匯出資料 【表選項】>【按屬性選擇】>【匯出資料】 按屬性選擇OID_OBSERV<>OID_TARGET,清除存在點與點自身連線的記錄
3 構建條件限制的連線 構造通視線 【3D Analyst工具】>【可視性】>【構造通視線】 與第一點不同的是這裡要設定連線欄位為ID,連線欄位限制了必須擁有相同欄位值的點才能構建連線

14、提取道路面中心線

以道路兩側邊界線為基礎,運用等分的幾何特徵實現中心線的提取。

序號 步驟 工具 位置 備註
1 提取道路面資料的輪廓線資料 面轉線 【資料管理工具】>【要素】>【面轉線】
2 保留道路兩側線資料 分割 【編輯器】>【分割】 將道路埠處多餘弧段移除
3 提取道路中心線 提取中心線 【製圖工具】>【製圖綜合】>【提取中心線】
4 編輯修改結果資料 編輯器 由於道路交叉複雜,該工具提取結果會存在一定錯誤

15、建立漁網Fishnet

規則分佈的格網常被作為區域統計分析的基本單元,格網的大小與分佈特徵可根據特定的需要進行調整。

序號 步驟 工具 位置 備註
1 建立初始魚網 建立魚網 【資料管理工具】>【要素類】>【建立魚網】 魚網源點X軸座標決定了魚網的起始點,Y軸座標的確定決定了魚網的X軸方向和Y軸方向。像元寬度和高度設為25000代表每隔25km設定一個監測點。幾何型別有POLYGON和POLYlINE
2 調整魚網位置 編輯器

16、填充面要素空洞

填充空洞可以採用逐個填充的方式,也可以採用快速大批量填充的方式。、

序號 步驟 工具 位置 備註
1 繪製覆蓋待填充空洞的面要素 建立要素 【編輯器】>【建立要素】>【面】 面要素設為plg,繪製一個包含空洞整個範圍的任意草圖面資料
2 填充空洞 合併 【編輯器】>【合併】 選擇有空洞的面圖形逐個和plg合併
3 繪製覆蓋所有面區域的圖形 將圖形轉換為要素 【繪圖】工具條>【繪製矩形工具】>【將圖形轉換為要素】 輸出要素設為cover
4 標識面要素 標識 【分析工具】>【疊加分析】>【標識】 輸入要素為cover,標識要素為plg,輸出要素為cover_identity,該操作依據plg圖層資料將新面圖層進行分割,分割後的圖層中既包含了有空洞的面圖形,也包括了空洞區域的面圖形,以及面外部區域的多餘資料
5 打散多部分要素 多部分至單部分 【資料管理工具】>【要素】>【多部分至單部分】 輸入要素為cover_identity,輸出要素為new_plg。空洞區域圖形與面外部多餘圖形被融合到同一記錄。
6 匯出混合要素資料 匯出資料 按屬性選擇面數據外部的多餘圖形記錄,點選屬性表工具欄中的【切換工具】,選中所有面圖形和空洞區域資料 匯出資料為plgs
7 融合面要素與空洞區域要素 融合 【資料管理工具】>【製圖綜合】>【融合】 輸入要素為plgs,融合欄位為FID_cover,去除勾選【建立多部分要素】。受融合工具影響,結果資料中不能保留原始面的屬性記錄,若要保留,建議使用屬性傳遞或屬性表連線等方式

17、融合細碎多邊形

進行多邊形相交、裁剪或柵格資料轉向量面數據等操作後,常常會在面邊界處生成許多細碎小多邊形。

序號 步驟 工具 位置 備註
1 查詢細碎多邊形 按屬性選擇 屬性表 查詢條件根據情況設定,例如Area<10000,按面積查詢
2 融合小多邊形 消除 【資料管理工具】>【製圖綜合】>【消除】 小多邊形僅融合到相鄰多邊形中,因此勾選【按邊界消除面】

18、按欄位融合多邊形

序號 步驟 工具 輸入要素 輸出要素 引數 備註
1 檢視圖層屬性欄位
2 融合同省的縣面數據 融合(資料管理工具>製圖綜合) 縣行政區 province 融合欄位“ProvinceId”

19、按要素融合多邊形

序號 步驟 工具 輸入要素 輸出要素 引數 備註
1 選擇線要素所覆蓋的所有面要素 按位置選擇 目標圖層“regions”,源圖層“road”,空間選擇方法“目標圖層要素與源圖層要素相交”,應用搜索距離“200” 本例資料中未設定空間座標系,所以搜尋距離使用了相對距離值200,實際應用請考慮具體應用條件
2 合併面要素 合併(編輯器) 所有要素將變為一條記錄,原始屬性丟失
3 分割多邊形要素 多部分至單部分(資料管理工具>要素) regions results

20、融合相鄰面要素

序號 步驟 工具 輸入要素 輸出要素 引數 備註
1 選擇特定面要素 按屬性選擇 cities
2 匯出選中要素 匯出要素 cities two
3 查詢相鄰面要素 按位置選擇 目標圖層“cities”,源圖層“two”,空間選擇方法“目標圖層要素與源圖層要素相交”
4 匯出新面要素圖層 匯出要素 cities near
5 選擇相鄰要素
6 融合相鄰面要素 消除(資料管理工具>製圖綜合) near all

21、按分區劃分向量圖層

序號 步驟 工具 輸入要素 輸出要素 引數 備註
1 建立魚網 建立魚網(資料管理工具>要素類) fishnet 模板範圍“與圖層area相同”,列數行數均為“2”,幾何型別“POLYGON”
2 建立分割欄位 新增欄位 新增新欄位“AreaID”,型別“文字”,分別輸入“Area1”、“Area2”、“Area3”、“Area4” 分割欄位必須為文字型
3 分割向量圖層 分割(分析工具>提取) area 工作空間:result,輸出圖層:“Area1”、“Area2”、“Area3”、“Area4” 分割欄位“AreaID”
4 批處理分割多圖層 右擊分割工具,選擇批處理

22、按分區劃分柵格圖層

序號 步驟 工具 輸入要素 輸出要素 引數 備註
1 四分割法分割 分割柵格(資料管理工具>柵格>柵格資料處理) dem 輸出資料夾、輸出基本名稱:dem 分割方法“NUMBER_OF_TILES”,輸出格式“TIFF”,輸出柵格數X座標Y座標均為“2” 分割方法為“SIZE_OF_TILE”可人為指定每個分割部分的大小進行分割
2 批處理分割

23、以柵格分割槽裁剪面要素

序號 步驟 工具 輸入要素 輸出要素 引數 備註
1 將柵格資料轉為整型 轉為整型(Spatial Analyst工具>數學) raster int_raster
2 重分類柵格分割槽 重分類 raster rec_raster 新值必須為整型,轉向量面數據的柵格必須為整型
3 柵格轉向量面數據 柵格轉面 rec_raster region 取消勾選“簡化面” 欄位GRIDCODE對應柵格value欄位
4 裁剪向量圖層 相交(分析工具>疊加分析) region、plgs intersect 輸出型別“INPUT”,即與輸入要素型別相同 欄位id_1對應plgs的id欄位

24、CAD轉要素類

序號 步驟 工具 輸入要素 輸出要素 引數 備註
1 檢視CAD資料 新增資料 cad.dwg 其屬性表中Layer欄位對應CAD資料中各個圖層的名稱
2 新增【載入資料】工具 選單欄>自定義>自定義模式>命令>資料轉換器>載入物件工具
3 建立空要素類 新建要素類 DM面數據
4 匯入CAD資料 選中面要素圖層,點選載入物件按鈕 CAD資料中的Polygon DM 因為轉換時僅將“DM”圖層進行載入,所以選擇“僅載入滿足查詢的要素”,查詢構建器“Layer=‘DM’
5 檢查載入結果 屬性表

25、匯出點要素的座標值

序號 步驟 工具 輸入要素 輸出要素 引數 備註
方法一 1 新增XY座標 新增XY座標(資料管理工具>要素) pts 輸出資料把汗有欄位名稱,將整個屬性表進行輸出
2 表選項>匯出(屬性表) pts table.txt
方法二 1 將要素屬性匯出到ASCII 將要素屬性匯出到ASCII(空間統計管理工具>工具) pts table.txt 值欄位“Id”,分隔符“COMMA”(逗號分隔) 本工具預設將空間座標值作為欄位輸出;將欄位值進行輸出,不包含欄位名稱,可自行選擇輸出的屬性欄位

26、匯出線、面要素的座標值

序號 步驟 工具 輸入要素 輸出要素 引數 備註
1 提取線要素折點 要素折點轉折點 line line_vertex 點型別“ALL” ALL表示提取線要素上所有折點資料,不同線要素上的折點記錄將以“ORIG_FID”欄位進行區分
2 匯出座標系至TXT檔案 將要素屬性匯出到ASCII(空間統計工具>工具) line_vertex line_vertext.txt 值欄位“ORIG_FID”,分隔符“COMMA” 座標檔案中以第3列來標記不同線要素的點座標,即“ORIG_FID”
3 匯出面要素折點座標 要素折點轉點、將要素屬性匯出到ASCII 同前面步驟

27、*Shapefile與Graphic轉換

序號 步驟 過程 備註
1 符號化Shapefile資料 在要素轉圖形的過程中,系統將要素當前的符號轉為圖形
2 將要素轉為圖形 右擊要素圖層選擇【將要素轉換為圖形】>選擇【繪製轉換的圖形並繪製要素】繪製轉換的圖形並繪製要素 Graphic圖形可以使用常規選擇工具選中並進行放大、縮小、平移等編輯操作,按【delete】鍵可直接刪除
3 與Office軟體進行互動 選中要素右鍵複製,可在Office軟體中貼上 也可將PowerPoint中圖形貼上到ArcMap中
4 將圖形轉為要素 繪圖工具條>將圖形轉換為要素

28、柵格與ASCII轉換

與向量資料的儲存方式不同,柵格資料的資料結構一般為陣列矩陣結構,並不儲存每個柵格位置處的X、Y座標,而是儲存柵格起始點X、Y和每個柵格相對於起始點的偏移量,即可實現柵格的有效儲存。

序號 步驟 過程 備註
1 柵格資料轉ASCII檔案 柵格轉ASCII ASCII檔案中前六行記錄列數、行數、柵格資料塊左下角X座標值、柵格資料塊左下角Y座標值、柵格解析度大小和柵格資料中無效值,第七行開始記錄柵格資料塊,每個柵格值以空格分隔
2 構造柵格文字檔案 參照柵格文字檔案的引數格式
3 ASCII檔案轉柵格資料 ASCII轉柵格

* 29、TIFF與GRID柵格轉換

  • TIFF格式的柵格資料常以單檔案形式儲存,不僅儲存有R、G、B三波段的畫素值,還儲存有地理座標資訊。
  • GRID格式的柵格資料常以多檔案的形式進行儲存,且僅儲存單波段的柵格值,也具有地理座標資訊。
  • 與GRID柵格資料相比,TIFF格式檔案結構簡潔,可以被一般的影象軟體開啟,常作為影像資料的主要儲存格式。
序號 步驟 過程 備註
1 載入TIFF柵格資料
2 TIFF轉GRID 右擊載入的R波段資料>資料>匯出柵格資料>位置、名稱、格式(GRID) 需要將TIFF的R、G、B波段依次轉為GRID柵格資料
3 GRID轉單波段TIFF 右擊載入的R圖層>資料>匯出柵格資料>位置、名稱、格式(TIFF) 為了能被一般影象軟體開啟,必須勾選【使用渲染器】選項,否則無法使用影象軟體檢視該柵格資料。一個GRID柵格資料只能轉單波段的TIFF柵格資料
4 GRID轉RGB三波段TIFF 資料管理工具>柵格>柵格資料處理>波段合成 載入的次序對應于波段的順序

30、由點座標生成面要素

序號 步驟 過程 備註
1 匯入點集資料至Excel 匯入文字檔案,分隔符為逗號
2 新增點集與面的對應關係 在Excel中第一行新增資料標識以說明每列資料的含義(X座標自、Y座標值、PID(編號)、AID(記錄點、邊與其對應面的關係欄位))
3 匯入點資料 新增XY座標 得到點事件檔案
4 生成點資料 匯出資料
5 生成線資料 點集轉線(資料管理工具>要素),輸入要素“pts”,輸出要素“lines”,線欄位“AID”,排序欄位“PID”,勾選閉合線 線欄位標明瞭每個點和邊所屬的面,排序欄位標明瞭連線點時的順序
6 生成面數據 要素轉面工具

31、二維點、線轉三維

序號 步驟 工具 輸入要素 輸出要素 引數 備註
1 轉換三維點資料 3D Analyst工具>3D要素>依據屬性實現要素轉3D point point3d 高度欄位“height” 結果Shape欄位變為“點ZM”,即為三維點資料格式
2 轉換三維線資料 3D Analyst工具>功能性表面>插值Shape dem、line line3d 結果Shape欄位變為“折線ZM”,即為三維線資料格式
3 三維顯示 ArcScene>載入dem、point3d、line3d dem圖層屬性>基本高度>在自定義表面上浮動

32、二維面轉體模型

序號 步驟 過程 備註
1 檢視二維建築物面數據 屬性表中是否有關於高度值的欄位
2 拉伸顯示建築物 ArcScene>圖層屬性>拉伸>勾選“拉伸圖層中的要素。可將點拉伸成垂直線,將線拉伸成牆面,將面拉伸成塊體”>拉伸值表示式>選擇拉伸欄位 此時僅為三維表達,並未生成三維體資料
3 生成三維體資料 ArcScene>3D Analyst工具>轉換>3D圖層轉要素類 輸入要素圖層為已拉伸打的圖層,可在結果圖層屬性中檢視源的幾何型別為“多面體(Multipatch)”

33、三維模型轉體模型

體模型是面向三維空間的新資料幾何型別,其直接表達了三維閉合空間。

序號 步驟 過程
1 匯出三維模型 在Sketchup中將影像移除後的三維模型匯出為【.dae】格式的檔案
2 匯入三維模型 ArcScene>3D Analyst工具>轉換>由檔案轉出>匯入3D檔案