CMPS 3130/6130 Computational Geometry Spring 2017

Slides:



Advertisements
Similar presentations
Order-k Voronoi Diagram in the Plane
Advertisements

2/14/13CMPS 3120 Computational Geometry1 CMPS 3120: Computational Geometry Spring 2013 Planar Subdivisions and Point Location Carola Wenk Based on: Computational.
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
Proximity graphs: reconstruction of curves and surfaces
Computational Geometry II Brian Chen Rice University Computer Science.
1 Voronoi Diagrams. 2 Voronoi Diagram Input: A set of points locations (sites) in the plane.Input: A set of points locations (sites) in the plane. Output:
The Divide-and-Conquer Strategy
Ruslana Mys Delaunay Triangulation Delaunay Triangulation (DT)  Introduction  Delaunay-Voronoi based method  Algorithms to compute the convex hull 
By Groysman Maxim. Let S be a set of sites in the plane. Each point in the plane is influenced by each point of S. We would like to decompose the plane.
Convex Hulls in 3-space Jason C. Yang.
Convex Hull Problem Presented By Erion Lin. Outline Convex Hull Problem Voronoi Diagram Fermat Point.
3/5/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Delaunay Triangulations II Carola Wenk Based on: Computational.
1st Meeting Industrial Geometry Computational Geometry ---- Some Basic Structures 1st IG-Meeting.
Voronoi Diagram Presenter: GI1 11號 蔡逸凡
Lecture 7: Voronoi Diagrams Presented by Allen Miu Computational Geometry September 27, 2001.
Computational Geometry -- Voronoi Diagram
17. Computational Geometry Chapter 7 Voronoi Diagrams.
2. Voronoi Diagram 2.1 Definiton Given a finite set S of points in the plane , each point X of  defines a subset S X of S consisting of the points of.
3. Delaunay triangulation
Delaunay Triangulation Computational Geometry, WS 2006/07 Lecture 11 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
1 Lecture 8: Voronoi Diagram Computational Geometry Prof. Dr. Th. Ottmann Voronoi Diagrams Definition Characteristics Size and Storage Construction Use.
By Eyal Dushkin [Ed] Chapter 1. I. Introduction Reminder – Voronoi Diagrams  Let S be a set of sites in the plane.  Each point in the plane.
Graph Drawing Introduction 2005/2006. Graph Drawing: Introduction2 Contents Applications of graph drawing Planar graphs: some theory Different types of.
By Dor Lahav. Overview Straight Skeletons Convex Polygons Constrained Voronoi diagrams and Delauney triangulations.
TU/e computational geometry introduction Mark de Berg.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 Chapter 5: Voronoi Diagrams Wednesday,
Voronoi Diagrams Computational Geometry, WS 2006/07 Lecture 10 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 5: Voronoi Diagrams Monday, 2/23/04.
Lecture 10 : Delaunay Triangulation Computational Geometry Prof. Dr. Th. Ottmann 1 Overview Motivation. Triangulation of Planar Point Sets. Definition.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 9 Delaunay Triangulation.
Voronoi Diagrams and Delaunay Triangulations Generalized spaces and distances.
Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez.
Voronoi Diagrams.
1 University of Denver Department of Mathematics Department of Computer Science.
Introduction Outline The Problem Domain Network Design Spanning Trees Steiner Trees Triangulation Technique Spanners Spanners Application Simple Greedy.
5.2 Bisectors of Triangles5.2 Bisectors of Triangles  Use the properties of perpendicular bisectors of a triangle  Use the properties of angle bisectors.
UNC Chapel Hill M. C. Lin Point Location Chapter 6 of the Textbook –Review –Algorithm Analysis –Dealing with Degeneracies.
Delaunay Triangulations Presented by Glenn Eguchi Computational Geometry October 11, 2001.
9/7/06CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2006 Triangulations and Guarding Art Galleries Carola Wenk.
Planar Graphs: Euler's Formula and Coloring Graphs & Algorithms Lecture 7 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.:
On Graphs Supporting Greedy Forwarding for Directional Wireless Networks W. Si, B. Scholz, G. Mao, R. Boreli, et al. University of Western Sydney National.
Order-k Voronoi diagram in the plane Dominique Schmitt Université de Haute-Alsace.
2/19/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Voronoi Diagrams Carola Wenk Based on: Computational Geometry:
L8 - Delaunay triangulation L8 – Delaunay triangulation NGEN06(TEK230) – Algorithms in Geographical Information Systems.
5-3 Bisectors in Triangles
1/29/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Triangulations and Guarding Art Galleries Carola Wenk.
UNC Chapel Hill M. C. Lin Delaunay Triangulations Reading: Chapter 9 of the Textbook Driving Applications –Height Interpolation –Constrained Triangulation.
1/57 CS148: Introduction to Computer Graphics and Imaging Geometric Modeling CS148 Lecture 6.
9/8/10CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2010 Triangulations and Guarding Art Galleries Carola Wenk.
Perpendicular and Angle Bisectors Perpendicular Bisector – A line, segment, or ray that passes through the midpoint of a side of a triangle and is perpendicular.
3/3/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Delaunay Triangulations I Carola Wenk Based on: Computational.
CENG 789 – Digital Geometry Processing 03- Point Sets Asst. Prof. Yusuf Sahillioğlu Computer Eng. Dept,, Turkey.
Randomized Incremental Algorithm for Delaunay Triangulation (DT) CS Gates 219 October 19, 3:00 – 4:20 Richard Zhang (for Leo G.) Disclaimer: All.
CENG 789 – Digital Geometry Processing 03- Point Sets
CMPS 3130/6130 Computational Geometry Spring 2017
Introduction to Spatial Computing CSE 555
Image Morphing © Zooface Many slides from Alexei Efros, Berkeley.
CMPS 3130/6130 Computational Geometry Spring 2017
An Introduction to Computational Geometry
Selecting Forwarding Neighbors in Wireless Ad Hoc Networks
CMPS 3130/6130 Computational Geometry Spring 2017
Localizing the Delaunay Triangulation and its Parallel Implementation
CMPS 3130/6130 Computational Geometry Spring 2017
CHAPTER 33 Computational Geometry
Delaunay Triangulation & Application
CMPS 3130/6130 Computational Geometry Spring 2017
Computational Geometry
5.2 Bisectors of Triangles
The Minimum-Area Spanning Tree Problem
Triangulation- 2D & 3D Sriram Sethuraman
Presentation transcript:

