溢れ出る加齢臭

カレー臭に加え加齢臭が溢れ出る年齢になりました。

QGISでラインやポリゴンを移動や拡大縮小するアフィン変換

QGISシェープファイルを編集する際、別のデータ、例えばCADデータから持ってきたラインやポリゴンが地図の位置と全く違う、縮尺が違うというような状況のときに、QGIS上でラインやポリゴンの移動や拡大縮小する機能としてアフィン変換という機能がある。

例えば、以下の図で黒線のポリゴンを東に200m、北に200m移動したいとする。地物選択でこのポリゴンを選択状態にしておこう。 f:id:tessy3:20200708210725p:plain

なお、黒線のポリゴンのシェープファイルは平面直角座標系とする。

メニューバーの[プロセシング]-[ツールボックス]を開く。 f:id:tessy3:20200708210918p:plain

ベクタジオメトリの中に、[アフィン変換]というメニューがある。 f:id:tessy3:20200708211049p:plain

これを開いて、ポリゴンを平行移動するため、X軸(東)に200、Y軸(北)に200と入力する。 「選択した地物のみ」にチェックを入れないと、地物のあるシェープファイル全体を移動してしまう。といっても後述のように失敗のリカバリーは効く。 下の方にある[アフィン変換済みベクタ]とは変換先のデータを保存するファイル名を入れる。ファイル名を書かない場合はテンポラリファイルに保存する。QGIS上で開いているファイルには保存できないので、元ファイルを上書きすることはできない。 f:id:tessy3:20200708211143p:plain

保存先のファイル名を入れなかったので、地物を移動したテンポラリファイルが作成された。(ピンクのポリゴンが移動した地物) f:id:tessy3:20200708211734p:plain

ポリゴンの拡大・縮小はアフィン変換を開いた後に、倍率で記入する。例えば20%拡大したいのなら、1.2と記入する。ただし、座標原点を基準に拡大するため、拡大・縮小と同時に拡大・縮小方向と逆方向に移動をしておかないと、拡大・縮小によって遠くに移動してしまうことになる。