3Dモデルをいろいろ作ってみたい

3Dモデルをいろいろ作ろうとがんばっています。苦労した点、役に立ちそうな情報を発信していきます。

立体地図を作る -その2 行政区画情報の準備-

2.行政区画情報の準備

行政区画の情報は国土地理院がWebで提供している基盤地図情報(基本項目)をダウンロードして用います。

基盤地図情報ダウンロードサービス

対象となる地域を選んでダウンロードします。

f:id:ichidaya:20181214160657p:plain

行政区画マップのダウンロード

ダウンロードしたファイルはGMLというXMLベースの形式で記述されておりこのままではQGISに読み込むことができません。国土地理院が提供している基盤地図情報ビューアというソフトで読み込んで QGISで利用可能なshape形式に変換します。基盤地図情報ビューアは国語地理院の以下のページからダウンロードすることができます。

各種資料|基盤地図情報ダウンロードサービス

ダウンロードしたファイルを解凍すると何種類かのXMLファイルが生成されますがそのなかの「FG-GML-??????-AdmArea-????????-????.xml」という名前のファイルだけを選んでビューアに取り込みshape形式のファイルとしてエクスポートします。これでQGISに読み込んで行政区画を表示することはできるようになるのですが、座標参照系がJAXAの標高データと異なるのでこのままでは両者の突合せを行うことはできません。QGISでいったん読み込んだレイヤを「名前をつけて保存する」で保存すると保存時の座標参照系(CRS)を指定できるのでWGS 84(EPSG:4326)を指定して保存し以後の作業ではこちらを使います。

QGISで業績区画のレイヤを選択、右クリックメニューの「属性テーブルを開く」で行政区画の線分を示すベクトルデータが行ごとに表示されます。このうち行政コードのフィールドが市区町村を表しており、上2桁が都道府県を表すコードになっています。属性テーブルの「フィールド計算機を開く」機能を使って新しいフィールド都道府県を作成しておきます(赤枠で囲った部分が追加されたフィールド)。

f:id:ichidaya:20181216001022p:plain

都道府県を示すフィールドの追加

都道府県フィールド追加後のレイヤを右クリックしてメニューのフィルタ(クエリビルダ)を使って表示する地域を絞り込むことができます。

f:id:ichidaya:20181216002801p:plain

クエリビルダのダイアログ

この例では都道府県のコードが29(奈良)である行政区画のみをフィルタすることで奈良県に該当する領域(下図の緑色の部分)のみを表示させています。

f:id:ichidaya:20181216003046p:plain

行政区画レイヤの奈良県部分のみを表示

これで標高データのメッシュと行政区画を突き合わせる準備が整いました。