delaunay edge flips in dense surface triangulations

12
arXiv:0712.1959v1 [cs.CG] 12 Dec 2007 Delaunay Edge Flips in Dense Surface Triangulations Siu-Wing Cheng Tamal K. Dey February 2, 2008 Abstract Delaunay flip is an elegant, simple tool to convert a triangulation of a point set to its Delaunay triangulation. The technique has been researched extensively for full dimensional triangulations of point sets. However, an important case of triangulations which are not full dimensional is surface triangulations in three dimensions. In this paper we address the question of converting a surface triangulation to a subcomplex of the Delaunay triangulation with edge flips. We show that the surface triangulations which closely approximate a smooth surface with uniform density can be transformed to a Delaunay triangulation with a simple edge flip algorithm. The condition on uniformity becomes less stringent with increasing density of the triangulation. If the condition is dropped completely, the flip algorithm still terminates although the output surface triangulation becomes “almost Delaunay” instead of exactly Delaunay. Research supported by NSF grants CCF-0430735 and CCF-0635008 and RGC, Hong Kong, China (HKUST 6181/04E). Department of Computer Science and Engineering, HKUST, Clear Water Bay, Hong Kong. Email: [email protected] Department of Computer Science and Engineering, The Ohio State University, Columbus, OH 43210, USA. Email: [email protected]

Upload: osu

Post on 19-Nov-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

arX

iv:0

712.

1959

v1 [

cs.C

G]

12

Dec

200

7

Delaunay Edge Flips in Dense Surface Triangulations ∗

Siu-Wing Cheng† Tamal K. Dey‡

February 2, 2008

Abstract

Delaunay flip is an elegant, simple tool to convert a triangulation of a point set to itsDelaunay triangulation. The technique has been researched extensively for full dimensionaltriangulations of point sets. However, an important case of triangulations which are notfull dimensional is surface triangulations in three dimensions. In this paper we address thequestion of converting a surface triangulation to a subcomplex of the Delaunay triangulationwith edge flips. We show that the surface triangulations which closely approximate a smoothsurface with uniform density can be transformed to a Delaunay triangulation with a simpleedge flip algorithm. The condition on uniformity becomes less stringent with increasingdensity of the triangulation. If the condition is dropped completely, the flip algorithm stillterminates although the output surface triangulation becomes “almost Delaunay” insteadof exactly Delaunay.

∗Research supported by NSF grants CCF-0430735 and CCF-0635008 and RGC, Hong Kong, China (HKUST6181/04E).

†Department of Computer Science and Engineering, HKUST, Clear Water Bay, Hong Kong. Email:[email protected]

‡Department of Computer Science and Engineering, The Ohio State University, Columbus, OH 43210, USA.Email: [email protected]

1 Introduction

The importance of computing Delaunay triangulations of point sets in applications of scienceand engineering cannot be overemphasized. A number of different algorithms have been pro-posed for their computations [5, 8, 14]. Among them flip based algorithms are most popularand perhaps the most dominant approach in practice. The sheer elegance and simplicity of thisapproach make it attractive to implement.

Since the introduction of Delaunay flips by Lawson [17] for point sets in two dimensions,several important extensions have been made including higher dimensional point sets. Givenany triangulation of the convex hull of a point set in two dimensions, it is known that Delaunayedge flips can convert the triangulation to the Delaunay triangulation. The rule for Delaunayedge flips is simple. First, check locally if the circumscribing ball of a triangle t contains avertex of another triangle t′ sharing an edge e with it. If so, replace e with the other diagonaledge contained in the union of t and t′. An elegant result is that this process terminates withthe output as the Delaunay triangulation [5, 8, 14]. In higher dimensions, the edge flips canbe naturally extended to bi-stellar flips [14]. However, the approach extended by bi-stellarflips does not work in higher dimensions. Already in three dimensions there are exampleswhere the flipping process can get stuck [14]. Notwithstanding this negative result, Joe [16]showed how to construct Delaunay triangulations by inserting points incrementally and applyingbi-stellar flips after each point insertion. Edelsbrunner and Shah [15] extended this result tohigher dimensional point sets and to weighted Delaunay triangulations. Recently, Shewchuk [19]showed that a combination of flips and some other local operation called star splay can convertan “almost Delaunay” triangulation to the Delaunay one quite efficiently.

