用 Grass 的 v.clean 修正幾何錯誤、重疊區與填補空隙
專業生草空間地理分析工具 雖然說現在 Grass 已經整合入 QGIS 的 Processing Toolbox 中,但畢竟是第三方工具的關係,有時候會出現一些小 Bug 導致無法正常運作。例如流浪貓的前輩想在 QGIS 中用 v.clean 來清除向量地圖的一些拓撲錯誤時,就常發生無法運作或執行後錯誤依然存在、但獨立運作時卻又完全正常的奇怪狀況。 習維尼 但無論如何,Grass 依然是個免費、開源又好用的地理資訊系統 (GIS),常被用來處理點陣 (Raster) 和向量 (Vector) 圖型資料。 安裝 Grass 於軟體管理員搜尋並安裝 Grass 即可。 Grass 文字界面操作 (command line) 打開終端機,以輸入以下指令啟動 Grass 新專案 grass78 -c EPSG:3857 /home/user/grass 或打開現有專案 grass78 "/home/user/grass/island/PERMANENT" -gtext 匯入向量圖 輸入以下指令,將 test_1.gpkg 匯入 Grass v.in.ogr input=test_1.gpkg 將 test_1 進行幾何錯誤清理後,輸出成 test_1_clean v.clean input=test_1 output=test_1_clean tool=break,snap,bpol threshold=1 參數說明 break: 斷開交叉的線段。 bpol: 打破重疊多邊形的邊界。 snap: 將線連結到頂點上。 threshold: 臨界值,處理所有小於此距離的點,以地圖單位為準。 因為 Grass 出現無法用 rmdupl 去除重疊區 的奇怪問題,因此換回 QGIS 的 Delete duplicate geometries 來替代。習病毒 若過程沒出現錯誤訊息,則可將其輸出成 test_1_clean.gpkg v.out.ogr -c input=test_1_clean type=ar...