臺澎dtm切割介面

Table of contents

背景

資料之選擇

  • 近年來內政部20m DTM(數位地形模式 1)數據並沒有顯著的更新(詳dtm檔案收集情況),由於2020版本DTM在苗栗地區有顯著的缺值,因此使用2018年版本。
  • 解析度:雖內政部也有1m解析度的DTM,但以噪音模式動輒10~100公頃範圍,將造成計算困難。全島之總體處理與儲存也有很大的挑戰。
  • 此處選擇以20m解析度尚稱合理。

DTM的前處理

  • 最花時間的步驟為直角座標系統與經緯度系統的轉換,如果每次轉換將會造成速度瓶頸。
  • 轉換後的儲存格式:按照GPT的建議,以記憶體映射的方式儲存最為有效,詳見Geotiff格式DTM之前處理

系統架構策略考量

  • 前台
    • 原生的leaflet與html搭配是最穩定、功能齊全且易於發展的方案。
    • streamlit網頁設計雖然較為簡潔,但元件不多、與js、css等還是有很大的扞格。
    • 由於等高線是專案關切主題、而不是地面資訊,此處選擇Mapbox的圖磚,較內政部圖磚openTopoMap等來得清晰簡潔、遮蔽較少,有較高的地圖品質(雖然尚未全面中文化)。
  • API伺服器
    • 此處只有傳送邊界座標(bounds:東北、西南經緯度座標共4個數字)、以及切割後處理好的地形圖檔(.png.dxf後者詳),算是單純,不考慮複雜且功能完整的API伺服器。
    • GPT建議以Flask來撰寫最簡潔穩定,且最受歡迎。
    • Flask伺服器可以同時營運html及多個API,程式架構單純。
  • 資料庫
    • 因為是格柵資料,具有很高的系統性,不需要建立關聯或非關聯資料庫與查詢系統
    • 直接以格柵檔案進行存取最有效率
    • 如需更換DTM來源,所需的轉換作業也最單純。

前台畫面與應用

服務網址

進入畫面與滑鼠內設功能

  • 進入伺服器後,滑鼠默認自動進入矩形圖框切割功能、選取縮放(fitBounds)之後,會清除前次選取圖框、並再次進入切割狀態。
    • 此狀態下可接受滾輪放大縮小、但不能接受平移(pan)
    • 如果要移動地圖,需要按esc鍵、或點選垃圾桶clear all來停止切割功能。
  • 畫面如下,說明如後。

功能鍵說明

  1. 矩形圖框切割功能:滑鼠雖然內設具有矩形圖框切割功能,但經取消(按esc鍵)後,如要繼續選取,可以點選黑色白底四方形鍵再次啟動切割功能。
  2. 編輯圖框與清除選取
  3. 將選取結果送交等高線繪製API程式,圖檔可直接與地圖等高線定性比較(詳下)。
    • 點選此鍵前需先按esc鍵取消繼續切割。
    • 點選後系統將會在主機上產生等高線matplotlib圖檔,同時也在客戶端下載目錄儲存一份。檔名為terr_隨機碼.png
    • 高度值:選取範圍內最低到最高共9個間隔。
  4. 功能與3.幾乎一樣,但為每公尺的等高線dxf
    • 檔名為terr_隨機碼.dxf
    • 可以用線上dxf viewer來檢視,如sharecad.org
  5. 使用手冊

案例比較

  • 個案位置:屏東縣來義鄉
  • mapbox切割範圍(定稿為紅色框線)

  • matplotlib等高線圖:最低~最高10個等級

  1. “數值高程模型(DEM)或數字地表模型(DSM)是一種3D電腦圖形表示,用於表現地形資料,代表地形或覆蓋物體,通常是指行星、月球或小行星的地形。”全球DEM”指的是一個離散的全球網格。DEM在地理資訊系統(GIS)中經常被使用,並且是數字製作的地形圖最常見的基礎。數字地形模型(DTM)特指地面表面,而DEM和DSM可能代表樹頂冠層或建築物屋頂。wiki “