Localized Delaunay Refinement for Sampling and Meshing Tamal

  • Slides: 31
Download presentation
Localized Delaunay Refinement for Sampling and Meshing Tamal K. Dey Joshua A. Levine Andrew

Localized Delaunay Refinement for Sampling and Meshing Tamal K. Dey Joshua A. Levine Andrew G. Slatton The Ohio State University Department of Computer Science and Engineering 1/50

Restricted Delaunay • Del S|M: Collection of Delaunay simplices t where Vt intersects M

Restricted Delaunay • Del S|M: Collection of Delaunay simplices t where Vt intersects M Department of Computer Science and Engineering 2/50

Delaunay Refinement • Input surface M • Check conditions • If violated, insert •

Delaunay Refinement • Input surface M • Check conditions • If violated, insert • Vt∩M into S • Output: Del S|M Department of Computer Science and Engineering 3/50

Existing Methods • Check surface Delaunay ball size [BO 05] • Check topological disk

Existing Methods • Check surface Delaunay ball size [BO 05] • Check topological disk [CDRR 06] Department of Computer Science and Engineering 4/50

Limitations • Traditional refinement maintains Delaunay triangulation in memory • This does not scale

Limitations • Traditional refinement maintains Delaunay triangulation in memory • This does not scale well • Causes memory thrashing • May be aborted by OS Department of Computer Science and Engineering 5/50

Our Contribution • A simple algorithm that avoids the scaling issues of the Delaunay

Our Contribution • A simple algorithm that avoids the scaling issues of the Delaunay triangulation • • Avoids memory thrashing Topological and geometric guarantees Guarantee of termination Potentially parallelizable Department of Computer Science and Engineering 6/50

A Natural Solution • Use an octree T to divide S and process points

A Natural Solution • Use an octree T to divide S and process points in each node v of T separately Department of Computer Science and Engineering 7/50

Two Concerns • Termination • Mesh consistency Department of Computer Science and Engineering 8/50

Two Concerns • Termination • Mesh consistency Department of Computer Science and Engineering 8/50

Termination Trouble • A locally furthest point in node v can be very close

Termination Trouble • A locally furthest point in node v can be very close to a point in other nodes Department of Computer Science and Engineering 9/50

Messing Mesh Consistency • Individual meshes do not blend consistently across boundaries Department of

Messing Mesh Consistency • Individual meshes do not blend consistently across boundaries Department of Computer Science and Engineering 10/50

Loc. Del Algorithm: Overview • Process nodes from a queue Q • Refines nodes

Loc. Del Algorithm: Overview • Process nodes from a queue Q • Refines nodes with parameter λ if there are violations Department of Computer Science and Engineering 11/50

Splitting and reprocessing • Split • Let S = ∩ S • Split into

Splitting and reprocessing • Split • Let S = ∩ S • Split into eight children if ||S ||> • Reprocess Department of Computer Science and Engineering 12/50

Splitting Department of Computer Science and Engineering 13/50

Splitting Department of Computer Science and Engineering 13/50

Refining node • Augment • Assemble R =N US • Compute Del R |M

Refining node • Augment • Assemble R =N US • Compute Del R |M • Refine • Surface Delaunay ball larger than λ • Fp Del R |M is not a disk Department of Computer Science and Engineering 14/50

Returned points for violations • Checking Violations • Large triangle t incident to p

Returned points for violations • Checking Violations • Large triangle t incident to p ϵ S • Radius of surface ball > λ • Return (p, p*) where p* is furthest dual(t) ∩ M • Non-disk surface star Fp • Return (p, p*) where p* is the furthest dual(t) ∩ M among all triangles Department of Computer Science and Engineering 15/50

Point Insertions • Modified insertion strategy • If nearest point s ϵ S to

Point Insertions • Modified insertion strategy • If nearest point s ϵ S to p* is within λ/8 and s ≠ p, then add s to R • Else add p* to R • p* augments S, but s does not Department of Computer Science and Engineering 16/50

Reprocessing nodes • Needed for mesh consistency • Suppose s is added • Enqueue

Reprocessing nodes • Needed for mesh consistency • Suppose s is added • Enqueue each node ' ≠ s. t. d(s, ') ≤ 2λ Department of Computer Science and Engineering 18/50

Maintaining light structures • For each node keep: • S = S ∩ •

Maintaining light structures • For each node keep: • S = S ∩ • Up ϵ S Fp • Output: union of surface stars Up ϵ S Fp Department of Computer Science and Engineering 19/50

Termination • If insertions are finite, so are enqueues and splits • Augmenting R

Termination • If insertions are finite, so are enqueues and splits • Augmenting R by an existing point does not grow S • Consider inserting a new point s • Nearest point ≠ p → at least λ/8 from S • Insertion due to triangle size → at least λ from S • Else → at least εM from S by Proposition 1 Department of Computer Science and Engineering 20/50

Termination • Proposition 1 [Cheng-Dey-Ramos-Ray 2007]: • εM>0 s. t. if intersections of all

Termination • Proposition 1 [Cheng-Dey-Ramos-Ray 2007]: • εM>0 s. t. if intersections of all edges of Vp with M lie within εM of p then Fp forms a topological disk Department of Computer Science and Engineering 21/50

Guarantees • The underlying space of the output mesh is a 2 -manifold without

Guarantees • The underlying space of the output mesh is a 2 -manifold without boundary • Each point in the output is within distance λ of M • λ*>0 s. t. if λ<λ* the output is isotopic to M with Hausdorff distance of O(λ 2) Department of Computer Science and Engineering 22/50

Manifoldness • We require surface stars to fit together globally • Consistency condition: In

Manifoldness • We require surface stars to fit together globally • Consistency condition: In the output complex Up. Fp, a triangle abc is in Fa if and only if it is also in Fb and Fc Department of Computer Science and Engineering 23/50

Manifoldness Theorem: At termination UFp Del S|M • Consider the last time is processed;

Manifoldness Theorem: At termination UFp Del S|M • Consider the last time is processed; t in • Size condition → t in Del S|M when is done • If t Del S|M afterward, there is a point s in Delaunay ball. But, s causes to be reprocessed Department of Computer Science and Engineering 24/50

Topology • For sufficiently small λ • Homeomorphism follows from [Amenta-Choi. Dey-Leekha 02] •

Topology • For sufficiently small λ • Homeomorphism follows from [Amenta-Choi. Dey-Leekha 02] • Isotopy and Hausdorff distance follow from [Boissonnat-Oudot 05] Department of Computer Science and Engineering 25/50

Results • Varying does not change the mesh qualitatively Department of Computer Science and

Results • Varying does not change the mesh qualitatively Department of Computer Science and Engineering 26/50

Results • Optimal is platformdependent Department of Computer Science and Engineering 27/50

Results • Optimal is platformdependent Department of Computer Science and Engineering 27/50

Results Department of Computer Science and Engineering 28/50

Results Department of Computer Science and Engineering 28/50

Results Department of Computer Science and Engineering 29/50

Results Department of Computer Science and Engineering 29/50

Results Department of Computer Science and Engineering 30/50

Results Department of Computer Science and Engineering 30/50

Conclusions • A simple algorithm for Delaunay refinement • Avoids memory thrashing • Topological

Conclusions • A simple algorithm for Delaunay refinement • Avoids memory thrashing • Topological and geometric guarantees • Guarantee of termination • Potentially parallelizable Department of Computer Science and Engineering 31/50

Thank You Department of Computer Science and Engineering 32/50

Thank You Department of Computer Science and Engineering 32/50