2016-03-20 8 views
-1

C++で円をマージする方法を理解できません。 Boost Geometryを使って2つのポリゴンを結合することに成功しましたが、問題はポリゴンをどのようにサークルに変換するのかわかりません(Boost Geometryでは可能です)。C++の円の組み合わせ

ジオメトリを視覚的に表示する必要はありません。最後に、WKT形式に変換したいと思います。

Boost Geometryは適切なアプローチですか、それともより良いライブラリがありますか?

あなたは、N個の頂点(必要な精度に応じて、Nを選択)との定期的なポリゴンを使用して中心点Cと半径Rの円を近似することができる

アンディ

+0

あなたが代わりにBoost.Geometry – mustafagonul

+0

のもCGALを使用することができますが、円または円に任意の多角形にpolygoned円を変革しようとしていますか?中心を見つけるためにポリゴンの点の平均を取得する必要があります。中心を見つけたら、半径を見つけるために点の中心までの距離の平均を取得する必要があります。あなたの質問はあまり明確ではないと思います。 – mustafagonul

+0

申し訳ありません。基本的に、私はサークルを結合したい私の試みの1つはBoostを使用していました。そのためには、サークルをポリゴンに変換してからマージする必要があると思います。マージの結果はいずれの場合も多角形である。 – Andy

答えて

0

、ありがとうございます。頂点座標:

V[i].X = C.X + R * Cos(i * 2 * Pi/N) 
V[i].Y = C.Y + R * Sin(i * 2 * Pi/N)