Localized Delaunay Refinement for Volumes Tamal K Dey and Andrew G Slatton The Ohio State University
Problem Input: Volume O bounded by smooth 2-manifold ∂O Output: Tetrahedral mesh approximates O Constraints: Use a localized framework
Restricted Delaunay Del S|M: Collection of Delaunay simplices t where Vt intersects M
Limitations Traditional refinement maintains Delaunay triangulation in memory This does not scale well Causes memory thrashing May be aborted by OS
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
Basic Approach Divide sample in octree and refine each node individually [DLS10] Applying to volumes [DLS10] and [ORY05] New challenges
Difficulties: Consistency Without some additional processing, meshes will not fit consistently across boundaries Addressed in [DLS10]
Difficulties: Termination Arbitrarily close insertions Addressed in [DLS10]
New Difficulties Sample points must lie in bounded domain Not a problem in [DLS10] Outside vs inside
New Difficulties All vertices of restricted triangles must lie on ∂O May lead to arbitrarily dense refinement
Algorithm Parameters: λ κ Sizing Sample density Approximation quality Points per node
Algorithm: Overview Add octree root to processing queue Process node at head of queue May split into new nodes or re-enqueue some existing nodes Repeat this step until queue is empty
Node Processing Split Do when |P| > κ, where P = P ∩ Divide P among children of
Node Processing Refine Do while |P| ≤ κ Initialize node with Del(R) = Del(P U N) When a node is not being refined, keep only P and UpϵPTp
Refinement Criteria Restricted triangle size, rf < λ Vertices of restricted triangles lie on ∂O Topological disk Voronoi edge intersects at most once Tetrahedron size, rt < λ Radius-edge ratio, ratio < 2
Point Insertion Strategy is similar to that in [DLS10] Termination Key difference: We may delete some points after an insertion Topological guarantees Does not prevent termination
Reprocessing Re-enqueue ’ if ≠ ’ inserts new point q in P’ or N’ Necessary for consistency
Output Output UpϵPTp Union of all UpϵPTp over all nodes in octree
Termination Theorem 1: The algorithm terminates. Use a packing argument to prove this
Termination Each refinement criterion implies some LB (C1)→d’ss ≥ min{dss,λ} and d’sv ≥ min{dsv,λ} (C2)→d’ss ≥ min{dss,dsv/2,dvv/2} and d’sv ≥ min{dsv,λ} (C3)→d’ss ≥ min{dss,λ∂O} and d’sv ≥ min{dsv,λ} (C4)→d’ss ≥ min{dss,λ*} and d’sv ≥ min{dsv,λ} (C5)→d’sv ≥ min{dsv,λ} and d’vv ≥ min{dvv,λ}. (C6)→d’sv,d’vv ≥ min{2dss,dsv,dvv} or d’ss ≥ min{dss,dsv,dvv}. Apply results from [CDRR07], [BO05], [Dey06], [AB99]
Topology & Geometry Theorem 2: T=UpTp is subcomplex of Del P|O ∂T is a 2-manifold without boundary Output is no more then λ distance from O For small λ: T is isotopic to O Hausdorff distance O(λ2)
Results
Results
Results
Closing Remarks Key observations Shortcomings Future work Localized beats non-localized We are faster than CGAL Shortcomings Slivers Future work Sliver elimination Piecewise-smooth complexes
Thank You!