All the aforementioned results deal with full dimensional triangulations of a point set. Animportant case of triangulations which are not full dimensional is surface triangulations inthree dimensions. Given the increasing demand of computing surface triangulations that aresub-complexes of Delaunay triangulations [1, 7, 12], it is natural to ask if a surface triangulationcan be converted to a Delaunay one by edge flips and, if so, under what conditions. Such a flipalgorithm will be useful in many applications. For example, in geometric modeling, shapes areoften represented with subdivision surfaces [20] or with isosurfaces [18]. These surfaces are notnecessarily Delaunay. If one can convert these surfaces to a Delaunay one, a number of toolsthat exploit Delaunay properties can be used for further processing.

In this work we address the question of Delaunay flips in surface triangulations. Notice thatour goal is to convert a surface triangulation embedded in R

3 to another surface triangulationwhich is a sub-complex of the three dimensional Delaunay triangulation of the vertex set. This isdifferent from the framework considered elsewhere [6, 13] where a triangulated surface endowedwith a flat metric is converted into an intrinsic Delaunay triangulation comprised of simplices(not necessarily planar) embedded in the surface. In this case the embedding of the surface inR

3 does not play any role whereas in our case the positions of the vertices in R3 determine the

Delaunay flips.It turns out that dense surface triangulations are amenable to a simple edge flip algorithm.

A triangulation is dense if it approximates a smooth surface with sufficient resolution. We showthat a dense triangulation can be flipped to a Delaunay triangulation if the density is uniformin some sense. The condition on uniformity depends on the density. The higher the density, theless stringent is the condition. The practical implication of this result is that reasonably densetriangulations can be converted to Delaunay triangulations with a simple edge flip algorithm.Such dense triangulations are numerous in practice. Subdivision and isosurface meshes are twosuch examples. Triangulations of moving vertices offer another such example [10, 19]. In fact,

1

the results in this paper have been used for a recent algorithm on maintaining deforming mesheswith provable guarantees [10]. What happens if we do not have the uniformity condition? Weshow that the flip algorithm still terminates but the output surface may not be Delaunay.Nonetheless, this surface is “almost Delaunay” in the sense that the diametric ball of eachtriangle shrunk by a small amount remains empty. Bandyopadhyay and Snoeyink [4] showed theusefulness of such approximate Delaunay triangulations in molecular modeling. Because of theapproximate emptiness properties of the circumscribing balls of the triangles, these approximateDelaunay triangulations may find other applications where exact Delaunay triangulations arenot required.

2 Preliminaries

2.1 Definitions and results

We need some definitions and results from ε-sampling theory [1]. Let Σ ⊂ R3 be a smooth

compact surface without boundary. The medial axis is the set of centers of all maximallyempty balls. The reach γ(Σ) of Σ is the infimum over Euclidean distances of all points in Σ toits medial axis. This is also the infimum of the local feature size of Σ as defined by Amentaand Bern [1].

A surface triangulation T is a finite simplicial 2-manifold embedded in R3. We say T is a

triangulation of a surface Σ if vertices of T lie in Σ and its underlying space |T | is homeomorphicto Σ. The triangulation T has a consistent orientation with Σ if the oriented normal of eachtriangle makes at most π

2angle with the oriented normals of Σ at the vertices. For a triangle

t ∈ T , let ρ(t) denote the circumradius of t.

2.2 Uniform dense triangulations

Definition 1 A triangulation T of a surface Σ is ε-dense if each triangle t ∈ T has ρ(t) 6 εγ(Σ)and T has a consistent orientation with Σ. Furthermore, for δ < 1, if any two vertices in Thas distance more than δεγ(Σ), T is called (ε, δ)-dense or δ-uniform and ε-dense.

We use notation B(c, r) to denote a ball with center c and radius r. A circumscribing ballof a triangle t ⊂ R

3 is any ball that has the vertices of t on its boundary. The diametric ballDt is the smallest such ball; Dt = B(c, ρ(t)) where c is the circumcenter of t. We say a vertexv ∈ T stabs a ball B if v lies inside B. If t shares an edge, say pq, with a triangle t′ = pqs, thens is a neighbor vertex of t. Clearly, each triangle has three neighbor vertices.

Definition 2 A triangle t ∈ T is stabbed if Dt is stabbed by a vertex of T . We say t is locallystabbed if the stabbing vertex is one of the three neighbor vertices of t (Figure 1).

Theorem 2.1 and Theorem 2.2 are main results for uniform dense triangulations.

Theorem 2.1 For δ = 2 sin 24ε and ε < π72

, any (ε, δ)-dense triangulation has a stabbed trian-gle if and only if it has a locally stabbed triangle.

Notice that the bound on δ is O(ε). This implies that dense triangulations require only mildrestrictions on its uniformity.

