Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez.

Similar presentations


Presentation on theme: "Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez."— Presentation transcript:

1 Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf

2 Motivation  When talking about mapping the surface of the Earth, it is unrealistic to assume there is no relief.  Need a method that approximates the peaks and valleys of a surface with a limited number of sample points efficiently and produces something that appears natural.  When talking about mapping the surface of the Earth, it is unrealistic to assume there is no relief.  Need a method that approximates the peaks and valleys of a surface with a limited number of sample points efficiently and produces something that appears natural.

3 Approach 1)Model a set of data points by first determining a Triangulation of P. (This is our main focus!) 2)Lift each sample point to its appropriate height 3)Result: Polyhedral terrain approximating the original terrain. 1)Model a set of data points by first determining a Triangulation of P. (This is our main focus!) 2)Lift each sample point to its appropriate height 3)Result: Polyhedral terrain approximating the original terrain.

4

5 Our Big Questions 1)How do we triangulate a set of sample points? There are many different possibilities! 2)Which triangulation is the most appropriate to approximate a terrain? No definitive answer. But, with a set of data, we can create a criterion that will aid us in finding the most natural approximation. 1)How do we triangulate a set of sample points? There are many different possibilities! 2)Which triangulation is the most appropriate to approximate a terrain? No definitive answer. But, with a set of data, we can create a criterion that will aid us in finding the most natural approximation.

6 The Main Criterion Maximize the minimal angle of every triangle in our triangulation. This is in fact, the Delaunay Triangulation! Maximize the minimal angle of every triangle in our triangulation. This is in fact, the Delaunay Triangulation!

7 First, some definitions  Terrain: A 2-D surface in 3-D space such that every vertical line intersects it in a point, if it intersects at all.  Triangulation of P: A planar subdivision whose bounded faces are triangles and whose vertices are the points of P, where.  Maximal Planar Subdivision: A subdivision S such that no edge connecting two vertices can be added to S without destroying its planarity.  Plane Graph: No two edges in the embedding cross.  Terrain: A 2-D surface in 3-D space such that every vertical line intersects it in a point, if it intersects at all.  Triangulation of P: A planar subdivision whose bounded faces are triangles and whose vertices are the points of P, where.  Maximal Planar Subdivision: A subdivision S such that no edge connecting two vertices can be added to S without destroying its planarity.  Plane Graph: No two edges in the embedding cross.

8 Redefining...  Triangulation of P: The maximal planar subdivision whose vertex set is P.

9 How We Compare Triangles  First, we need the notion of comparing angles.  Angle-Vector of T: is the angle-vector of T where T is the triangulation of P and is the list of 3m angles in T sorted by increasing angle.  First, we need the notion of comparing angles.  Angle-Vector of T: is the angle-vector of T where T is the triangulation of P and is the list of 3m angles in T sorted by increasing angle.

10 Compare Triangles...  : Let T and be triangulations of a point set P where and are the corresponding angle-vectors. Then we say the angle-vector of T is larger than the angle-vector of if is lexicographically larger than. This means if there exists an index i with such that then.  : Let T and be triangulations of a point set P where and are the corresponding angle-vectors. Then we say the angle-vector of T is larger than the angle-vector of if is lexicographically larger than. This means if there exists an index i with such that then.

11 Compare Triangles...  Angle-optimal: Our triangulation and corresponding angles are defined as in the previous slide. Then we say the triangulation T is angle-optimal if.  Angle-optimal: Our triangulation and corresponding angles are defined as in the previous slide. Then we say the triangulation T is angle-optimal if.

12 Compare Triangles...  Thale’s Theorem (9.2): Denote the smaller angle defined by three points p, q, r by. Let C be a circle, l be a line intersecting C in points a and b, and p, q, r, and s points lying on the same side of l. Suppose that p and q lie on C, that r lies inside C, and that s lies outside C. Then

13 Making a legal Triangulation  Edge Flip: If an edge e is not an edge of the unbounded face of P, then it is incident to two triangles and. If these two triangles form a convex quadrilateral, we can obtain a new triangulation by removing from T and inserting instead. This is called an edge flip.

