3
一般的なGISのポリゴン頂点の順序:時計回りまたは反時計回り
2日前に、ESRIシェープファイルのポリゴンの頂点の内部保存順序について質問しました。その質問は回答されました(ポリゴンはシェイプファイルに時計回りまたは反時計回りに保存されていますか?)、また古い投稿で回答されました(ポリゴン作成(時計回りの回転かどうか)) しかし、今では私の質問はより一般的であり、独自の答えがあるかどうかはわかりません。時計回りの順序はESRIシェープファイルのみですか、それとも一般的なGIS形式ですか?また、GISソフトウェアの内部表現についてはどうですか?たとえば、QGISを使用し、ポリゴンを含む* .shpを読んだ場合、外側の境界の内部表現は元のシェープファイルのように時計回りであると仮定しますが、QGISでサポートされているすべてのファイル形式はどうでしょうか?ArcGISの場合はどうですか?また、ポリゴンが反時計回りに保存されているファイル形式が存在する場合、これらのファイルがQGIS、ArcGISなどにロードされると、内部で方向が変更されるため、たとえばPyQGISを使用してデータを読み取ると、ポリゴンは時計回りになります順序付けられました? 私の目的はQGISのプラグインを作成することですが、データのソースはESRIシェープファイルまたはその他の形式にすることができます。方位角を使用してポリゴンの連続する側面間の角度を確認する必要があるため、順序が時計回りであるかどうかを知る必要があります。1つの解決策は、各ポリゴンの面積を計算することです。正しく覚えていれば、正の場合は順序は時計回りになり、負の場合は順序は反時計回りになります。 面積計算は集中的なタスクではないため、プラグインをそれほど遅くすることはありません。しかし、QGISの特殊なケースでは、元のソースの順序に関係なく、ポリゴンを時計回りに保存するか反時計回りに保存するかを誰もが知っていますか?これまでにESRIシェープファイルを使用しており、layer.getFeatures()。geometry()。asPolygon()の座標は、外側の境界線では時計回りに、穴の場合は反時計回りに、つまり元の* .shpのように保存されます。