[Mac]地理院の10mメッシュデータをgrdファイルに変換した備忘録


国土地理院が公開している基盤地図情報は、そのままではGMTで取り扱うことができません。
今回はMacで10mメッシュデータ(xml)をgrdファイルに変換した備忘録です。

環境

Mac mini(2018)
macOS Mojave 10.14.5

必要なもの

基盤地図情報ダウンロードサービス 会員登録
GMT4←ここ重要!

1. 国土地理院HPからデータを入手

ここへアクセスし、基盤地図情報数値標高モデルファイル選択をクリックします。
デフォルトでは5mメッシュになっているので、10mメッシュをクリック。

データが欲しいエリアを選択した後、ダウンロードファイル確認へをクリックすると、ダウンロードファイルリストが出てきます(下図参照)。
このページをまとめてダウンロードを選択します。ここで会員IDが求められるので入力します。

アンケートに答えたら、あとは未ダウンロードファイルがなくなるまで「このページをまとめてダウンロード」を連打すればOKです。

2. Zipファイルを解凍

ターミナルを起動しダウンロードファイルのあるディレクトリに移動したら、以下のコマンドを実行しましょう。(一つずつ解凍したらキリがないので)

Terminal
find . -name '*.zip' -exec unzip -d data {} \;

これを実行すると、ディレクトリ内にdataディレクトリが作成されます。
解凍して生成されたxmlファイルは、このdataディレクトリにあります。

3.grdファイルに変換

産総研の野田さんが、xmlファイルをgrdファイルに変換するperlファイルを作成してくださっているので、有り難く使用させてもらいます。

まず野田さんのHPからjpgis2grd.plをダウンロードします。
このperlファイルを2. Zipファイルを解凍で作成したdataディレクトリに入れます。

このperlファイルですが、GMT4環境では上手く動きません。
しかし、sfuno's blogさんの記事(削除済み)によると、perlファイルの110行目にある
<^\s*$><\/gml:tupleList>に置き換えると良いらしいので、perlファイルの110行目を以下のように書き換えます。

Atom
if (/\/gml:tupleList/) { $data_on = 0; $n = 0; } # 空行ならデータ行は終了;

あとは野田さんのperlファイルを走らせるだけですが、以下の作業はGMT4の環境下で行わないと失敗します。
ターミナルでdataディレクトリに移動し、

Terminal
perl jpgis2grd.pl

を実行します。
xmlファイルの量によっては滅茶苦茶時間がかかるので注意。

生成されたout.grdファイルを使うと、こんな図ができます。(プレビューでカット&リサイズ済)
ちなみに下図は千葉県の外房あたりです。

参照サイトなど

[shell]フォルダ内にある大量のZIPファイルをまとめて解凍する

JPGIS形式をgrd形式へ変換

sfuno's blog

画像1~2枚目出典
地図基盤情報 ダウンロードサービス(一部改変)