7

私は最近、2D ポリゴンの操作を処理するためのライブラリまたはライブラリのセットが必要であることに遭遇しました。ブール/クリッピング操作 (差と和) と三角測量を実行できる必要があります。

これまでに見つけたライブラリは、poly2triCGAL、およびGPCです。Poly2tri は三角形分割に適しているように見えますが、まだブール演算が残っており、その成熟度については確信が持てません。

CGAL と GPC は、自分のプロジェクトが無料である場合にのみ無料です。私の特定のプロジェクトは商用ではないので、ライセンスの支払いや要求をためらっています。しかし、自分のコードを将来の商用プロジェクトに使用したいと思うかもしれないので、CGAL のオープン ソース ライセンスと GPC のフリーウェアのみの制限については躊躇しています。素敵な BSD スタイルのライセンスを持つポリゴン クリッピング ライブラリはないようです。

ああ、C / C ++が推奨されます。

4

5 に答える 5

11

Clipper は、オープン ソースのフリーウェアポリゴン クリッピング ライブラリ (Delphi および C++ で記述)^ であり、求めていることを正確に実行します (三角測量を除く) - http://sourceforge.net/projects/polyclipping/

私のテストでは、Clipper は GPC よりも大幅に高速であり、エラーが発生する可能性もはるかに低くなっています (詳細な比較については、 http://www.angusj.com/delphi/clipper.php#features を参照してください)。

Re: Anti-grain Geometry (AGG) グラフィックス ライブラリ - ポリゴン クリッピングは行わず、単に GPC を使用します (商用アプリケーションでは無料ではありません)。ただし、Clipper には AGG ユニットがあり、AGG でのクリッピングを GPC と同じくらい簡単に行うことができます。

^ 編集: Clipper は C# でも記述されるようになりました (サードパーティによって記述された Perl、Ruby、Haskell、および Flash モジュールと一緒に)。

于 2010-06-15T21:34:44.723 に答える
3

PolygonLibは、С++で記述され、すでに2つのプロジェクトで使用されている新しいポリゴンクリッピングライブラリです。数値的に堅牢で、二重座標を使用し、多数の頂点を持つポリゴン用に最適化されています。GPCおよびPolyBooleanを使用したパフォーマンスとメモリ使用率の詳細と比較については、http : //www.ulybin.de/products/polygonlib.php?lang=enを参照してください。

ライブラリの制限付き評価バージョンは、商用目的ではなく無料で使用でき、必要な操作をサポートします(三角測量を除く)。

于 2012-11-19T08:53:28.517 に答える
2

ブーストはどうですか?http://www.boost.org/doc/libs/1_47_0/libs/polygon/doc/index.htm

インターフェイスでジェネリックを多用しても問題ない場合は、これで目的が十分に果たせると思います。三角測量が含まれているかどうかはわかりませんが、含まれていない場合は、利用可能な多くの三角測量アルゴリズムのいずれかを実装できます。

于 2011-09-01T00:36:14.150 に答える
0

http://www.antigrain.com/license/index.htmlは私が見つけることができる最も近いものです。商用化する場合はお金を費やす必要があるかもしれませんが、今のところ無料で使用でき、後で同意を得ることができます.

于 2010-06-15T21:53:33.667 に答える
0

Liszt a Scala DSL をチェックしてください

于 2010-06-13T20:56:13.157 に答える