17. Computational Geometry Chapter 7 Voronoi Diagrams.

Slides:



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

Two Segments Intersect?
Polygon Triangulation
Computational Geometry
Voronoi Diagram – Fortune ’ s Algorithm Reporter: GI1 11 號 蔡逸凡 Date: 2004/10/28 Reference: Computational Geometry ch7 ISBN:
Map Overlay Algorithm. Birch forest Wolves Map 1: Vegetation Map 2: Animals.
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.
Brute-Force Triangulation
2/3/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Triangulations and Guarding Art Galleries II Carola Wenk.
UNC Chapel Hill M. C. Lin Polygon Triangulation Chapter 3 of the Textbook Driving Applications –Guarding an Art Gallery –3D Morphing.
9/12/06CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2006 Triangulations and Guarding Art Galleries II Carola Wenk.
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
Department of Geoinformation Science Technische Universität Berlin WS 2006/07 Geoinformation Technology: Voronoi Diagrams Alexandra Stadler Institute for.
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.
Overlay of Two Subdivisions
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.
Zoo-Keeper’s Problem An O(nlogn) algorithm for the zoo-keeper’s problem Sergei Bespamyatnikh Computational Geometry 24 (2003), pp th CGC Workshop.
9/5/06CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2006 Plane Sweep Algorithms and Segment Intersection Carola Wenk.
Voronoi Diagram Presenter: GI1 11號 蔡逸凡
Lecture 7: Voronoi Diagrams Presented by Allen Miu Computational Geometry September 27, 2001.
Robert Pless, CS 546: Computational Geometry Lecture #3 Last Time: Convex Hulls Today: Plane Sweep Algorithms, Segment Intersection, + (Element Uniqueness,
Computational Geometry -- Voronoi Diagram
Geometric Algorithms Suman Sourav Paramasiven Appavoo
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.
Geometric Data Structures Dr. M. Gavrilova. Lecture Plan Voronoi diagrams Trees and grid variants.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 Chapter 5: Voronoi Diagrams Wednesday,
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.
Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez.
Lecture 6: Point Location Computational Geometry Prof. Dr. Th. Ottmann 1 Point Location 1.Trapezoidal decomposition. 2.A search structure. 3.Randomized,
Voronoi Diagrams.
Brute-Force Triangulation
UNC Chapel Hill M. C. Lin Point Location Chapter 6 of the Textbook –Review –Algorithm Analysis –Dealing with Degeneracies.
CSE53111 Computational Geometry TOPICS q Preliminaries q Point in a Polygon q Polygon Construction q Convex Hulls Further Reading.
UNC Chapel Hill M. C. Lin Point Location Reading: Chapter 6 of the Textbook Driving Applications –Knowing Where You Are in GIS Related Applications –Triangulation.
UNC Chapel Hill M. C. Lin Linear Programming Reading: Chapter 4 of the Textbook Driving Applications –Casting/Metal Molding –Collision Detection Randomized.
UNC Chapel Hill M. C. Lin Line Segment Intersection Chapter 2 of the Textbook Driving Applications –Map overlap problems –3D Polyhedral Morphing.
Line Arrangement Chapter 6. Line Arrangement Problem: Given a set L of n lines in the plane, compute their arrangement which is a planar subdivision.
5 -1 Chapter 5 The Divide-and-Conquer Strategy A simple example finding the maximum of a set S of n numbers.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 8 Arrangements and Duality.
Week Aug-24 – Aug-29 Introduction to Spatial Computing CSE 5ISC Some slides adapted from Worboys and Duckham (2004) GIS: A Computing Perspective, Second.
Order-k Voronoi diagram in the plane Dominique Schmitt Université de Haute-Alsace.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 8 Arrangements and Duality.
2/19/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Voronoi Diagrams Carola Wenk Based on: Computational Geometry:
1 / 41 Convex Hulls in 3-space Jason C. Yang. 2 / 41 Problem Statement Given P: set of n points in 3-space Return: –Convex hull of P: CH (P) –Smallest.
UNC Chapel Hill M. C. Lin Computing Voronoi Diagram For each site p i, compute the common inter- section of the half-planes h(p i, p j ) for i  j, using.
UNC Chapel Hill M. C. Lin Delaunay Triangulations Reading: Chapter 9 of the Textbook Driving Applications –Height Interpolation –Constrained Triangulation.
February 17, 2005Lecture 6: Point Location Point Location (most slides by Sergi Elizalde and David Pritchard)
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2010 O’Rourke Chapter 6 with some material.
1 Schematization of Networks Rida Sadek. 2 This talk discusses: An algorithm that is studied in the following papers:  S. Cabello, M. de Berg, and M.
9/8/10CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2010 Triangulations and Guarding Art Galleries Carola Wenk.
Center for Graphics and Geometric Computing, Technion 1 Computational Geometry Chapter 9 Line Arrangements.
An Introduction to Computational Geometry: Arrangements and Duality Joseph S. B. Mitchell Stony Brook University Some images from [O’Rourke, Computational.
Polygon Triangulation
CMPS 3130/6130 Computational Geometry Spring 2017
Computational Geometry
(Slides mostly by Allen Miu)
VORONOI DIAGRAMS FOR PARALLEL HALFLINES IN 3D
CMPS 3130/6130 Computational Geometry Spring 2017
CMPS 3130/6130 Computational Geometry Spring 2017
Computational Geometry Capter:1-2.1
Chapter 7 Voronoi Diagrams
Computational Geometry
Overlay of Two Subdivisions
Presentation transcript:

17. Computational Geometry Chapter 7 Voronoi Diagrams

27. Voronoi Diagram Input: A set of points locations (sites) in the plane. Output: A planar subdivision into cells. Each cell contains all the points for which a certain site is the closest. Application: Nearest-neighbor queries (by point location in the diagram). The bisector between two points is a line.

37. Voronoi Diagram  Assume no four sites are co-circular.  The Voronoi diagram is a planar graph, whose vertices are equidistant from three sites, and edges equidistant from two sites.  The convex hull of the sites are those who have an unbounded cell. Prove !

47. Voronoi Diagram – Naïve Construction  Construct a bisector between one site and all others.  A Voronoi cell is the intersection of all half-planes defined by the bisectors.  Time complexity: O(nlogn) for each cell.  Corollary: Each cell in a Voronoi diagram is a convex polygon, possibly unbounded.

57. Voronoi Diagram  If all the sites are colinear, the Voronoi diagram will look like this:  Otherwise, the diagram is a connected planar graph, in which all the edges are line segments or rays

67. Voronoi Diagram Complexity  A Voronoi diagram of n distinct sites contains n cells.  One cell can have complexity n-1, but not all the cells can. The number of vertices V  2n-5 The number of edges E  3n-6 The number of faces F = n

77. Voronoi Diagram Properties  A vertex of a Voronoi diagram is the center of a circle passing through three sites.  Each point on an edge is the center of a circle passing through two sites. demo

87. Computing Voronoi Diagrams  Plane sweep.  The difficulty: If we maintain the VD of all points seen in the sweep so far – this can change as new points are swept.

97. The Beach Line  The bisector between a point and a line is a parabola. The beach line is the lower envelope of all the parabolas already seen.  Sweep the plane from above, while maintaining the invariant: the Voronoi diagram is correct up to the beach line.  The beach line is an x-monotone curve consisting of parabolic arcs. The breakpoints of the beach line lie on the Voronoi edges of the final diagram. Beach line breakpoint

107.  Possible events: Site event – The sweep line meets a site. A vertical edge (skinny parabola) connects the point and the arc above it. These events are predetermined Vertex event – An existing arc of the beach line shrinks to a point and disappears, creating a Voronoi vertex. Generated by consecutive triples of sites. The Algorithm

117. Beach Line Data Structure  A binary tree of sites: A leaf contains a site representing a parabolic arc. A site may appear in more than one leaf. Interior nodes describe immediate neighborhood relations. The tree must support insertion and deletion. P1P3P1P3 P1P2P1P2 P1P3P1P3 P3P3 P1P1 P2P2 P1P1 P1P1 P3P3 P2P2

127. Complexity of the Beach Line  The complexity of the beach line is O(n).  The first site generates one parabola.  Each other site can transform one parabola into three.  Total: 1+(3-1)(n-1) = 2n-1 P 1  P 1, P 2, P 1 P1P1 P2P2 Beach line

137. The Event Queue  Contains two types of information: For a site event – site ID. For a vertex event – lowest point of the circle and IDs of the triple of sites. Event priority: Its y coordinate.  Events are added and deleted.

147. Creating a Vertex Event  Each time a new arc is created in the beach line, check for a possible vertex event among new consecutive triples of arcs.  The circle must: Intersect the sweep line. Contain no other points lying above the sweep line.  Note: Some events may be false alarms (the circle contains points below the sweep line), which will be deleted later during a site event. False Alarm Vertex event

157. Handling Events  Site event Split arc vertically above site. Delete old triples from tree. Add new triples to tree. Delete vertex events whose three generators have been eliminated.  Vertex event Create Voronoi vertex. Delete appropriate arc. Delete old triples from tree. Add new triples to tree.

167. Complexity Analysis  Initialization – O(nlogn).  Number of events: O(n). Each event requires O(log n) time.  Note: A constant number of false alarm vertex events are created and deleted only when another real event occurs (so their number is also O(n)).  Total time: O(nlogn).  Space: The beach line structure and the Voronoi diagram both consume linear space – O(n).