14 Legal Triangulation...  Illegal Edge: We call the edge an illegal edge if.  It turns out though, computing angles is unnecessary. Instead, the following lemma introduces criterion based on edges. The correctness of this lemma follows directly from Thale’s Theorem.  Illegal Edge: We call the edge an illegal edge if.  It turns out though, computing angles is unnecessary. Instead, the following lemma introduces criterion based on edges. The correctness of this lemma follows directly from Thale’s Theorem.

15 Legal Triangulation  Lemma 9.4: Let edge be incident to triangles and, and let C be the circle through. The edge is illegal if and only if the point lies in the interior of C. Furthermore, if the points form a convex quadrilateral and do not lie on a common circle, then exactly one of and is an illegal edge.  Lemma 9.4: Let edge be incident to triangles and, and let C be the circle through. The edge is illegal if and only if the point lies in the interior of C. Furthermore, if the points form a convex quadrilateral and do not lie on a common circle, then exactly one of and is an illegal edge.

16 Legal Triangulation  Legal Triangulation: A triangulation that does not contain any illegal edges.

17 The Delaunay Triangulation Why We Trust DG(P)  We first must introduce the Voronoi Diagram of P: The subdivision of the plane P into n regions, one for each site (point) in P, such that the region of a site contains all points in the plane for which p is the closest site. We denote this as Vor(P).  We first must introduce the Voronoi Diagram of P: The subdivision of the plane P into n regions, one for each site (point) in P, such that the region of a site contains all points in the plane for which p is the closest site. We denote this as Vor(P).

18 Understanding DG(P)...  Delaunay Graph of P: The strait line embedding of a graph G, which has a line connecting two nodes if their corresponding Voronoi cells share an edge, denoted as DG(P).  Theorem 9.5: The Delaunay graph of a planar point set is a plane graph. (No two edges in the embedding cross!)  Delaunay Graph of P: The strait line embedding of a graph G, which has a line connecting two nodes if their corresponding Voronoi cells share an edge, denoted as DG(P).  Theorem 9.5: The Delaunay graph of a planar point set is a plane graph. (No two edges in the embedding cross!)

19 Understanding DG(P)...  General Position: We say that a set of points in general position if it contains no four points on a circle. Therefore, P in general position means every vertex of the Voronoi diagram has degree three, and consequently all bounded faces of DG(P) are triangles.

20 Understanding DG(P)...  Theorem 9.6: Let P be a set of points in the plane. (i)Three points are vertices of the same face of the Delaunay graph of P if and only if the circle through contains no point of P in its interior. (ii)Two points from an edge of the Delaunay graph of P if and only if there is a closed disc C that contains and on its boundary and does not contain any other point of P.  Theorem 9.6: Let P be a set of points in the plane. (i)Three points are vertices of the same face of the Delaunay graph of P if and only if the circle through contains no point of P in its interior. (ii)Two points from an edge of the Delaunay graph of P if and only if there is a closed disc C that contains and on its boundary and does not contain any other point of P.

21 Understanding DG(P)...  Theorem 9.7: Let P be a set of points in the plane, and let T be a triangulation of P. Then T is a Delaunay triangulation of P if and only if the circumcircle of any triangle of T does not contain a point of P in its interior.  Theorem 9.8: Let P be a set of points in the plane. A triangulation T of P is legal if and only if T is a Delaunay triangulation of P.  Theorem 9.7: Let P be a set of points in the plane, and let T be a triangulation of P. Then T is a Delaunay triangulation of P if and only if the circumcircle of any triangle of T does not contain a point of P in its interior.  Theorem 9.8: Let P be a set of points in the plane. A triangulation T of P is legal if and only if T is a Delaunay triangulation of P.

22 The Big Conclusion  Theorem 9.9: Let P be a set of points in the plane. Any angle-optimal triangulation of P is a Delaunay triangulation of P. Furthermore, any Delaunay triangulation of P maximizes the minimum angle over all triangulations of P.

23 Computing DG(P)  We first begin by creating three new points to add to P, which is the set.  These points are chosen far enough away from our point set so that when they are removed at the end of our algorithm, they do not destroy the triangulation created. (This means they do not lie on any circle defined by three points in P.)  The Algorithm is randomized incremental, which means our vertex points are entered randomly, and a Delaunay triangulation is maintained for the current point set.  We first begin by creating three new points to add to P, which is the set.  These points are chosen far enough away from our point set so that when they are removed at the end of our algorithm, they do not destroy the triangulation created. (This means they do not lie on any circle defined by three points in P.)  The Algorithm is randomized incremental, which means our vertex points are entered randomly, and a Delaunay triangulation is maintained for the current point set.

24 Computing DG(P)...  When a point is added to our point set, we must find the triangle that contains our point then add lines from to the vertices of this triangle. We have two cases to consider:  When a point is added to our point set, we must find the triangle that contains our point then add lines from to the vertices of this triangle. We have two cases to consider:

25 The Algorithm  It is simple: i) Add 3 points to P that surround our set. ii) Choose a point and add edges. iii)Check edges, if illegal, flip. iv) Remove 3 points added in i). v) Return triangulation of P.  It is simple: i) Add 3 points to P that surround our set. ii) Choose a point and add edges. iii)Check edges, if illegal, flip. iv) Remove 3 points added in i). v) Return triangulation of P.

26 But, Why Does It Work?  Correctness of Algorithm: Must show no illegal edge left behind! 1. We see that every new edge added is incident to our point. 2. We will see that every new edge added is in fact legal! 3. Combine 2) with the fact that any edge may become illegal only if it is incident to a triangle that has changed, then our algorithm tests any edge that may become illegal.  Correctness of Algorithm: Must show no illegal edge left behind! 1. We see that every new edge added is incident to our point. 2. We will see that every new edge added is in fact legal! 3. Combine 2) with the fact that any edge may become illegal only if it is incident to a triangle that has changed, then our algorithm tests any edge that may become illegal.

27 Why Every Added Edge is Legal  Lemma 9.10: Every new edge created in D ELAUNAY T RIANGULATION or in L EGALIZE E DGE during the insertion of is an edge of the Delaunay graph of. Thus, our algorithm is correct!  Lemma 9.10: Every new edge created in D ELAUNAY T RIANGULATION or in L EGALIZE E DGE during the insertion of is an edge of the Delaunay graph of. Thus, our algorithm is correct!

28 Two More Points!  How we find.  How to choose and decide if an edge is illegal.  How we find.  How to choose and decide if an edge is illegal.

29 Complexity  Theorem 9.12: The Delaunay triangulation of set P of n points in the plane can be computed in O(nlogn) expected time, using O(n) expected storage.

30 Revisit Our Diagrams Voroini Diagram Delaunay Graph Approximated Terrain

31 Final Thoughts...  We now have an efficient algorithm for triangulating planar point sets.  Applications: 1.geosciences 2.wireless networks 3.list of multiple uses of Delaunay 4. site to generate Delaunay triangulation  We now have an efficient algorithm for triangulating planar point sets.  Applications: 1.geosciences 2.wireless networks 3.list of multiple uses of Delaunay 4. site to generate Delaunay triangulation

32 References  De Berg et.al. Computational Geometry. Springer-Verlag, 2000.  Fukuda, Komei. Frequently Asked Questions in Polyheral Computation. 2004ftp://ftp.ifor.math.ethz.ch/pu b/fukuda/reports/polyfaq040618. pdfftp://ftp.ifor.math.ethz.ch/pu b/fukuda/reports/polyfaq040618. pdf  Previous websites  De Berg et.al. Computational Geometry. Springer-Verlag, 2000.  Fukuda, Komei. Frequently Asked Questions in Polyheral Computation. 2004ftp://ftp.ifor.math.ethz.ch/pu b/fukuda/reports/polyfaq040618. pdfftp://ftp.ifor.math.ethz.ch/pu b/fukuda/reports/polyfaq040618. pdf  Previous websites


Download ppt "Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez."

Similar presentations


Ads by Google