QGISの頂点を抽出を使ってラインやポリゴンの頂点をポイントに変換する。
この記事では、QGISの頂点を抽出の機能を抽出を使ってラインやポリゴンの頂点をポイントに変換する方法を紹介したいと思います。
QGISの頂点を抽出とは?
QGISの頂点を抽出とは、ラインやポリゴンの頂点をポイントレイヤとして作成することができます。各ラインやポリゴンレイヤの属性値は引き継がれ、各パートごとにindex番号が0からの通し番号作成されます「verter_ind」。その「verter_ind」の0番から各ライン、ポリゴンレイヤ(外枠)に沿った距離を示した属性フィールドも作成されます「distance」。
また、マルチパートであった場合は、「verter_per」「verter_p_1」によって番号と付けられます。
「verter_per」はパートごとに統一の番号が付けられる。
「verter_p_1」は「verter_per」はパートごとに統一の番号が付けらた中のindex番号が0からの通し番号作成されます。
もう一つ作成される属性値があり、「angle」が作成されます。元のジオメトリの頂点の二等分線の角度を示されるのですが、個人的には「ラインとかあるけど頂点の二等分線の角度の値どうなるの?」と疑問に感じたので、色々計測して調べてみました。
「angle」について
angle(角度)ついては調べた感じだとこのような決まりがあるようです。良ければ参考程度にしていただければと思います。
ラインの始点と終点以外は数学座標系の0°で反時計回りで角度が広がっていくのではなく、時計回りで広がっていくようです。
「angle」はラインでも一応数字は出ますが、ポリゴンのためのものと考えるのがよいでしょう。
ラインレイヤの「angle」
ラインの角度は調べた限り、以下の絵のようになっています。
ラインレイヤの始点は図の上、北を0°としたラインレイヤまでの角度が入力されています。
中間にある頂点は、図の右、東を0°としてラインレイヤの二等分線までの角度が入力されています。ただし、広い方でとるか狭い方でとるかは作図による?ようです。
ラインレイヤの終点は図の下、南を0°としたラインレイヤまでの角度が入力されています。
ポリゴンレイヤの「angle」
ポリゴンレイヤのangle(角度)は全て同一になっています。
図の右、東を0°としてポリゴンレイヤの二等分線までの角度が入力されています。
頂点を抽出の使用方法
では、頂点を抽出の使用方法について書いていきます。
重心のツールの場所は、のツールの場所は「ベクタ」タブ→「ジオメトリツール」→「頂点を抽出」にあります。
「ベクタ」タブ→「ジオメトリツール」→「頂点を抽出」
設定画面はこのようになっています。
入力レイヤ
頂点を抽出し、ポイントレイヤを作成したいベクタレイヤ(ライン、ポリゴン)を選択。
選択した地物のみ
選択したデータのみ頂点を抽出し、ポイントレイヤを作成する対象となります。
頂点
作成されるポイントデータの保存先。一時レイヤでも作成できますが、右のボックスを選択して保存先を指定します。
アルゴリズムの終了後に出力ファイルを開く
終了後にレイヤに結果が追加されます。
QGISの頂点を抽出でラインとポリゴンの頂点を抽出する。
では、QGISの頂点を抽出でラインとポリゴンの頂点を抽出していきたいと思います。
ラインの頂点を抽出
では、まずラインの頂点を抽出しポイントにしていきます。
下のようなラインレイヤを作成しました。
頂点を抽出した結果、各頂点にポイントレイヤが作成されました。
ポリゴンの頂点を抽出
では、次にポリゴンレイヤの頂点を抽出しポイントにしていきます。
下のようなポリゴンレイヤを作成しました。
頂点を抽出した結果、各頂点にポイントレイヤが作成されました。
最後にまとめ
今回はQGISの頂点を抽出の使い方について紹介しました。頂点を抽出して、index0番の始点からの距離なども属性値で算出されるので便利かと思います。
- ライン、ポリゴンレイヤの頂点をポイントレイヤにしてくれるツール
- 「ベクタ」タブ→「ジオメトリツール」→「頂点を抽出」
- 属性値は、元のレイヤの値にプラスして、index番号、index0からの距離「distance」と色々な算出方法がありそうな「angle」。
- 「angle」はラインでも一応数字は出るが、ポリゴンのためのものと考えるのがよい。
他にもベースマップとして使われる地理院地図を表示する方法やpythonコンソールの使い方を紹介しています。