Presentation is loading. Please wait.

Presentation is loading. Please wait.

UMass Lowell Computer Science 91.504 Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 5: Voronoi Diagrams Monday, 2/23/04.

Similar presentations


Presentation on theme: "UMass Lowell Computer Science 91.504 Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 5: Voronoi Diagrams Monday, 2/23/04."— Presentation transcript:

1 UMass Lowell Computer Science 91.504 Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 5: Voronoi Diagrams Monday, 2/23/04

2 Chapter 5 Voronoi Diagrams Applications Preview Definitions & Basic Properties Delaunay Triangulations Algorithms Applications in Detail Medial Axis Connection to Convex Hulls Connection to Arrangements

3 Applications Preview ä Nearest neighbors ä Minimum spanning tree ä Medial axis http://www.ics.uci.edu/~eppstein/gina/scot.drysdale.html

4 Common Computational Geometry Structures Voronoi Diagram Delaunay Triangulation Convex Hull New Point

5 Basics ä Voronoi region V(p i ) is set of all points at least as close to p i as to any other site:

6 Delaunay Triangulations: Properties http://www.cs.cornell.edu/Info/People/chew/Delaunay.html

7 ä D1. D(P) is the straight-line dual of V(P) [by definition] ä D2. D(P) is a triangulation if no 4 points of P are cocircular: Every face is a triangle. ä D3. Each face of D(P) corresponds to a vertex of V(P) ä D4. Each edge of D(P) corresponds to an edge of V(P) ä D5. Each node of D(P) corresponds to a region of V(P) ä D6. The boundary of D(P) is the convex hull of the sites ä D7. The interior of each face of D(P) contains no sites

8 Delaunay Triangulations: Properties of Voronoi Diagrams http://www.cs.cornell.edu/Info/People/chew/Delaunay.html

9 Voronoi Diagram: Properties ä V1. Each Voronoi region V(p i ) is convex ä V2. V(p i ) is unbounded iff p i is on convex hull of point set ä V3. If v is a Voronoi vertex at junction of V(p 1 ), V(p 2 ), V(p 3 ), then v is center of circle C(v) determined by p 1, p 2, and p 3. ä V4. C(v) is circumcircle for Delaunay triangle for v ä V5. Interior(C(v)) contains no sites ä V6. If p i is a nearest neighbor to p j, then (p i, p j ) is an edge of D(P) ä V7. If there is some circle through p i and p j that contains no other sites, then (p i, p j ) is an edge of D(P). [reverse holds too]

10 Algorithms ä Half-Plane Intersection: ä Construct each Voronoi region separately: ä Intersect n-1 halfplanes ä O(n lg n) time ä Total time: O(n 2 lg n) ä Incremental Construction: ä Add one point at a time ä If new point is inside some Voronoi circle, locally update diagram ä O(n) work per point ä Total time: O(n 2 ) ä Divide-and-Conquer: O(n lg n)

11 Algorithms: Fortune ä Plane-sweep complication: ä what if encounter Voronoi edges before site? ä solution: ä Use expanding circles interpretation ä Sweep-line is intersection of slanted plane with xy-plane ä Event = intersection of 2 cones ä Maintain parabolic front = projection of intersection of slanted plane with xy-plane 45 slope timeO(nlgn) x sweep line L at x = l 

12 How are they related? Delaunay Triangulation ä Project each point upwards onto paraboloid z= x 2 + y 2 ä Construct 3D Convex Hull ä Discard “top” faces ä Project Convex Hull down to xy plane to form Delaunay Triangulation ä View from z = -infinity to see Delaunay Triangulation

13 How are they related? Voronoi Diagram ä Project each point upwards onto paraboloid z= x 2 + y 2 ä At each projected point, construct plane tangent to paraboloid ä tangent above (a,b) is ä z = 2ax + 2by - (a 2 + b 2 ) ä View from z = +infinity to see Voronoi Diagram ä “first intersection” of planes

14 Applications: Minimum Spanning Tree

15 Applications: Medial Axis Medial Axis Pruning: Robert Ogniewicz of Harvard uses medial axes for shape recognition. http://www.ics.uci.edu/~eppstein/gina/medial.html

16 Applications: Shewchuck Triangulation http://www.cs.cmu.edu/~quake/triangle.demo.html

17 Relative Neighborhood Graph The Relative Neighborhood Graph (RNG) of points p 1, p 2,..., p n is a graph: whose nodes correspond to the points - whose nodes correspond to the points 2 nodes p 1, p 2 share an arc iff they are at least as close to each other as to any other point: - 2 nodes p 1, p 2 share an arc iff they are at least as close to each other as to any other point: Note: this produces a set of constraints (1 for each m) It can be shown that: - every edge of the RNG is an edge of the Delaunay triangulation - every edge of an MST is an edge of the RNG LUNE forbidden region RNG for 4 sample points


Download ppt "UMass Lowell Computer Science 91.504 Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 5: Voronoi Diagrams Monday, 2/23/04."

Similar presentations


Ads by Google