1

主にポリゴンを操作するために、Boost ジオメトリを使用してきました。ジオメトリを計算するためにセントロイド組み込みメソッド(http://www.boost.org/doc/libs/1_55_0/libs/geometry/doc/html/geometry/reference/algorithms/centroid/centroid_2.html )を使用していました(バリー)ポリゴンの中心ですが、最近、ポイントの座標を出力した後(特定のポリゴンを構成)(およびいくつかのPythonスクリプトを使用して側面で分析した後)、以前の方法で得られた重心座標が対応していないことに気付きました多角形の点の幾何平均に。

私は二次元にいて、それを方程式に入れると、次のようになります。

x_centroid = \frac{1}{number of points composing the polygon} \sum{point i} x_i

y座標についても同じです。これは、ブースト ジオメトリ ライブラリがポリゴンのエッジ (外側のリング) のポイントだけを見ているのではなく、塗りつぶされたオブジェクトとして扱っているという事実に関係しているのではないかと疑っています。

これらの機能を操作した経験のある人はいますか?

ところで、私は使用しています:

point my_center(0,0);
bg::centroid(my_polygon,my_center);

セントロイドを計算します。

ありがとうございました。

4

3 に答える 3

1

それが重心です。つまり、塗りつぶされた多角形を構成する無数の点の平均です。あなたが望むのは重心ではなく、頂点の平均だけのようです。

ちなみに、「幾何平均」はあなたが思っているよりも異なる定義を持っており、この状況にはまったく当てはまりません。

于 2014-04-24T15:25:55.940 に答える