Delaunay Mesh Generation

47
1/66 Department of Computer Science and Engineering Tamal K. Dey The Ohio State University Delaunay Mesh Generation

description

Delaunay Mesh Generation. Tamal K. Dey The Ohio State University. Delaunay Mesh Generation. Automatic mesh generation with good quality. Delaunay refinements: The Delaunay triangulation lends to a proof structure . And it naturally optimizes certain geometric properties. - PowerPoint PPT Presentation

Transcript of Delaunay Mesh Generation

Page 1: Delaunay Mesh Generation

1/66Department of Computer Science and Engineering

Tamal K. Dey The Ohio State University

Delaunay Mesh Generation

Page 2: Delaunay Mesh Generation

2/66Department of Computer Science and Engineering

Delaunay Mesh Generation

• Automatic mesh generation with good quality.

• Delaunay refinements:• The Delaunay triangulation

lends to a proof structure.• And it naturally optimizes

certain geometric properties.

Page 3: Delaunay Mesh Generation

3/66Department of Computer Science and Engineering

Basics of Delaunay Refinement

• Pioneered by Chew89, Ruppert92, Shewchuck98

• To mesh some domain D,1. Initialize a set of points S D, compute Del S.2. If some condition is not satisfied, insert a point c

from |D| into S and repeat step 2.3.Return Del S.

• Burden is to show that the algorithm terminates (shown by a packing argument).

Page 4: Delaunay Mesh Generation

4/66Department of Computer Science and Engineering

Delsurf =Smooth surface meshing

DelPSC=Delsurf + Protection =PSC meshing

LocPSC=DelPSC+Localization

Page 5: Delaunay Mesh Generation

6/66Department of Computer Science and Engineering

Restricted Delaunay

• If the point set is sampled from a domain D.

• We can define the restricted Delaunay triangulation, denoted Del S|D.• Each simplex Del S|D is the

dual of a Voronoi face V that has a nonempty intersection with the domain D.

• Condition to drive Delaunay refinement often uses the restricted Delaunay triangulation as an approximation for D

Page 6: Delaunay Mesh Generation

7/66Department of Computer Science and Engineering

Polyhedral Meshing

• Output mesh conforms to input:• All input edges meshed as a

collection of Delaunay edges.• All input facets are meshed with a

collection of Delaunay triangles.• Algorithms with angle

restrictions:• Chew89, Ruppert92, Miller-Talmor-

Teng-Walkington95, Shewchuk98.• Small angles allowed:

• Shewchuk00, Cohen-Steiner-Verdiere-Yvinec02, Cheng-Poon03, Cheng-Dey-Ramos-Ray04, Pav-Walkington04.

Page 7: Delaunay Mesh Generation

9/66Department of Computer Science and Engineering

Smooth Surface Meshing

• Input mesh is either an implicit surface or a polygonal mesh approximating a smooth surface

• Output mesh approximates input geometry, conforms to input topology:• No guarantees:

• Chew93.• Skin surfaces:

• Cheng-D.-Edelsbrunner-Sullivan01.• Provable surface algorithms:

• Boissonnat-Oudot03 and Cheng-D.-Ramos-Ray04.

• Interior Volumes:• Oudot-Rineau-Yvinec06.

Page 8: Delaunay Mesh Generation

10/66Department of Computer Science and Engineering

Local Feature Size (Smooth) [ABE98]

• Local feature size is calculated using the medial axis of a smooth shape.

• f(x) is the distance from a point to the medial axis

• S is an ε-sample of D if any point x of D has a sample within distance εf(x).

Page 9: Delaunay Mesh Generation

11/66Department of Computer Science and Engineering

Homeomorphism and Isotopy

• Homeomorphsim: A function f between two topological spaces:• f is a bijection• f and f-1 are both continuous

• Isotopy: A continuous deformation maintaining homeomorphism

Page 10: Delaunay Mesh Generation

13/66Department of Computer Science and Engineering

Sampling Theorem

Theorem (Boissonat-Oudot 2005):

If S M is a discrete sample of a smooth surface M so that each x where a Voronoi edge intersects M lies within ef(x) distance from a sample, then for e<0.09, the restricted Delaunay triangulation Del S|M has the following properties:

(i) It is homeomorphic to M (even isotopic).

(ii) Each triangle has normal aligning within O(e) angle to the surface normals

(iii) Hausdorff distance between M and Del S|M is O(e2) of the local feature size.

Theorem:(Amenta-Bern 98, Cheng-Dey-Edelsbrunner-Sullivan 01)

