Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Delaunay Meshing for Piecewise Smooth Complexes Tamal K. Dey The Ohio State U. Joint work: Siu-Wing Cheng, Joshua Levine, Edgar A. Ramos Piecewise Smooth Complexes Sharp Edges Non-manifold Department of Computer Science and Engineering 2/22 Piecewise Smooth Complexes • D is a piecewise smooth complex (PSC) if • Each k-dimensional element is a manifold and compact subset of a smooth (C2) k-manifold, 0≤k≤2. • The k-th stratum, Dk : set of k-dim elements of D. • D0 – vertices, D1 – 1-faces, D2 – 2-faces. • D≤k = D0 … Dk. • D satisfies usual reqs for being a complex. • Interiors of elements are disjoint and for σ D, bd σ D. • For any σ, D, either σ = or σ D . Department of Computer Science and Engineering 3/22 Delaunay refinement : History • Chew89, Ruppert92, Shewchuk98 (Linear domains with no small angle) • Cohen-Steiner-Verdiere-Yvinec02, Cheng-Dey-RamosRay04 (polyhedral domains with small angle) • Chew93 (surface without guarantees) • Cheng-Dey-Edelsbrunner-Sullivan01 (skin surfaces) • Boissonnat-Oudot03 and Cheng-Dey-Ramos-Ray04 (smooth surface) • Boissonnat-Oudot06 (Lipschitz surfaces) • Oudot-Rineau-Yvinec06 (Volumes) Department of Computer Science and Engineering 4/22 Basics of Delaunay Refinement • Chew 89, Ruppert 92, Shewchuk 98 • Maintain a Delaunay triangulation of the current set of vertices. • If some property is not satisfied by the current triangulation, insert a new point which is locally farthest. • Burden is on showing that the algorithm terminates (shown by packing argument). Department of Computer Science and Engineering 5/22 Challenges for PSC • Topology • Polyhedral case (input conformity,topology trivial). • Curved elements (topology is an issue). • Topological Ball Property (TBP) was used for smooth manifolds [BO03,CDRR04]. • We need extended TBP for nonmanifolds. • Nonsmoothness • Lipschitz surfaces [BO06], Remeshing [DLR05]. • Small angles • Delaunay refinement is hard [CP03, CDRR05, PW04]. Department of Computer Science and Engineering 6/22 Topological Ball Property • For a weighted point set S, let Vor S and Del S denote the weighted Voronoi and Delaunay diagrams. • S has the TBP for σDi if σ intersects any k-face in Vor S either in emptyset or in a closed topological (i+k-3)-ball. Department of Computer Science and Engineering 7/22 CW-Complexes • A CW-complex R is a collection of closed (topological) balls whose interiors are pairwise disjoint and whose boundaries are the union of other closed balls in R. • Our algorithm builds a CW-complex, Vor S||D|, to satisfy an extended TBP[ES97]. Department of Computer Science and Engineering 8/22 Extended TBP • S |D| has the extended TBP (eTBP) for D if there is a CWcomplex R with |R| = |D| s.t. • (C1) The restricted Voronoi face F |D| is the underlying space of a CW-complex R’ R. • (C2) The closed balls in R’ are incident to a unique closed ball bF R. • (C3) If bF is a j-ball then bF bd F is a (j-1)-sphere. • (C4) Each k-ball in R’, except bF, intersects bd F in a (k-1)-ball. Department of Computer Science and Engineering 9/22 Extended TBP • For a 1- or 2-face σ, let Del S|σ denote the Delaunay subcomplex restricted to σ. • Del S||Di| = σDi Del S|σ. • Del S||D| = σD Del S|σ. • Theorem. If S has the eTBP for D then the underlying space of Del S||D| is homeomorphic to |D| [ES97]. Department of Computer Science and Engineering 10/22 Feature Size • For analysis, we require a feature size which is 1Lipschitz and non-zero. • For any x |D|, let f(x) = min{m(x), g(x)}. • For any σ D, f() is 1-Lipschitz over int σ. • For δ (0,1] and x |D|, • if x D0, lfsδ(x) = δf(x). • if x int |Di|, for i ≥ 1, lfsδ(x) = max{δf(x), maxybd|Di| {lfsδ(y)-||x-y||}}. Department of Computer Science and Engineering 11/22 Protecting D1 1. Any 2 adjacent balls on a 1-face must overlap significantly without containing each others centers 2. No 3 balls have a common intersection 3. For a point p σ D1, if we enlarge any protecting ball Bp by a factor c ≤ 8, forming B’: 1. B’ intersects σ in a single curve, and intersects all D2 adjacent to σ in a topological disk. 2. For any q in B’ σ, the tangent variation between p and q is bounded. 3. For any q in B’ ( D2 adjacent to σ), the normal variation between p and q is bounded. Department of Computer Science and Engineering 12/22 Admissible Point Sets • Protecting balls are turned into weighted points • We call a point set S admissible if • S contains all weighted points placed on D1. • Other points in S are unweighted and they lie outside of the protecting balls (the weighted points). • We maintain an admissible point set at each step of the algorithm. Department of Computer Science and Engineering 13/22 D1 conformation • Lemma. Let S is an admissible point set. For a 1-face σ, if p and q are adjacent weighted vertices spanning segment σpq on σ then Vpq is the only Voronoi facet which intersects σpq and it does so exactly once. Department of Computer Science and Engineering 14/22 Meshing PSCs • Meshing algorithm uses four tests to detect eTBP violations. • Upon violation, we insert points outside of protected balls of weighted vertices. Department of Computer Science and Engineering 15/22 Test 1: Multi-Intersection(q,σ) • For a point q S on a 2face σ, find a triangle t Del S|σ incident to q s.t. Vt intersects σ multiple times. • If no t exists, return null, otherwise return the furthest (weighted) intersection point from q. q Department of Computer Science and Engineering 16/22 Test 2: Normal-Deviation(q,σ,Θ) • For a point q S on a 2-face σ, check nσ(p), nσ(q) < Θ for all points p Vq|σ. • 2ω ≤ Θ ≤ /6. • If so return null. • Otherwise return a point p where nσ(p), nσ(q) = Θ . Department of Computer Science and Engineering 17/22 Test 3: Infringement(q,σ) • We say q is infringed w.r.t. σ if • σ is a 2-face containing q s.t. pq Del S|σ for some p σ. • σ is a 2-face and there is a 1-face in bd σ containing q and a nonadjacent vertex p s.t. pq Del S|σ. • For q S σ, return null if q is not infringed, otherwise let pq be the infringing edge. • If the boundary edges of Vpq intersect int σ, return any intersection point. • Else, Vpq σ is a collection of closed curves, return a critical point of Vpq σ in a direction parallel to Vpq. Department of Computer Science and Engineering 18/22 Test 4: No-Disk(q,σ) • If the star of q in Del S|σ is a topological disk, return null. • Otherwise, find the triangle t Del S|σ incident to q which has the furthest (weighted) intersection point in Vt|σ from q and return the intersection point. Department of Computer Science and Engineering 19/22 Meshing Algorithm 1. Protect elements in D≤1 with weighted points. Insert a point in each element of D2 outside of protected regions. Let S be this point set. 2. For any σ D2 and point q S σ: • If Infringed(q,σ), Multi-Intersection(q,σ), Normal-Deviation(q,σ,Θ), or No-Disk(q,σ) (checked in that order) return a point x, insert x into S. 3. Repeat 2. until no points are inserted. 4. Return Del S|D. Department of Computer Science and Engineering 20/22 Admissibility is Invariant Lemma. The algorithm never attempts to insert a point in any protecting ball • Since no 3 weighted points intersect, • all surface points (intersections of dual Voronoi edges and D) lie outside of every protecting ball Department of Computer Science and Engineering 21/22 Initialization • The algorithm must initialize with a few points from each patch in D2 • Otherwise, components can be missed. Department of Computer Science and Engineering 22/22 Termination • Each point x inserted is Ω(lfsδ(x)) away from all other points. • Standard packing argument follows. Department of Computer Science and Engineering 23/22 Topology Preservation • To satisfy C1-C4 of eTBP, we show each Voronoi k-face F = Vp1 … Vp(4-k) has: • (P1) If F σ ≠ , for σ Dj, the intersection is a (k+j-3)-ball • (P2) There is a unique lowest dimensional σF s.t. p1, …, p(4-k)σF. • (P3) F intersects σF and only incident elements of σF. • Theorem. If S satisfies P1-P3 then S satisfies C1-C4 of eTBP. Department of Computer Science and Engineering 24/22 Feature Preservation • h:|D| |Del S|D| can be constructed which respects each Di [ES97]. • Thus hi:|Di| |Del S|Di| also a homeomorphism with vertex restrictions, ensuring that the nonsmooth features are preserved. Department of Computer Science and Engineering 25/22 Delaunay Refinement made practical for PSCs S.-W. Cheng, Tamal K. Dey, Joshua Levine Definitions • For a patch σ Di, • When sampled with S • Del S|σ is the Delaunay subcomplex restricted to σ • Skli S|σ is the i-dimensional subcomplex of Del S|σ, • Skli S|σ = closure { t | t Del S|σ is an i-simplex} • Skli S|Di = σ Di Skli S|σ Department of Computer Science and Engineering 27/22 Disk Condition • For a point p on a 2-face σ, • • • UmbD(p) is the set of triangles in Skl2 S|D2 incident to p. Umbσ(p) is the set of triangles in Skl2 S|σ incident to p. Disk_Condition(p) requires: i. UmbD(p) = σ, p σ Umbσ(p) ii. For each σ containing p, Umbσ(p) is a 2-disk where p is in the interior iff p int σ Department of Computer Science and Engineering 28/22 Meshing Algorithm DelPSC(D, r) 1. Protect elements of D≤1. 2. Mesh2Complex – Repeatedly insert surface points for triangles in Skl2 S|σ for some σ if either 1. Disk_Condition(p) violated for p σ, or 2. A triangle has orthoradius > r. 3. Mesh3Complex – Repeatedly insert orthocenters of tetrahedra in Skl3 S|σ for some σ if 1. A tetrahedra has orthoradius > r and its orthocenter does not encroach any surface triangle in Skl2 S|D2. 4. Return i Skli S|Di. Department of Computer Science and Engineering 29/22 Termination Properties 1. Curve Preservation • For each σ D1, Skl1 S|σ σ. Two vertices are joined by an edge in Skl1 S|σ iff they were adjacent in σ. 2. Manifold • • For 0 ≤ i ≤ 2, and σ Di, Skli S|σ is a manifold with vertices only in σ. Further, bd Skli S|σ = Skli-1 S|bd σ. For i=3, the above holds when Skli S|σ is nonempty after Mesh2Complex. 3. Strata Preservation • • There exists some r > 0 so that the output of DelPSC(D, r) is homeomorphic to D. This homeomorphism respects stratification. Department of Computer Science and Engineering 30/22 Voronoi Cells Intersect “Discly” • Given a vertex p on a 2-face σ, if • Triangles incident to p in Skl2 S|σ are small enough. • Then, • Vp|σ is a topological disk, • Any edge of Vp|σ intersects σ at most once, and • Any facet of Vp|σ which intersects σ does so in an open curve. Department of Computer Science and Engineering 31/22 TBP holds globally • if • All triangles incident in Skl2 S|σ are smaller than a bound for all 2-faces, • Then • TBP holds globally • This leads to the proof of ETBP and more…topic of a new unpublished paper. Department of Computer Science and Engineering 32/22 Adjusting MaxRad Example Department of Computer Science and Engineering 33/22 Adjusting MaxRad Example Department of Computer Science and Engineering 34/22 Examples Department of Computer Science and Engineering 35/22 Examples Department of Computer Science and Engineering 36/22 Examples Department of Computer Science and Engineering 37/22 Examples Department of Computer Science and Engineering 38/22 Examples Department of Computer Science and Engineering 39/22 Examples Department of Computer Science and Engineering 40/22 Examples Department of Computer Science and Engineering 41/22 Examples Department of Computer Science and Engineering 42/22 Examples Department of Computer Science and Engineering 43/22 Examples Department of Computer Science and Engineering 44/22 Sharp Example Department of Computer Science and Engineering 45/22 Conclusions • Delaunay meshing for PSC with guarantees. • Feature preservation is an extra `feature’. • Making computations easier, faster? • Analyzing size complexity? Department of Computer Science and Engineering 46/22