CMPS 3130/6130 Computational Geometry Spring 2017 Delaunay Triangulations I Carola Wenk Based on: Computational Geometry: Algorithms and Applications 3/7/17 CMPS 3130/6130 Computational Geometry

CMPS 3130/6130 Computational Geometry Triangulation Let 𝑃= 𝑝 1 ,…, 𝑝 𝑛 ⊆ 𝑅 2 be a finite set of points in the plane. A triangulation of P is a simple, plane (i.e., planar embedded), connected graph T=(P,E) such that every edge in E is a line segment, the outer face is bounded by edges of CH(P), all inner faces are triangles. 3/7/17 CMPS 3130/6130 Computational Geometry

CMPS 3130/6130 Computational Geometry Dual Graph Let 𝐺=(𝑉,𝐸) be a plane graph. The dual graph G* has a vertex for every face of G, an edge for every edge of G, between the two faces incident to the original edge 3/7/17 CMPS 3130/6130 Computational Geometry

Delaunay Triangulation Let 𝐺 be the plane graph for the Voronoi diagram VD(P) . Then the dual graph G* is called the Delaunay Triangulation DT(P). Canonical straight-line embedding for DT(P): VD(P) P DT(P) If P is in general position (no three points on a line, no four points on a circle) then every inner face of DT(P) is indeed a triangle. DT(P) can be stored as an abstract graph, without geometric information. (No such obvious storing scheme for VD(P).) 3/7/17 CMPS 3130/6130 Computational Geometry