If S M is a discrete e-sample of a smooth surface M, then for e< 0.09 the restricted Delaunay triangulation Del S|M has the following properties:

Sampling Theorem Modified

Page 11: Delaunay Mesh Generation

14/66Department of Computer Science and Engineering

Basic Delaunay Refinement

1. Initialize a set of points S M, compute Del S.

2. If some condition is not satisfied, insert a point c from M into S and repeat step 2.

3. Return Del S|M.

Surface Delaunay Refinement

2. If some Voronoi edge intersects M at x with d(x,S)> ef(x) insert x in S.

Page 12: Delaunay Mesh Generation

15/66Department of Computer Science and Engineering

Difficulty

• How to compute f(x)?• Special surfaces such as

skin surfaces allow easy computation of f(x) [CDES01]

• Can be approximated by computing approximate medial axis, needs a dense sample.

Page 13: Delaunay Mesh Generation

16/66Department of Computer Science and Engineering

A Solution

• Replace d(x,S)< ef(x) with d(x,S)<l, an user parameter

• But, this does not guarantee any topology

• Require that triangles around vertices form topological disks [Cheng-Dey-Ramos 04]

• Guarantees that output is a manifold

Page 14: Delaunay Mesh Generation

17/66Department of Computer Science and Engineering

A Solution

1. Initialize a set of points S M, compute Del S.

2. If some Voronoi edge intersects M at x with d(x,S)>ef(x) insert x in S, and repeat step 2.

2. (b)If restricted triangles around a vertex p do not form a topological disk, insert furthest x where a dual Voronoi edge of a triangle around p intersects M.

3. Return Del S|M.

2. (a) If some Voronoi edge intersects M at x with d(x,S)> l insert x in S, and repeat step 2(a).

Algorithm DelSurf(M,l)

X=center of largest Surface Delaunay ballx

Page 15: Delaunay Mesh Generation

18/66Department of Computer Science and Engineering

A MeshingTheorem

Theorem:

The algorithm DelSurf produces output mesh with the following guarantees:

(i) The output mesh is always a 2-manifold

(ii) If l is sufficiently small, the output mesh satisfies topological and geometric guarantees:

1. It is related to M with an isotopy. 2. Each triangle has normal aligning within O(l) angle to the

surface normals3. Hausdorff distance between S and Del S|M is O(l2) of the

local feature size.

Page 16: Delaunay Mesh Generation

19/66Department of Computer Science and Engineering

Implicit surface

Page 17: Delaunay Mesh Generation

20/66Department of Computer Science and Engineering

Remeshing

Page 18: Delaunay Mesh Generation

21/66Department of Computer Science and Engineering

PSCs – A Large Input Class[Cheng-D.-Ramos 07]

• Piecewise smooth complexes (PSCs) include:• Polyhedra• Smooth Surfaces• Piecewise-smooth Surfaces• Non-manifolds

&

Page 19: Delaunay Mesh Generation

22/66Department of Computer Science and Engineering

PSCs – A Large Class

• A domain D is a PSC if:• Each k-dimensional element is a manifold

and compact subset of a smooth (C2) k-manifold, 0≤k≤3.

• The k-th stratum, Dk, is the set of k-dim elements of D (k-faces).

• D satisfies usual reqs for being a complex.• Element interiors are disjoint and for σ D,

bd σ D.• For any σ, D, either σ = or σ

D .• D1 is set of elements which are sharp or

non-manifold features (highlighted in red)

Page 20: Delaunay Mesh Generation

24/66Department of Computer Science and Engineering

Protecting Ridges

Page 21: Delaunay Mesh Generation

27/66Department of Computer Science and Engineering

Delsurf + Protection = DelPSC

Page 22: Delaunay Mesh Generation

28/66Department of Computer Science and Engineering

DelPSC Algorithm[Cheng-D.-Ramos-Levine 07,08]

DelPSC(D, λ)1. Protect ridges of D using protection balls. 2. Refine in the weighted Delaunay by turning the balls

into weighted points.

1.Refine a triangle if it has orthoradius > λ2.Refine a triangle or a ball if disk condition is violated3.Refine a ball if it is too big (with respect to λ)

3. Return i Deli S|Di

Page 23: Delaunay Mesh Generation

29/66Department of Computer Science and Engineering

Guarantees for DelPSC

1. Manifold• For each σ D2, triangles in Del

S|σ are a manifold with vertices only in σ. Further, their boundary is homeomorphic to bd σ with vertices only in σ.

2. Granularity• There exists some λ > 0 so that

the output of DelPSC(D, λ) is homeomorphic to D.

