0% found this document useful (0 votes)
5 views11 pages

Delaunay Triangulations II: CMPS 3130/6130 Computational Geometry Spring 2015

The document discusses Delaunay Triangulations (DT) and their applications in computational geometry, including terrain modeling and nearest neighbor searches. It outlines a randomized incremental construction algorithm for DT and presents theorems relating DT to the lower convex hull in 3D. Additionally, it emphasizes the importance of maintaining the history of constructed triangles for efficient point insertion.

Uploaded by

Anant Nimkar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views11 pages

Delaunay Triangulations II: CMPS 3130/6130 Computational Geometry Spring 2015

The document discusses Delaunay Triangulations (DT) and their applications in computational geometry, including terrain modeling and nearest neighbor searches. It outlines a randomized incremental construction algorithm for DT and presents theorems relating DT to the lower convex hull in 3D. Additionally, it emphasizes the importance of maintaining the history of constructed triangles for efficient point insertion.

Uploaded by

Anant Nimkar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 11

CMPS 3130/6130 Computational Geometry

Spring 2015

Delaunay Triangulations II
Carola Wenk
Based on:
Computational Geometry: Algorithms and Applications

3/5/15 CMPS 3130/6130 Computational Geometry 1


Applications of DT
• Terrain modeling:
– Model a scanned terrain surface by interpolating the
height using a piecewise linear function over R2.

– Angle-optimal triangulations give better


approximations / interpolations since they avoid skinny
triangles

3/5/15 CMPS 3130/6130 Computational Geometry 2


Applications of DT
• All nearest neighbors: Find for each pP its nearest neighbor qP;
qp.
p
– Empty circle property: p,qP are connected by an edge in DT(P)
 there exists an empty circle passing through p and p.
Proof: “”: For the Delaunay edge pq there must be a Voronoi edge.
Center a circle through p and q at any point on the Voronoi edge,
this circle must be empty.
“”: If there is an empty circle through p and q, then its center c q
has to lie on the Voronoi edge because it is equidistant to p and q
and there is no site closer to c.

– Claim: Every pP is adjacent in DT(P) to its nearest neighbor qP. p q


Proof: The circle centered at p with q on its boundary has to be empty,
so the circle with diameter pq is empty and pq is a Delaunay edge.

– Algorithm: Find all nearest neighbors in O(n) time: Check for


each pP all points connected to p with a Delaunay edge.
• Minimum spanning tree: The edges of every Euclidean minimum
spanning tree of P are a subset of the edges of DT(P).

3/5/15 CMPS 3130/6130 Computational Geometry 3


Randomized Incremental
Construction of DT(P)
• Start with a large triangle containing P.

• Insert points of P incrementally:


– Find the containing triangle
– Add new edges

– Flip all illegal edges until every edge is legal.

3/5/15 CMPS 3130/6130 Computational Geometry 4


Randomized Incremental
Construction of DT(P)

pr pr

• An edge can become illegal only if one of its incident triangles


changes.
• Check only edges of new triangles.
• Every new edge created is incident to pr.
• Every old edge is legal (if pr is on on one of the incident triangles, the
edge would have been flipped if it were illegal).
• Every new edge is legal (since it has been created from flipping a legal
edge).

3/5/15 CMPS 3130/6130 Computational Geometry 5


Pseudo Code

3/5/15 CMPS 3130/6130 Computational Geometry 6


History
The algorithm stores the history of the constructed triangles. This allows to
easily locate the triangle containing a new point by following pointers.

• Division of a triangle:

Store pointers from the old triangle


to the three new triangles.

• Flip:

Store pointers from both old triangles


to both new triangles.

3/5/15 CMPS 3130/6130 Computational Geometry 7


DT and 3D CH
Theorem: Let P={p1,…,pn} with pi=(ai, bi,0). Let p*i =(ai, bi, a2i+ b2i) be the
vertical projection of each point pi onto the paraboloid z=x2+ y2. Then DT(P)
is the orthogonal projection onto the plane z=0 of the lower convex hull of
P*={p*1,…,p*n} .

P*

Pictures generated with Hull2VD tool available at http://www.cs.mtu.edu/~shene/NSF-2/DM2-BETA


3/5/15 CMPS 3130/6130 Computational Geometry 8
DT and 3D CH
Theorem: Let P={p1,…,pn} with pi=(ai, bi,0). Let p*i =(ai, bi, a2i+ b2i) be the
vertical projection of each point pi onto the paraboloid z=x2+ y2. Then DT(P)
is the orthogonal projection onto the plane z=0 of the lower convex hull of
P*={p*1,…,p*n} .

Pictures generated with Hull2VD tool available at http://www.cs.mtu.edu/~shene/NSF-2/DM2-BETA


3/5/15 CMPS 3130/6130 Computational Geometry 9
DT and 3D CH
Theorem: Let P={p1,…,pn} with pi=(ai, bi,0). Let p*i =(ai, bi, a2i+ b2i) be the
vertical projection of each point pi onto the paraboloid z=x2+ y2. Then DT(P)
is the orthogonal projection onto the plane z=0 of the lower convex hull of
P*={p*1,…,p*n} .

Pictures generated with Hull2VD tool available at http://www.cs.mtu.edu/~shene/NSF-2/DM2-BETA


3/5/15 CMPS 3130/6130 Computational Geometry 10
DT and 3D CH
Theorem: Let P={p1,…,pn} with pi=(ai, bi,0). Let p*i =(ai, bi, a2i+ b2i) be the
vertical projection of each point pi onto the paraboloid z=x2+ y2. Then DT(P)
is the orthogonal projection onto the plane z=0 of the lower convex hull of
P*={p*1,…,p*n} .
p*i, p*j, p*k form a (triangular)
face of LCH(P*)

The plane through p*i, p*j, p*k
property leaves all remaining points of P
of unit above it
paraboloid 
The circle through pi, pj, pk leaves
all remaining points of P in its
exterior

pi, pj, pk form a triangle of DT(P)
Slide adapted from slides by Vera Sacristan.
3/5/15 CMPS 3130/6130 Computational Geometry 11

You might also like