We will flip edges of dense triangulations to make it Delaunay. Suppose pq is an edge in asurface triangulation T . Flipping pq means replacing two triangles, say pqr and pqs, incidentto pq in T by the triangles prs and qrs. If the new triangulation is T ′ we write T

pq→ T ′.

2

A triangulation T is flipped to a triangulation T ′ if there is a sequence of edge flips so that

T = T0

e0→ T1

e1→ ··ek−1

→ Tk = T ′.

Definition 3 An edge in a surface triangulation is called flippable if it is incident to a locallystabbed triangle.

One can devise an easy algorithm to convert a (ε, δ)-dense triangulation to a Delaunaytriangulation using Theorem 2.1. Simply flip any flippable edge existing in the triangulation. Ifone can prove that this flip algorithm terminates and (ε, δ)-density is maintained after each flip,we will have an algorithm to flip an (ε, δ)-dense triangulation to a triangulation that does nothave any stabbed triangle. This means each triangle in the new triangulation has its diametricball that does not contain any vertices of T . In other words, this new triangulation is Delaunay.Actually, the “Delaunayhood” is stronger since not only does each triangle have an emptycircumscribing ball but the ball can be chosen to be its diametric ball. Extending the notionof Gabriel graphs of a set of points in two dimensions, we call such a triangulation Gabriel.

Theorem 2.2 For δ = 2 sin 24ε and ε < π72

, any (ε, δ)-dense triangulation can be flipped to aGabriel triangulation.

Again, notice that the condition on uniformity becomes relaxed with increasing density.

2.3 Dense triangulations

It is natural to seek similar results for dense triangulations that are not necessarily uniform.It turns out that such triangulations can be flipped to almost Delaunay triangulations but notnecessarily to Delaunay triangulations. To prove this result we will need some generalizationsof the concept of stabbing as well as Delaunay triangulations. We denote a ball B = B(c, r)shrunk by α as Bα, that is, Bα = B(c, r − α). With this definition, Dα

t denotes the diametricball of t shrunk by α.

Definition 4 A surface triangulation T is α-Gabriel if for each triangle t ∈ T , the shrunkdiametric ball Dα

t contains no vertex of T inside.

p

r s

v

B

B

pq

r s

v q

2

1

Figure 1: (left) : pqr is stabbed by v and is locally stabbed by s; pq is a flippable edge. (right): B1 and B2 are (β)- and (−β)-balls of pqr which is β-stabbed by v and is locally β-stabbedby s; pq is a β-flippable edge.

3

Let nt denote the outward normal of a triangle t ∈ T . For a triangle t ∈ T and β ∈ R, aβ-ball of t is a circumscribing ball of t whose center is at c + βnt where c is the circumcenter oft. Observe that 0-ball of t is its diametric ball Dt. For any β 6= 0, there are two balls of radius√

ρ(t)2 + β2, one is β-ball and another is (−β)-ball of t. See Figure 1.

Definition 5 A triangle t ∈ T is β-stabbed if a vertex of T stabs both β- and (−β)-balls of t.We say t is locally β-stabbed if the stabbing vertex is one of the three neighbor vertices of t.

Observe that if a triangle t is not β-stabbed, the intersection of its β- and (−β)-balls cannotcontain any vertex of T . This intersection contains the ball Dα

t , α = ρ(t) + β −√

ρ(t)2 + β2,which also cannot contain any vertex of T . Observe that α 6 β.

Observation 2.1 A surface triangulation T is β-Gabriel if it does not have any β-stabbedtriangle.

We prove the following results.

Theorem 2.3 For ε < 0.1, any ε-dense triangulation of a surface with reach γ contains aβ-stabbed triangle only if it contains a locally (β − 88ε2γ)-stabbed triangle.

Choosing β = 88ε2γ we conclude that there is a 88ε2γ-stabbed triangle only if there is alocally stabbed triangle. Therefore, if one gets rid of all locally stabbed triangles, there cannotbe any 88ε2γ-stabbed triangles. In other words, the triangulation becomes 88ε2γ-Gabriel byObservation 2.1.

Theorem 2.4 Any ε-dense triangulation of a surface with reach γ can be flipped to a 88ε2γ-Gabriel triangulation if ε < 0.1.

2.4 Background results

The following well known results on normal approximations will be useful in our analysis.Starting with work of Amenta and Bern [1], several versions of these results have been proved.We pick appropriate ones for our purpose. Let nx denote the outward unit normal of Σ at apoint x ∈ Σ.

Lemma 2.1 ([9, 3]) For any two points x and y in Σ such that ‖x− y‖ 6 εγ for some ε 6 1

3,

∠nx,ny 6 ε1−ε

and ∠nx, (y − x) > arccos( ε2).

Following lemma is an oriented version of a result in [12]. Here we use the fact that T hasa consistent orientation with Σ. Interestingly, this property does not automatically follow fromtriangles being small and vertex set being dense.

Lemma 2.2 ([12]) Let pqr be a triangle in a ε-dense triangulation of a surface. Assume that psubtends a maximal angle in pqr. Then, for ε < 1√

2, ∠npqr,np 6 arcsin ε+arcsin( 2√

3(sin(2 arcsin ε)).

Combining Lemmas 2.1 and 2.2 one obtains the following corollary.

Corollary 2.1 Let q be any vertex in a triangle pqr ∈ T where T is a ε-dense triangulation ofa surface. Then, for ε < 0.1, ∠npqr,nq 6 7ε.

Define the dihedral angle between two adjacent triangles pqr and qrs as the angle betweentheir oriented normals, that is, ∠npqr,nqrs. An immediate result from Corollary 2.1 is that thedihedral angle between adjacent triangles in a dense triangulation is small.

Corollary 2.2 Let pqr and qrs be two triangles in a ε-dense triangulation of a surface. Then,for ε < 0.1, ∠npqr,nqrs 6 14ε.

4

3 Flip algorithm

Our flipping algorithm is very simple. Continue flipping as long as there is a flippable edge,that is, an edge incident to a stabbed triangle.

MeshFlip(T)

1. If there is a flippable edge e ∈ T then flip e else output T ;

2. T := T ′ where Te→ T ′; go to step 1.

The first issue to be settled is the termination of MeshFlip. It turns out that this simple flipalgorithm terminates if T is a ε-dense triangulation of a surface for ε < 0.1.

For convenience we introduce the notion of bisectors using power distance. The powerdistance pow(B,x) of a point x ∈ R

3 to a ball B = B(c, r) is ‖c − x‖2 − r2. For two ballsB1 and B2 in R

3, the bisector C(B1, B2) is the plane containing points with equal weighteddistances to B1 and B2. If B1 and B2 intersect, the bisector C(B1, B2) is the plane containingthe circle where the boundaries of B1 and B2 intersect. For two triangles pqr and pqs sharing anedge pq, we write Cpq = C(Dpqr,Dpqs). The following lemma establishes symmetry in stabbing.

Lemma 3.1 Let pqr and pqs be two adjacent triangles where s stabs pqr. If ∠npqr,npqs < π2,

r stabs pqs.

Proof. It can be shown that the bisector Cpq separates r and s if the planes of pqr and pqs makean angle larger than π

2or equivalently ∠npqr,npqs < π

2. Let C+

pq be the half-space supportedby Cpq and containing s. Clearly, Dpqs lies inside Dpqr in C+

pq as s is on the boundary of Dpqs.On the other half-space supported by Cpq which does not contain s, Dpqr lies inside Dpqs. Butthis half-space contains r which is on the boundary of Dpqr. This means r is inside Dpqs.

If an edge incident to a stabbed triangle is flipped in a triangulation with dihedral anglesless than π

2, the circumradius of each new triangle becomes smaller than the circumradius of one

of the two triangles destroyed by the flip. Actually, this is the key to prove that flip sequenceto get rid of all flippable edges terminate.

Lemma 3.2 Let T be a surface triangulation with dihedral angles smaller than π2. Let pq ∈ T

be an edge incident to a locally stabbed triangle pqr and pqs be the other triangle incident topq. We have ρ(qrs) 6 max{ρ(pqr), ρ(pqs)} and ρ(prs) 6 max{ρ(pqr), ρ(pqs)}.

Proof. We prove the lemma for ρ(qrs). The case for ρ(prs) can be proved similarly. Considerthe bisector Cpq of Dpqr and Dpqs, see Figure 2. Let C+

pq be the half-space supported by Cpq

containing s and C+rs be the half-space supported by Crs containing p.

By assumption the dihedral angle between pqr and pqs is at most π2. Then, Lemma 3.1

applies to claim that r stabs pqs.Clearly the center of Dqrs lies in the union C+

qr ∪ C+qs. First, assume that C+

qr contains thecenter of Dqrs. Clearly Dqrs ∩C+

qr is contained in Dpqr as s is contained in Dpqr by the assump-tion that s stabs pqr. Therefore Dqrs is contained in Dpqr in C+

qr which contains the center ofDqrs. This implies that Dqrs is smaller than Dpqr establishing the claim. If C+

qs contains thecenter of Dqrs the above argument can be repeated replacing Dpqr with Dpqs and s with r.

Since circumradii of triangles decrease by flipping flippable edges, triangles still can be ori-ented consistently with Σ and a homeomorphism using closest point map [2] can be established

5

s

qs

pqs

D

Dpqr

r

D

qrs

q p

r

p

Cqr

Cqs

Figure 2: Lemma 3.2: triangles after flipping pq have smaller circumradii.

between Σ and the new triangulation. In sum, the new triangulation satisfies the conditionsfor being ε-dense.

Corollary 3.1 If Te→ T ′ for a flippable edge e and T is ε-dense, then T ′ is also ε-dense.

Lemma 3.3 If T is ε-dense for ε < 0.1, MeshFlip(T ) terminates.

Proof. Let R1, R2, .., Rn be the decreasing sequence of the radii of the diametric balls of thetriangles at any instant of the flip process. First of all, an edge flip preserves the number oftriangles in the triangulation. An edge flip may change the entries in this sequence of radii,but not its length. We claim that after a flip the new radii sequence R′

1, R′2, ..., R

′n decreases

lexicographically, that is, there is a j such that Ri = R′i for all 1 6 i 6 j and Rj+1 > R′

j+1. Letj + 1 be the first index where Rj+1 6= R′

j+1. Since each flip maintains ε-density (Corollary 3.1)the dihedral angles between adjacent triangles remain at most 14ε by Corollary 2.2. This angleis less than π

2for ε < 0.1. One can apply Lemma 3.2 to each intermediate triangulation. By

this lemma the maximum of the two radii before a flip decreases after the flip. This meansthe triangle corresponding to the radius Rj+1 has been flipped and its place has been takenby a triangle whose circumradius is smaller than Rj+1. So the new radii sequence is smallerlexicographically. It follows that the same triangulation cannot appear twice during the flipsequence. As there are finitely many possible triangulations with a fixed number of vertices,the flip sequence must terminate.

4 Uniform dense triangulation

We prove Theorems 2.1 and 2.2 now. First, we need some technical results (Lemmas 4.2,and 4.3). We want to prove that if a vertex stabs the diametric ball of a triangle, it does notproject orthogonally to a point inside that triangle. Next lemma is used to prove this fact.

Lemma 4.1 Assume that a vertex v stabs a triangle pqr in a ε-dense triangulation of a surfacewhere ε < 0.1. Let v be the point in pqr closest to v. The angle between the segment vv andthe line of npqr is at least π

2− 26ε.

Proof. Let T be a ε-dense triangulation of surface Σ with reach γ. Since v stabs Dpqr, wehave ‖p − v‖ 6 2εγ which implies that ‖v − v‖ 6 2εγ. Walk from v towards v and let abc bethe first triangle in T that we hit. Let y be the point in abc that we hit. (The triangle abc

6

could possibly be pqr.) We have ‖v − y‖ 6 ‖v − v‖ 6 2εγ. By ε-density assumption, we have‖a − y‖ 6 2εγ. It follows that ‖a − v‖ 6 ‖a − y‖ + ‖v − y‖ 6 4εγ. Then, ∠nv,na 6 8ε byLemma 2.1, and ∠nabc,na 6 7ε by Corollary 2.1. Therefore, ∠nv,nabc 6 8ε + 7ε 6 15ε.

Let ℓ be an oriented line through v and v such that ℓ enters the polyhedron bounded by T aty ∈ abc and then exits at v. Assume to the contrary that ℓ makes an angle less than π

2−26ε with

npqr. Since ‖p− v‖ 6 2εγ, Lemma 2.1 and Corollary 2.1 imply that ∠nv,npqr 6 4ε + 7ε 6 11ε.Thus, ℓ makes an angle less than π

2− 15ε with nv. Since ∠nv,nabc < 15ε, ℓ must make an

angle less than π2

with nabc. Because ℓ enters at y and then exits at v, ∠nv,nabc is greater thanπ − (π

2− 15ε) − π

2= 15ε, contradicting the previous deduction that ∠nv,nabc < 15ε.

Lemma 4.2 Assume that a vertex v stabs Dpqr of a triangle pqr in a ε-dense triangulationwhere ε < 0.1. There exists an edge, say pq, such that r and v are separated by the plane Hpq

that contains pq and is perpendicular to pqr.

Proof. By Lemma 4.1, vv makes a positive angle with the line of npqr. It follows that v doesnot project orthogonally onto a point inside pqr. Hence, there exists an edge pq such that Hpq

separates r and v.

Next lemma leads to Theorem 2.1. This is where we require bounded aspect ratios oftriangles which ultimately lead to the uniformity condition. The aspect ratio of a triangle t isthe ratio of ρ(t) to its smallest edge length.

Lemma 4.3 Assume that a vertex v stabs a triangle pqr in a ε-dense triangulation T whereeach triangle has aspect ratio a < 1

2 sin 24ε. If ε < π

72, either pqr is locally stabbed or v stabs a

triangle t such that pow(v,Dt) < pow(v,Dpqr).

Proof. By Lemma 4.2, there is a plane Hpq through the edge pq and perpendicular to pqrsuch that Hpq separates r and v. Let pqs be the other triangle incident to pq. If s lies insideDpqr, pqr is locally stabbed and we are done. So assume that s does not lie inside Dpqr. ByCorollary 2.2 ∠npqr,npqs 6 14ε, which is less than π

2for ε < π

72. Therefore, Hpq separates r

and s too. It means that v and s lie on the same side of Hpq; see Figure 3.Let Cpq denote the bisector of Dpqr and Dpqs. Suppose that Cpq contains v and s on

the same side. It follows that Dpqs contains Dpqr inside on this side as s lies outside Dpqr.Also v lies inside Dpqs since v lies inside Dpqr. It immediately implies that v stabs pqs andpow(v,Dpqs) < pow(v,Dpqr). Therefore, we can establish the lemma if we prove that Cpq

contains v and s on the same side. This is exactly where we need bounded aspect ratios fortriangles.

Let s and v be the orthogonal projections of s and v respectively onto the line of pq. Considerthe following facts.

(i) The acute angle between ss and npqr is equal to π2−∠npqr,npqs, which is at least π

2− 14ε

by Corollary 2.2.

(ii) The angle between Hpq and Cpq cannot be larger than ∠npqr,npqs which is at most 14ε.

(iii) We prove that ∠npqr, vv > ∠npqr,npqs = ∠Hpq, Cpq.

The above three facts together imply that Cpq contains v and s on the same side as Hpq.Therefore, only thing remains to prove is fact (iii).

7

sq

p

r v

vpq> z

q

npqr

p

v vpqC

r

q

p

pqH

pqH

Figure 3: (left) : triangle pqr is stabbed by v. Both v and s lie on the same side of Hpq and Cpq.The case of v being in the thin wedge between Hpq and Cpq is eliminated if pqr has boundedaspect ratio. (middle) : the worst case for angle ∠vpq. (right): the planes of Hpq and vpq makelarge angle ensuring v and s are on the same side of Cpq.

First, observe that if v is the closest point of v in pq, we have by Lemma 4.1

∠npqr, vv >π

2− 26ε > 14ε > ∠npqr,npqs.

So, assume the contrary. In that case, the closest point of v in pq is one of p or q. Assume itto be p. Since v lies outside pq, the angle ∠vpq is obtuse. We claim that this angle cannot bearbitrarily close to π. In fact, this angle cannot be more than the maximum obtuse angle pqmakes with the tangent plane of Dpqr at p. Simple calculation (Figure 3(middle)) shows thatthis angle is π

2+ arccos ‖p − q‖/2ρ(pqr) giving

∠vpq 6π

2+ arccos

1

2a

where a is the aspect ratio of pqr. Since Dpqr contains v inside, ‖v − p‖ 6 2εγ. By Lemma 2.1∠np, vp > arccos ε. Applying Corollary 2.1 we get

∠npqr, vp > ∠np, vp − ∠npqr,np > arccos ε − 7ε.

Let zp||vv (Figure 3(right)). Then, ∠vv, vp = ∠vpz = ∠vpq − π2

6 arccos 1

2a. One has

∠npqr, vv > ∠npqr, vp − ∠vv, vp = ∠npqr, vp − ∠vpz > arccos ε − 7ε − arccos1

2a

2− 10ε − arccos

1

2afor ε < π

72.

We are now left to show thatπ

2− 10ε − arccos

1

2a> ∠npqr,npqs,

requiring,π

2− 24ε > arccos

1

2a

or, a <1

2 sin 24ε.

This is precisely the condition required by the lemma which can be achieved for ε < π72

.

8

Proof. [Proof of Theorems 2.1 and 2.2.] The ‘if’ part of Theorem 2.1 is obvious. To provethe ‘only if’ part, let pqr be stabbed by v. With δ = 2 sin 24ε aspect ratios are at most1/(2 sin 24ε). So, by Lemma 4.3, either pqr is locally stabbed or v stabs a triangle t wherepow(v,Dt) < pow(v,Dpqr). In the latter case repeat the argument with t. We must reach alocally stabbed triangle since the power distance of v from the diametric balls cannot decreaseindefinitely. For Theorem 2.2 observe that maximum circumradius decreases after each flip andnearest neighbor distance cannot be decreased by flips. So, MeshFlip maintains (ε, δ)-densityafter each flip which is the only thing remained to be proved.

5 Dense triangulations

We establish Theorems 2.3 and 2.4 in this section. We drop the uniformity condition, i.e., weassume T is only ε-dense for some ε > 0. We will use the notation πβ

t to denote the planeparallel to t and passing through the point c + βnt where c is the circumcenter of t. In otherwords, πβ

t is the diametric plane parallel to t in the β-ball of t.

Lemma 5.1 For ε < 0.1, let T be a ε-dense triangulation of a surface with reach γ. A vertexstabs a β-ball of a triangle t ∈ T only if there is a triangle t′ ∈ T with v as a neighbor vertexand v stabs the circumscribing ball of t′ that has center in the plane of πβ

t .

Proof. Let B be a β-ball of t stabbed by w. Consider the edges of T lying in B and planespassing through these edges which are orthogonal to πβ

t . Let Pe denote such a plane passingthrough the edge e. Let t = pqr and pq be the edge so that Hpq separates r and w accordingto Lemma 4.2. The line segment rw must cross Ppq = Hpq and possibly others. Let pq =e1, e2, ..., ek be the sequence of edges so that rw crosses Pe1

, Pe2, ..., Pek

in this order.Consider two triangles ti and ti+1 incident to any edge ei in the sequence e1, e2, ..., ek. Let

Bi and Bi+1 be the two balls circumscribing ti and ti+1 respectively and having centers on theplane πβ

t . Observe that the bisector of Bi and Bi+1 is Pei. If a vertex of ti+1 lies inside Bi we

have t′ = ti satisfying the lemma. Otherwise, Bi is contained in Bi+1 on the side of Peiwhich

contains w. So, pow(Bi, w) > pow(Bi+1, w). Since this relation holds for any i ∈ [1, k], we haveeither found the triangle t′ satisfying the lemma or 0 > pow(B,w) = pow(B1, w) > pow(Bk, w).In the latter case pow(Bk, w) is negative and hence Bk contains w inside. The ball Bk circum-

scribes tk and has center in πβt . It is stabbed by w where w is a neighbor vertex of tk satisfying

properties of t′ required by lemma.

Proof. [Proof of Theorem 2.3] Let t ∈ T be β-stabbed. By definition, the β-ball and (−β)-ballof t are stabbed by a vertex w. Apply Lemma 5.1 to both of these balls. Observe that theplanes (Pe) that we construct in the lemma remain same for both of these balls. It meansthat the segment rw in the proof crosses same set of planes. In other words, the triangle t′

guaranteed by Lemma 5.1 remains same. Let B and B′ be the two circumscribing balls of t′

which have their centers in πβt and π−β

t respectively. If we prove that B and B′ are larger than(β − 88ε2γ)-ball of t′, we will be done since then t′ will be locally (β − 88ε2γ)-stabbed.

Let c and c′ be the circumcenters of t and t′ respectively. Since t′ has an edge in the diametricball Dt and all triangles have circumradius less than εγ, the distance ‖c − c′‖ is at most 2εγ.We have ∠nt,np 6 7ε and ∠nt′ ,ns 6 7ε where p and s are vertices of t and t′ respectively.Also the distance between p and s cannot be more than 4εγ which gives ∠np,ns 6 8ε. In all,∠nt,nt′ 6 22ε when ε < 0.1. We want to estimate the distance of c′ from the plane of t. In the

9

worst case this distance is

‖c − c′‖ sin ∠nt,nt′ 6 4εγ sin 22ε 6 88ε2γ.

It means if we choose β > 88ε2γ, the center c′ lies inside the slab made by offsetting πt by βon both sides. The distance of c′ from these planes is at least (β − 88ε2γ). Therefore, withβ > 88ε2γ we have B and B′ larger than (β − 88ε2γ)-ball of t′ proving the claim.

Proof. [Proof of Theorem 2.4] We apply algorithm MeshFlip on the ε-dense triangulation T ofa surface whose reach is γ. According to Theorem 2.3 output triangulation cannot have any88ε2γ-stabbed triangle. By Observation 2.1, the output is 88ε2γ-Gabriel.

Instead of flipping all locally stabbed triangles, one may flip more conservatively. If wego on flipping edges that are incident to β-stabbed triangles, we get a triangulation which is(β+88ε2)-Gabriel. We flip less edges than MeshFlip does and hence obtain a worse triangulationin terms of approximation to Gabriel triangulation.

6 Conclusions

In this work we showed that a uniform dense surface triangulation can be flipped to a Delaunayone using simple Delaunay-like flips. If uniformity condition is dropped, we get almost Delaunaysurface triangulation.

This research ensues some open questions. Can the dense triangulations be flipped to exactDelaunay triangulation? It is unlikely that such triangulations can be flipped to exact Gabrieltriangulation. It might very well be that they cannot be flipped to exact Delaunay triangula-tions. Our flip algorithm converts dense triangulations to almost Gabriel triangulations. Is ittrue that such triangulations are actually a weighted Delaunay triangulation of its vertex setweighted appropriately? Or, is it possible to assign weights to the vertices and carry out edgeflips to convert a dense surface triangulation to a weighted Delaunay one? We plan to addressthese questions in future work.

References

[1] N. Amenta and M. Bern. Surface reconstruction by Voronoi filtering. Discr. Comput. Geom.22 (1999), 481–504.

[2] N. Amenta, S. Choi, T. K. Dey and N. Leekha. A simple algorithm for homeomorphicsurface reconstruction. Internat. J. Comput. Geom. Applications 12 (2002), 125–141.

[3] N. Amenta and T. K. Dey. Normal variation for adaptive feature size.http://www.cse.ohio-state.edu/∼tamaldey/paper/norvar/norvar.pdf.

[4] D. Bandyopadhyay and J. Snoeyink. Almost-Delaunay simplices : nearest neighbor rela-tions for imprecise points. Proc. 15th ACM-SIAM Sympos. Discrete Algorithms (2004),410–419.

[5] M. de Berg, M. van Kreveld, M. Overmars, and O. Schwarzkopf. Computational Geometry: Algorithms and Applications, Springer-Verlag, Berlin, Germany, 2000.

10

[6] A. I. Bobenko and B. A. Springborn. A discrete Laplace-Beltrami operator for simplicialsurfaces. arXiv:math.DG/0503219v3.

[7] J.-D. Boissonnat and S. Oudot. Provably good surface sampling and approximation. Eu-rographics Sympos. Geom. Process. (2003), 9–18.

[8] J.-D. Boissonnat and M. Yvinec. Algorithmic geometry. Cambridge University Press, NewYork, 1998.

[9] H.-L. Cheng, T. K. Dey, H. Edelsbrunner and J. Sullivan. Dynamic skin triangulation.Discrete Comput. Geom. 25 (2001), 525–568.

[10] S.-W. Cheng and T. K. Dey. Maintaining deforming surface meshes. Proc. NineteenthACM-SIAM Sympos. Discrete Algorithms, 2008, to appear.

[11] S.-W. Cheng, T. K. Dey, E. A. Ramos, and T. Ray. Sampling and meshing a surface withguaranteed topology and geometry. Proc. 20th Annu. Sympos. Comput. Geom. (2004),280–289.

[12] T. K. Dey. Curve and surface reconstruction : Algorithms with mathematical analysis.Cambridge University Press, New York, 2006.

[13] R. Dyer, H. Zhang, and T. Moller. Delaunay mesh construction. Proc. Sympos. Geom.Processing, 2007.

[14] H. Edelsbrunner. Geometry and topology for mesh generation. Cambridge University Press,New York, 2001.

[15] H. Edelsbrunner and N. R. Shah. Incremental topological flipping works for regular trian-gulations. Algorithmica 15 (1996), 223–241.

[16] B. Joe. Construction of three-dimensional Delaunay triangulations from local transforma-tions. Comput. Aided Geom. Design 8 (1991), 123–142.

[17] C. L. Lawson. Software for C1 surface interpolation. In Mathematical Software III, Aca-demic Press, New York, 1977, 161–194.

[18] W.E. Lorensen and H.E. Cline. Marching cubes: a high resolution 3D surface constructionalgorithm. Proc. SIGGRAPH, 1987, 163–169.

[19] J. Shewchuk. Star splaying : an algorithm for repairing Delaunay triangulations and convexhulls. Proc. 21st Ann. Sympos. Comput. Geom. (2005), 237–246.

[20] D. Zorin and P. Schroder. Subdivision for modeling and animation. SIGGRAPH 99 CourseNotes.

11