OsmAnd 是一套 Android 手機作業系統上使用 OSM 地圖的軟體,可用於檢視、記錄及導航,山哥目前用它來記錄騎單車的軌跡,然後用這個軌跡在電腦上修正 OSM 地圖,在修正完後有時需要實地確認是否有修正正確或遺漏的地方,但 OsmAnd 的地圖大約一個月更新一次,所以很難用 OsmAnd 去實地確認,再加上山哥手機無法上網,也無法用 Web 方式進行確認,所以才會想是否有其方式或軟體可以解決這個問題? 在Facebook OSM 社群中有先輩說可以有付費贊助功能(OSM Live)或自己build圖資,而山哥喜歡自己動手作,所以選擇了後者。

要自己 build 圖資可參考先輩提供的網址 OsmAndMapCreator, 其過程如下:

1.由 Geofabrik下載 PBF 地圖檔。
2.用 OsmAndMapCreator 把 PBF 檔案載為 OsmAnd 所需的 OBF 檔。
3.把 OBF 複製至手機上去。

這邊記錄下來我的操作過程

 

手動操作

1.下載 PBF 檔

我是直接由 http://download.geofabrik.de/asia/taiwan.html 下載台灣的 PBF 檔。

2.下載 OsmAndMapCreator

http://download.osmand.net/latest-night-build/OsmAndMapCreator-main.zip 下載 OsmAndMapCreator

OsmAndMapCreator是個 JAVA 寫成的程式,所以你需要把 JRE 設定好才能執行,可參考網站上的說明。

3.執行 OsmAndMapCreator 轉檔

解壓縮後執行 OsmAndMapCreator.bat 或 OsmAndMapCreator.sh (前面是 Windows 環境,後後是 Linux 環境)即會出現

screenshot_%Y%m0%H%M%S.jpg

然後點擊 File 下的 Creaet .obf from osm file... 即會出現以下對話框讓你選擇 PBF 檔案

screenshot_%Y%m0%H%M%S.jpg

點擊 "開啟" 即會進行轉檔

screenshot_%Y%m0%H%M%S.jpg

轉換完畢後檔案會產生在 UI 上顯示的 Working directory 中

 

批次操作

如果你都是固定要轉某個地域的地圖,你可以寫個 batch 或 shell script,只要執行即可產成 obf 檔,省去手動操作的時間和步驟,這裏以 linux shell script 為例,在 osmandmapcreator 下建立 download.sh,其內容如下:

wget http://download.geofabrik.de/asia/taiwan-latest.osm.pbf
./utilities.sh taiwan-latest.osm.pbf

 

注意事項

1.Out of memory 問題: 因為圖檔很大,所以在轉檔時可能出現記憶體不足的問題,你需要修改 OsmAndMapCreator.bat 或 OsmAndMapCreator.sh 中 -Xms 及 -Xmx 的設定值

screenshot_%Y%m0%H%M%S.jpg

文章標籤
創作者介紹
創作者 山哥 的頭像
山哥

白紗窗外的山哥

山哥 發表在 痞客邦 留言(0) 人氣()