• This homeomorphism respects stratification, For 0 ≤ i ≤ 2, and σ Di, Del S|σ is homemorphic to σ too.

Page 24: Delaunay Mesh Generation

30/66Department of Computer Science and Engineering

Reducing λ

Page 25: Delaunay Mesh Generation

32/66Department of Computer Science and Engineering

Examples

Page 26: Delaunay Mesh Generation

35/66Department of Computer Science and Engineering

Delsurf + Protection + Localization

Page 27: Delaunay Mesh Generation

36/66Department of Computer Science and Engineering

Delaunay Refinement Limitations

•Traditional refinement maintains Delaunay triangulation in memory

•This does not scale well•Causes memory thrashing•May be aborted by OS

Page 28: Delaunay Mesh Generation

37/66Department of Computer Science and Engineering

Localization

•A simple algorithm that avoids the scaling issues of the Delaunay triangulation•Avoids memory thrashing•Topological and geometric guarantees•Guarantee of termination•Potentially parallelizable

Page 29: Delaunay Mesh Generation

38/66Department of Computer Science and Engineering

A Natural Solution

•Use an octree T to divide S and process points in each node v of T separately

Page 30: Delaunay Mesh Generation

39/66Department of Computer Science and Engineering

Two Concerns

• Termination• Mesh consistency

Page 31: Delaunay Mesh Generation

40/66Department of Computer Science and Engineering

Termination Trouble

•A locally furthest point in node v can be very close to a point in other nodes

Page 32: Delaunay Mesh Generation

41/66Department of Computer Science and Engineering

Messing Mesh Consistency

• Individual meshes do not blend consistently across boundaries

Page 33: Delaunay Mesh Generation

42/66Department of Computer Science and Engineering

LocDel Algorithm: Overview

•Process nodes from a queue Q•Refines nodes with parameter λ if there

are violations

Page 34: Delaunay Mesh Generation

44/66Department of Computer Science and Engineering

Splitting

Page 35: Delaunay Mesh Generation

45/66Department of Computer Science and Engineering

Refining node

•Augment

•Assemble R=NUS

•Compute Del R|M•Refine•Surface Delaunay

ball larger than λ•Fp Del R|M is not a

disk

Page 36: Delaunay Mesh Generation

47/66Department of Computer Science and Engineering

Modified 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

Page 37: Delaunay Mesh Generation

49/66Department of Computer Science and Engineering

Reprocessing nodes for Consistency

•Needed for mesh consistency•Suppose s is added•Enqueue each node ' ≠ s.t. d(s, ') ≤ 2λ

Page 38: Delaunay Mesh Generation

50/66Department of Computer Science and Engineering

Maintaining light structures

• For each node keep:• S = S ∩ •Up ϵ S Fp

• Output: union of surface stars Up ϵ S Fp

Page 39: Delaunay Mesh Generation

51/66Department of Computer Science and Engineering

Termination

• 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 our result in Voronoi

point sampling:

Page 40: Delaunay Mesh Generation

53/66Department of Computer Science and Engineering

Mesh Theorem for Localization

Theorem:

•output mesh is a 2-manifold without boundary for any l.

•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)

Page 41: Delaunay Mesh Generation

60/66Department of Computer Science and Engineering

Results

Page 42: Delaunay Mesh Generation

61/66Department of Computer Science and Engineering

Results

Page 43: Delaunay Mesh Generation

62/66Department of Computer Science and Engineering

Localized Volume Meshing (SGP 2011)

• Extension of LocDel to volume meshing• Leverage existing results for proofs

• Dey-Levine-Slatton 10• Oudot-Rineau-Yvinec 05

• We prove• Termination• Geometric closeness of output to input• For small λ:

• Output is isotopic to input• Hausdorff distance O(λ2)

Page 44: Delaunay Mesh Generation

63/66Department of Computer Science and Engineering

LocVol

Page 45: Delaunay Mesh Generation

64/66Department of Computer Science and Engineering

LocVol

Page 46: Delaunay Mesh Generation

65/66Department of Computer Science and Engineering

Conclusions

Localized versions with certified geometry and topology

Localized versions for PSCs [D.-Slatton13]

Software available fromhttp://www.cse.ohio-state.edu/~tamaldey/surfremesh.html

http://www.cse.ohio-state.edu/~tamaldey/delpsc.html

http://www.cse.ohio-state.edu/~tamaldey/locpsc.html

Acknowledgement: NSF, CGAL

A book Delaunay Mesh Generation: S.-W. Cheng, T. Dey, J. Shewchuk (2012)

Page 47: Delaunay Mesh Generation

66/66Department of Computer Science and Engineering

Thank You!