2011-08-11 4 views
6

私は3DデータをC++(またはC++ 0x)で処理するのが初めてで、単純なアプリケーションを作成しようとしています。このようなデータを処理することができます(モデル、細分化など)。 私は、メモリ内の3Dジオメトリを効果的に処理し、そのコンポーネント(頂点、点、ポリゴン(三角形だけでなく)、頂点の属性など)を変更するためのAPIを提供する '3Dジオメトリエンジン'のようなものを探しています。 私はそのようなものを探していたが運がなかった。自由に利用できるエンジンがあれば、そのようなAPIを持つ(最高のオープンソースの)3Dジオメトリエンジンをお勧めしますか?3Dジオメトリエンジン

ありがとうございます。

+1

ここに新たに登場したので、受け入れと投票の機能についてご説明ください。 –

+0

複数の回答を正しく選択できませんか?ですから、今私はこれらの2つの図書館を深く調べなければなりません - OpenMeshとCgeoはどちらが優れているかを見るために設計されています。どちらも同じようなポリ加工機能を持っていると私は理解していますが、どちらが優れているのでしょうか? –

答えて

3

http://pointclouds.org/を試すことができます。

ウェブサイトによると、ポイントクラウドライブラリ(またはPCL)は、ポイントクラウド処理のための大規模でオープンなプロジェクトです。

PCLフレームワークには、フィルタリング、フィーチャ推定、サーフェス再構成、登録、モデルフィッティング、セグメンテーションなどの最新のアルゴリズムが多数含まれています。

PCLはBSDライセンスのもとで公開されており、オープンソースソフトウェアです。商業用および研究用には無料です。私たちは、ウィローガレージ、NVidia、Google、トヨタの財政的支援を受けています。

+0

よく分かっていれば、PCLはよりクラッシックなメッシュではなく、ポイントクラウドジオメトリ用です。これは単なる問題ではなく、OPが知っておくべきことです。 –

+0

素晴らしい!どうもありがとうございます - 私の質問はこのトピックに関連していませんでしたが、それは私には大変役に立つでしょう! –

4

ポリゴンメッシュを処理することが主な関心事である場合(「3Dジオメトリエンジン」が広い意味を持つ可能性がありますが質問に示されるように)、OpenMeshを見ることができます。 C++ 0xに言及したように、私はあなたがテンプレートで敵ではないと仮定します。したがって、OpenMeshは汎用プログラミング構造を多用しているので、使いやすくて効率的なメッシュデータ構造を作り上げることができます。メッシュ処理にあまりにも多くのあらかじめ作成されたアルゴリズムは付属していませんが、いくつかは独自のアルゴリズムを実装するための出発点かもしれません。

+0

ありがとうございます!私はOpenMeshを調べます。あなたは[CGAL](http://www.cgal.org/project_ideas.html)で期限切れがあるかどうか教えてください。 OpenMeshと比較することはできますか? –

+0

@ danilo2私はCGALの経験がありません。これは、ポリゴンメッシュだけでなく、巨大な汎用計算ジオメトリライブラリです。私はそれがどれほど有用かはわかりませんが、大きなコミュニティがあり広く使われています。たぶん、pmrはもっと知っているかもしれない。しかし、あなたが多角形メッシュでインターレースされているのであれば、OpenMeshは素晴らしい素早い小さなライブラリです。 –

+0

@ダニロキリスト教が正しいです。 CGALは巨大ですが、単一のパッケージは互いに(カーネル以外にも、遍在しています)互いにかなり離れています。あなたは、どのアルゴリズムを使用してより適切なものを探す必要があるかを知るべきです。 – pmr

2

私はVTKで成功しました。メッシュを扱うための最良のAPIではないかもしれませんが、動作し、それらを表示するためのまともな機能を持っています。そして、私はそれだけで仕事をする幾人かのコンピュータ幾何学者を知っているので、全く悪いことはできません:)

+1

ありがとう!私は間違いなくそれを見ます!たぶん私のニーズに合ったものではないかもしれません(私は大きなアプリケーションを開発したいので(最初は小さく、その後成長しています)、あなたが言ったように、それは最高のAPIにはならないでしょう: –

4

CGALは、さまざまなメッシュ処理アルゴリズムを提供し、正確な浮動小数点演算。 CGALより扱いがはるかに簡単

+0

ありがとうございました! :)私は今すぐ他のツールと比較していて、それは本当に面白そうです:) –

+0

これはかなり長いですが、最近私は同じ質問をしています。私はこれを基本的に見てきました:CGALは非常に複雑で、多くの事前構築されたアルゴリズムが含まれていますが、そのほとんどにGPLライセンスがあるため、予算が低い商用プロジェクトでは最も便利ではないかもしれません。一方、OpenMeshはアルゴリズムライブラリが小さくても、商用プロジェクト(LPGL)と互換性のある柔軟なライセンスを使用することにより、かなりシンプルです。 – cbuchart

2

あなたはグラファイト、オープンソースのジオメトリ処理フレームワークを試すことができ、ドロネーを提供しながらなど
http://alice.loria.fr/index.php?option=com_content&view=article&id=22

これは間違いなく、「ただの取り扱い三角形とポイント」よりも進んでいるが、提供興味深いことに、メッシュ処理に必要な機能性があります。