2017-08-22 13 views
1

私はサーフェスファセットで記述された3Dオブジェクトを持っています。 OFFファイルとして保存されます。しかし、サーフェスファセット(ポリゴン)の頂点の一部は、必ずしも同一平面上にあるわけではありません。これらの非共面ポリゴンを同一平面にするために、これらの非共面ポリゴンを修正する良いアイデアはありますか? 私の考えは です1)すべてのポリゴンについて、ポリゴンの基本平面を見つけて、ほとんどの頂点が平面に当たるようにします。例えば、頂点の平面への距離は機械の精度よりも低くなります。 ); 2)ポリゴンの基本平面に該当しないこれらの頂点については、頂点に関連付けられたポリゴンの基本平面の交点を見つけて、この頂点の新しい位置とみなします。非共平面ポリゴンの修正方法

問題がありますか?それ以上のアイデアはありますか?

おかげで、唐Laoya

答えて

0

はたぶん、あなたは固定四角形に集中する必要があり、その何度も繰り返します。隣接する2つの三角形が頂点abcとcbdを共有し、エッジbdを共有しているとします。 四面体abcdの体積を計算し、それが小さい場合は平らにすると決定します。あるいは、おそらく、bdで二面角を計算し、piの近くで の場合は平坦化してください。はい、それはおそらくより良い措置です。

abcdを修復することを決定したら、abcによって決定された平面にdを投影し、その投影された点でdを置き換えます。今、abcdは同一平面上にあります。あなたはすべての並べ替えのためにこれを行うことができ、最小限に動く点を置き換えることができます。

残念ながら、これは順序依存であり、 がすべての三角形のペアで何度も繰り返されるとサイクルにつながる可能性があります。

関連する問題