陳錦嫣編 應用 Model Builder 於土石方資源堆置場之選址分析 一 學習目標二 學習架構三 Model Builder 簡介 五 Model Builder 進階應用 自定輸入圖資 六 作業 四 實例練習
518 一 學習目標 本章是以土石方堆置場之選址分析為例, 介紹示範 Model Builder 的使用方式 上一章是以 ArcToolbox 中的分析工具, 個別執行以達成選址分析, 不僅過程繁鎖, 而且產生的圖資檔案太多, 管理不易 最重要的是, 在以多個工具連續處理後, 如果過程中的其中一個工具參數下錯時, 則需要在修正參數工具後的後續工具都需要重新執行過一次, 才能求得正確的結果 本章的重點是以 Model Builder 方式, 處理多重步驟分析的過程, 以提昇工作效率 使用 Model Builder 的正確觀念是必須先將所要的分析圖資以 ArcToolbox 所提供的工具執行操作過後, 確定各工具的參數設定與結果都是所需的結果後, 再將各工具以 Model Builder 組合成客製化的分析工具 因此, 建議讀者進入本章前, 請先熟悉第二十二章之操作內容及步驟, 再進入本章節時, 會讓讀者對 Model Builder 功能之便利性及其設計之巧思, 留下深刻的印象
應用 Model Builder 於土石方資源堆置場之選址分析 519 二 學習架構 以上一章 " 土石方堆置場之選址分析 " 的思維邏輯方式, 以住宅及機關 水系 水庫及嘉義市行政邊界四張圖層, 結合 Buffer Merge Clip Dissolve Union Select Multipart To Singlepart 及 Calculate Areas 八個工具結合成一個復合式模組, 以提高分析效率 本章將分析步驟, 以繪製流程圖方式, 一步步地建構 " 嘉義市土石方堆置場之選址分析模組 ", 如下圖所示 :
520 三 Model Builder 簡介 Model Builder 是 ESRI 公司在 ArcGIS 9.X 版開始提供的 Geoprocessing Framework 之一, 提供使用者在圖形介面下, 設定圖資處理方式 在上一章節, 使用了多個 ArcToolbox 裡的 Tools 處理圖資, 每個工具都是一個處理程序, 而一個完整的處理程序由三個部份所組成 ; 來源資料 (Project data) 程序方法 (Tool) 及輸出資料 (Derived data) Project data Tool Derived data 使用者可以自行建立一個空白的 Model, 並可以將 ArcToolbox 裡的工具拉到 Model 裡, 變成自行建立 Model 的子程序之一, 而且 Model 內如果有兩個或兩個子 程序時, 可以將 A 程序的輸出設定成為 B 程序的輸入 因此 Model Builder 具有圖形化作業 快速分析 重覆執行相同的模組, 並且 可觀查及修正參數後, 模擬結果的差異
應用 Model Builder 於土石方資源堆置場之選址分析 521 四 實作練習 4.1 劃定水源保護區 水庫集水區 1000 公尺的範圍, 為不 得設置場址之區域 (1) 執行 ArcMAP (2) 點選工具鈕 加入 " 嘉義市行政邊界 " 及 " 水庫 " 兩張圖層 (3) 按下開啟 ArcToolbox 視窗, 並在 ArcToolbox 層上按下滑鼠右鍵 選 擇 New Toolbox, 並將新增的 Toolbox 名稱變更為 MyTools
522 (4) 在新建立的 "MyTools" 上按滑鼠右鍵 點選 New Model, 此時會在 "MyTools" 裡建立一個空白的新 Model, 預設名稱為 "Model" (5) 水庫 1000 公尺保護區之環域分析程序建立 (a) 將 Buffer Tool 拖拉到 Model 視窗 Arc Toolbox 視窗 Analysis Tools Proximity Buffer 用滑鼠左鍵將 Buffer 功能拖拉至 Model 視窗
應用 Model Builder 於土石方資源堆置場之選址分析 523 (b) 在 上按右鍵 選擇 Rename... 將 buffer 工具名稱變更為 " 水庫 _Buffer_1KM" (c) 回到圖例視窗中將 " 水庫 " 圖層拉到 Model 視窗, 此時水庫圖層以藍色橢圓形的樣式顯示 (d) 點選工具鈕, 此時滑鼠游標會變成魔術棒的樣子 用先點選, 再點選 此時 Buffer 工具會變成 (e) 點選工具鈕, 在上按滑鼠右鍵, 並選擇 Open... (f) 在 Buffer 對話框可以看到 Input Features 已由 d 步驟中使用 連結 後, 已設定為 " 水庫 " 圖層, 而 Output Feature Class 也自動以 Input Features 來源圖層自動產生一路徑相同, 在原始檔名後方加入 "_Buffer" 的輸出位置檔名, 將輸出檔名變更為 " 水庫 _Buffer_1KM.shp", 以利未來辨視輸出成果圖資的產生方式
524 在 Distance [value or field] 以 Linear unit 的方式設定 Buffer 的 距離為 1000Meters, 並按下鈕
應用 Model Builder 於土石方資源堆置場之選址分析 525 4.2 劃定河川保護區 距河川 400 公尺的範圍, 為不得設 置場址之區域 (1) 點選工具鈕 加入 " 水系 " 圖層 (2) 河川 400 公尺保護區之環域分析程序建立 (a) 將 Buffer 工具拖拉到 Model 視窗, 並將 Buffer 更名為 " 水系 _Buffer_400M" (b) 在圖例視窗中, 將 " 水系 " 圖層拉到 Model 視窗, 並以將 " 水系 " 與 " 水系 _Buffer_400M" 工具連結 (c) 在 上按滑鼠右鍵, 並選擇 Open, 在 Output Feature Class 裡設定輸出圖層名稱為 " 水系 _Buffer_400M.shp" 在 Distance [value or field] 以 Linear unit 的方式設定 Buffer 的 距離為 400Meters, 並按下鈕
526 4.3 劃定住宅及機關保護區 住宅及機關外 150 公尺的範 圍, 為不得設置場址之區域 (1) 點選工具鈕 加入 " 住宅及機關 " (2) 住宅及機關 150 公尺之環域分析程序建立 (a) 將 Buffer 工具拖拉到 Model 視窗, 並將 Buffer 更名為 " 住宅及機關 _Buffer_150M" (b) 在圖例視窗中, 將 " 住宅及機關 " 圖層拉到 Model 視窗, 並以 將 " 住宅及機關 " 與 " 住宅及機關 _Buffer_150M" 工具連結 (c) 在 上按滑鼠右鍵, 並選擇 Open, 在 Output Feature Class 裡設定輸出圖層名稱為 " 住宅及機關 _Buffer_150M.shp", 及在 Distance [value or field] 以 Linear unit 的方式設定 Buffer 的距離為 150Meters, 並按下鈕
應用 Model Builder 於土石方資源堆置場之選址分析 527 4.4 將水庫 水系 住宅及機關之保護區合併成 不得設 置堆置場之區域 圖層 (1) 將 Merge 工具拖拉到 Model 視窗 Arc Toolbox 視窗 Data Management tools General Merge 用滑鼠左鍵拖拉至 Model 視窗中 (2) 將 " 水庫 _Buffer_1KM.shp" " 水系 _Buffer_400M.shp" " 住宅及機關 _Buffer_150M.shp" 三個 Buffer 程序的輸出成果設定為 Merge 程序的輸入來源 (a) 以 將 " 水庫 _Buffer_1KM.shp" " 水系 _Buffer_400M.shp" " 住 宅及機關 _Buffer_150M.shp" 連結到 Merge 工具 (b) 在上按滑鼠右鍵, 並選擇 Open..., 此時可看到以連結的 " 水庫 _Buffer_1KM.shp" " 水系 _Buffer_400M.shp" " 住宅及機關 _Buffer_150M.shp" 已設定在 Input Features 將 Output Features 的輸出檔名變更為 " 不可設置之區域.shp"
528 4.5 使用 Clip 工具將所分析出的 " 不可設置之區域.shp" 圖 層以 " 嘉義市行政邊界.shp" 為裁切範圍切出 嘉義市 內不得設置堆置場之區域 (1) 將 Clip 工具拖拉到 Model 視窗 Arc Toolbox 視窗 Analysis Tools Extract Clip 用滑鼠左鍵拖拉至 Model 視窗中 (2) 將 " 不可設置之區域.shp" 以 " 嘉義市行政邊界.shp" 為擷取的範圍切圖, 以取得 " 嘉義市不可設置之區域.shp" (a) 在圖例視窗中, 將 " 嘉義市行政邊界 " 圖層拖拉至 Model 視窗中 (b) 在 上按滑鼠右鍵, 並選擇 Open, 在 Clip 對話框中分別以下 拉選取的方式設定 Input Features 為 " 不可設置之區域.shp", Clip Features 為 " 嘉義市行政邊界 " 並在 Output Feature Class 設定輸出檔 名為 " 嘉義市不可設置之區域.shp", 按下鈕
應用 Model Builder 於土石方資源堆置場之選址分析 529 4.6 以 Dissolve 工具將 " 嘉義市不可設置之區域.shp" 內的 資料筆數分解成多個單筆資料 (1) 將 Dissolve 工具拉到 Model 視窗 Arc Toolbox 視窗 Data Management tools Generalization Dissolve 用滑鼠左鍵拖拉至 Model 視窗中 (2) 在上按滑鼠右鍵, 並選擇 Open..., 在 Dissolve 對話框中以下拉選取的方式設定 Input Features 為 " 嘉義市不可設置之區域.shp", 並在 Output Feature Class 設定輸出檔名為 " 市區內不可設置之區域 _Dissolve.shp", 按下鈕
530 4.7 對 " 市區內不可設置之區域 _Dissolve.shp" 及 " 嘉義市 行政邊界 " 使用 Union 工具求得 嘉義市內可設置堆 置場之區域 (1) 將 Union( 聯集 ) 工具拉到 Model 視窗 Arc Toolbox 視窗 Analysis Tools Overlay Union 用滑鼠左鍵拖拉至 Model 視窗中 (2) 在上按滑鼠右鍵, 並選擇 Open, 在 Dissolve 對話框中以下拉選取的方式在 Input Features 加入 " 嘉義市行政邊界 " 及 " 市區內不可設置之區域 _Dissolve.shp", 並在 Output Feature Class 設定輸出檔名為 " 嘉義市可設與不可設置區域區格.shp", 按下鈕
應用 Model Builder 於土石方資源堆置場之選址分析 531 4.8 使用 Seletc 工具在 " 嘉義市可設與不可設置區域區 格.shp" 中選取出嘉義市內可設置區域範圍 (1) 將 Select( 選取 ) 工具拉到 Model 視窗 Arc Toolbox 視窗 Analysis Tools Extract Select 用滑鼠左鍵拖拉至 Model 視窗中 (2) 在上按滑鼠右鍵, 並選擇 Open, 在 Select 對話框中以下拉選取的方式設定 Input Features 為 " 嘉義市可設與不可設置區域區格.shp",Output Feature Clss 設定輸出檔名為 " 嘉義市可設置區域範圍.shp" (3) 在 Select 對話框裡的 Expression (Optional) 項目裡直接輸入 "FID_ 嘉義 _1"=-1 按下鈕
532 Select 工具裡的 Expression 設定成 "FID_ 嘉義 _1"=-1 並不是全部的設定值都是如此, 建議使用者在 Model Builder 設定各個工具參數時, 先以手動的方式執行每一個工具, 如此才能正確的對每一個工具的參數值做正確的設定 4.9 使用 "Multipart To Singlepart" 將 " 嘉義市可設置區域 範圍.shp" 圖層內同筆記錄內的多部份圖徵分割成獨 立記錄的圖徵 (1) 將 Multipart To Singlepart 工具拉到 Model 視窗 Arc Toolbox 視窗 Data Management tools Features Multipart To Singlepart 用滑鼠左鍵拖拉至 Model 視窗中 (2) 在上按滑鼠右鍵, 並選擇 Open, 在 Multipart To Singlepart 對話框中以下拉選取的方式設定 Input Features 為 " 嘉義市可設置區域範圍.shp", 並在 Output Feature Class 設定輸出檔名為 " 嘉義市可設置區域範圍 _ 分割.shp", 按下鈕
應用 Model Builder 於土石方資源堆置場之選址分析 533 4.10 計算分割後嘉義市可設置堆置場各小區域面積 (1) 將 Calculate Areas 工具拉到 Model 視窗 Arc Toolbox 視窗 Spatial Statistics Tools Utilities Calculate Areas 用滑鼠左鍵拖拉至 Model 視窗中 (2) 在上按滑鼠右鍵, 並選擇 Open, 在 Calculate Areas 對話框中以下拉選取的方式設定 Input Features 為 " 嘉義市可設置區域範圍 _ 分割.shp", 並在 Output Feature Class 設定輸出檔名為 " 嘉義市可設置堆置場各小區域面積.shp", 按下鈕
534 4.11 取消 " 嘉義市可設置堆置場各小區域面積.shp" 的 Intermediate 在 Model Builder 裡的程序裡, 輸出的預設狀態是過渡性的暫存檔, 所以當以多個工具組合成一個自定的程序工具時, 要將最後一個子程序輸出的 Intermediate 設定取消才能得得最後的成果圖資 在 Calculate Areas 工具子程序的輸出 上按滑鼠右鍵, 可以看 到 Intermediate 設定預設是勾選的, 選擇 Intermediate 使勾選取消
應用 Model Builder 於土石方資源堆置場之選址分析 535 4.12 儲存 Model, 並執行 Model (1) 在 Model Builder 的一般工具列上按下, 儲存所建立的 Model 並關 閉 Model 視窗 (2) 在 ArcToolbox 視窗 MyTools Model 上滑鼠左鍵雙擊, 執行以上步驟 所建立的 Model, 按下鈕執行 Model (3) 執行 Model 時, 會顯示 Model 執行狀態訊息對話框, 對話框內會記錄了整個 Model 執行的過程與狀態, 如果執行過程有任錯誤都會在對話框內顯示, 以提供使用者修正 Model 的錯
536 誤訊息 按下結束 Model
應用 Model Builder 於土石方資源堆置場之選址分析 537 4.13 加入 " 嘉義市可設置堆置場各小區域面積.shp" 圖層, 並 檢視屬性資料表中所計算出來可設置堆置場各小區域 面積值 (1) 點選加入 " 嘉義市可設置堆置場各小區域面積.shp" (2) 開啟 " 嘉義市可設置堆置場各小區域面積.shp" 屬性資料表, 裡面的 F_AREA 欄位即為各個小區域面積值 請試著自行修正後, 並執行 MODEL, 並求得結果