QGIS でジオメトリを修復する

 国土数値情報の河川データにはテーブル構造の不一致の他にも不具合がある.具体的には,LineString ジオメトリは 2 個以上の Point を必要とするが,特定の県のデータには Point が 1 個しかないジオメトリが複数ある.

レイヤの追加

都道府県コード 21 のシェープファイルを開く

 W05-08_21-g_Stream.shp というファイルの命名規則として,g の前の 21 はおそらく都道府県コードである.このファイルに不具合が集中していたため,このファイルの修復を試みた.

OGRがサポートするベクタベータセットを開く
OGRがサポートするベクタベータセットを開く

プロセシングツールボックスのジオメトリの修復

 「プロセシング」メニューから「ツールボックス」と進む.

「プロセシング」「ツールボックス」
「プロセシング」「ツールボックス」

 「ベクタジオメトリ」の「ジオメトリの修復」へ進む.

「ベクタジオメトリ」「ジオメトリの修復」
「ベクタジオメトリ」「ジオメトリの修復」

 「ジオメトリの修復」ダイアログでは特に設定を変更することなく,「実行」ボタンをクリックするだけである.

ジオメトリの修復
ジオメトリの修復

 結果はログに出力される.「地物 … のジオメトリを修復すると MultiPoint となったため,ジオメトリが削除されました」というログが読み取れる.

ジオメトリの修復のログ
ジオメトリの修復のログ

再構成レイヤをエクスポートして地物を保存する

 再構成レイヤをエクスポートする際の注意点については前回の記事で述べた.フルパス付きのファイル名でないとエラーが発生する.

まとめ

 河川データを構成するファイルのうち Point ジオメトリからなる LineString ジオメトリを修復(削除)した.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください