2017-07-20 13 views
0

私は、プロジェクトのポイントロケーションクエリを実行するためにCGALのAABBツリーを使用しています。私は3次元のデカルトグリッドとグリッドの内側に置かれた表面を持っています。グリッドのどの要素が外側/内側/表面であるかを調べる必要があります。このために、レイをキャストして、セルの各コーナーの交差点の数を見つけて、それらが内側か外側かをチェックします。CGAL AABBツリーの問題

グリッドのコーナーがサーフェス上のノードと一致しない限り、これは正常に機能します。しかし、セルのコーナーポイントがサーフェス上のノードと一致すると、私はゴミの結果を得る。そのようなシナリオの1つがErroneous result from CGALに示されています。

Simple_cartesian<double>Exact_predicates_inexact_constructions_kernelを使ってみましたが、状況は改善されませんでした。

CGALは浮動小数点演算に非常に敏感です。

どのようにこの問題を解決できますか?

答えて

0

あなたが書いたコードを見ずに、どこに問題があるのか​​は分かりません。しかし、クラスSide_of_triangle_meshはまさにあなたが必要としているようです。

+0

提案されたクラスを使用して自分のコードを変更しました。それは私が必要とするように働いています。ありがとうございました。 –

関連する問題