f : R^2 --> R^3
パラメトリック サーフェスと三角形分割されたメッシュの間の交差面のフロンティアを計算するために、正確なアルゴリズムをどのように作成できるか疑問に思っています。
私は最初のアプローチを考えました:
nStepsU = 100
nStepsV = 100
tolerance=0.01 // pick some sensical value
intersectionVertices={}
for u from minU to maxU in nStepsU:
for v from minV to maxV in nStepsV:
for v in verticesInMesh:
if euclidean distance( f(u,v), v ) < tolerance:
add vertex v in a set
connect the vertices in intersectionVertices with a line strip
draw the vertices in intersectionVertices
このアルゴリズムは非常に単純ですが遅く (n^3)、メッシュのトポグラフィが三角形に基づいていることを考慮していないため、出力ポイントはメッシュのポイントであり、サーフェスと三角形の交点を利用して計算されたポイントではありません。設定しなければならない許容範囲に大きく依存します。
誰かがより良いアイデアを持っているか、この目的に適したライブラリに私を連れて行くことができますか?