Straight-Line Embedding Lemma: DT(P) is a plane graph, i.e., the straight-line edges do not intersect. Proof: q p Dp pp’ is an edge of DT(P)  There is an empty closed disk Dp with p and p’ on its boundary, and its center c on the bisector. Let qq’ be another Delaunay edge that intersects pp’  q and q’ lie outside of Dp , therefore qq’ also intersects pc or p’c Symmetrically, pp’ also intersects qc’ or q’c’ (pc or p’c’) and (qc’ or q’c’) intersect The edges do not lie in different Voronoi cells. Contradiction pc  V(p) p’c  V(p’) c p’ q’ p qc'  V(q) q’c’  V(q’) q Dq c’ q’ p’ 3/7/17 CMPS 3130/6130 Computational Geometry

Characterization I of DT(P) Lemma: Let p,q,rP let D be the triangle they define. Then the following statements are equivalent: D belongs to DT(P) The circumcenter c of D is a vertex in VD(P) The circumcircle of D is empty (i.e., contains no other point of P) Proof sketch: All follow directly from the definition of DT(P) in VD(P). By definition of VD(P), we know that p,q,r are c’s nearest neighbors. Characterization I: Let T be a triangulation of P. Then T=DT(P)  The circumcircle of any triangle in T is empty. non-empty circumcircle pl pi pj pk 3/7/17 CMPS 3130/6130 Computational Geometry

CMPS 3130/6130 Computational Geometry Illegal Edges Definition: Let pi, pj, pk, plP . Then pi pj is an illegal edge  pl lies in the interior of the circle through pi, pj, pk . Lemma: Let pi, pj, pk, plP . Then pi pj is illegal  min ai < min a’i pl pi pj illegal edge pk 1≤i≤6 pl 1≤i≤6 pl pj pj pi a6 a5 edge flip a1 pi a’6 a’5 a2 a4 a’1 a’4 s a3 a’2 a’3 p q pk pk r Theorem (Thales): Let a, b, p, q be four points on a circle, and let r be inside and let s be outside of the circle, such that p,q,r,s lie on the same side of the line through a, b. Then a,s,b < a,q,b = a,p,b < a,r,b a b 3/7/17 CMPS 3130/6130 Computational Geometry

Characterization II of DT(P) Definition: A triangulation is called legal if it does not contain any illegal edges. Characterization II: Let T be a triangulation of P. Then T=DT(P)  T is legal. Algorithm Legal_Triangulation(T): Input: A triangulation T of a point set P Output: A legal triangulation of P while T contains an illegal edge pipj do //Flip pipj Let pi, pj, pk, pl be the quadrilateral containing pipj Remove pipj and add pkpl return T Runtime analysis: In every iteration of the loop the angle vector of T (all angles in T sorted by increasing value) increases With this one can show that a flipped edge never appears again There are O(n2) edges, therefore the runtime is O(n2) pl pj pi pk edge flip pl pi pj pk 3/7/17 CMPS 3130/6130 Computational Geometry

Characterization III of DT(P) Definition: Let T be a triangulation of P and let a1, a2,…, a3m be the angles of the m triangles in T sorted by increasing value. Then A(T)=(a1,a2,…,a3m) is called the angle vector of T. Definition: A triangulation T is called angle optimal  A(T) > A(T’) for any other triangulation of the same point set P. Let T’ be a triangulation that contains an illegal edge, and let T’’ be the resulting triangulation after flipping this edge. Then A(T’’) > A(T’) . T is angle optimal  T is legal  T=DT(P) Characterization III: Let T be a triangulation of P. Then T=DT(P)  T is angle optimal. (If P is not in general position, then any triangulation obtained by triangulating the faces maximizes the minimum angle.) 3/7/17 CMPS 3130/6130 Computational Geometry

CMPS 3130/6130 Computational Geometry Applications of DT All nearest neighbors: Find for each pP its nearest neighbor qP; qp. Empty circle property: p,qP are connected by an edge in DT(P)  there exists an empty circle passing through p and q. 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 has to lie on the Voronoi edge because it is equidistant to p and q and there is no site closer to c. Claim: In DT(P), every pP is adjacent to its nearest neighbors. Proof: Let qP be a nearest neighbor adjacent to p in DT(P). Then 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). p q p q 3/5/15 CMPS 3130/6130 Computational Geometry

CMPS 3130/6130 Computational Geometry 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