- 地理院「基盤地図情報ダウンロードサービス」の「数値標高モデル」から該当地域のDEM1Aをダウンロードする。
- GNU Parallel をインストールする
brew install parallel
- GDAL をインストールする
brew install gdal
- NPM パッケージをインストールする
npm install
- GMLデータを
input
ディレクトリに入れる (https://fgd.gsi.go.jp/download/ から入手) - CABファイルで来てる場合は cabextract を使う
cabextract *.cab
- zip ファイル(cab内は全部zip)も解凍します
find . -name "*.zip" | parallel unzip
- それぞれのGMLのTerrain RGBを GeoTIFF 型で作る
./generate_from_gml.sh ./input ./output
- filelist.txt にすべての GeoTIFF ファイル名が入っています。こちらを一つの GeoTIFF ファイルに統合します。
gdal_merge.py -o ./output/output.tif -of GTiff -co COMPRESS=DEFLATE --optfile ./output/filelist.txt
- 途中で止まった場合は、一旦
output/output.tif
を削除してから再実行してください。 - 20−30分ぐらいかかります。
- (直接MBTiles生成したい場合はスキップ) 統合された GeoTIFF をタイルに分割する
gdal2tiles.py --xyz --processes=$(nproc) -x --zoom='14-17' ./output/output.tif ./output/tiles
- 途中で止まった場合は、一旦
output/tiles
を削除してから再実行してください。rm -r ./output/tiles
- 分割したタイルをmbtilesに入れる
gdal_translate -co "ZLEVEL=9" -co "TILE_FORMAT=PNG" -co "ZOOM_LEVEL_STRATEGY=UPPER" -co "RESAMPLING=NEAREST" -of mbtiles ./output/output.tif ./output/output.mbtiles
- メモ: resampling周りがまだ怪しい