Download presentation
1
Stony Brook University
An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke
2
Voronoi Diagrams Georgy Voronoi
3
Historical Origins and Diagrams in Nature
René Descartes 1644: Gravitational Influence of stars Dragonfly wing Giraffe pigmentation Honeycomb Constrained soap bubbles Ack: Streinu&Brock
4
http://uxblog. idvsolutions
Craigslist Map “A geometric pass at delineating areas within the United States potentially covered by each craigslist site -the United States of Craigslist.” Source: idvsolutions.com
5
Voronoi USA (source:
6
Voronoi Applications Voronoi, together with point location search: nearest neighbor queries Facility location: Largest empty disk (centered at a Voronoi vertex) Shape description/approximation: medial axis [Lecture 12, David Mount notes]
7
Starbucks Post Office Problem Query point Post offices
8
Voronoi Diagram Partition the plane according to the equivalence classes: V(Q) = { (x,y) : the closest sites of S to (x,y) is exactly the set Q S } |Q| = Voronoi cells (2-faces) |Q| = Voronoi edges (1-faces) |Q| Voronoi vertices (0-faces) Q cocircular Voronoi cell of pi is open, convex “cell complex”
9
Example p p Voronoi cell of p
10
Delaunay Diagram Equivalent definition: “Dual” of the Voronoi diagram
Join pi to pj iff there is an “empty circle” through pi and pj Equivalent definition: “Dual” of the Voronoi diagram Applet [Chew] A witness to the Delaunayhood of (pi , pj) If no 4 points cocircular (degenerate), then Delaunay diagram is a (very special) triangulation. pi pj
11
Voronoi/Delaunay
12
Delaunay: An Important, Practical Triangulation
Application: Piecewise-linear terrain surface interpolation
13
Terrain Interpolation from Point Sample Data
Got to here, 10/8/13… just started to discuss the terrain interpolation problem.
14
Delaunay: An Important, Practical Triangulation
Application: Piecewise-linear terrain surface interpolation
15
Delaunay: An Important, Practical Triangulation
Application: Piecewise-linear terrain surface interpolation
16
Delaunay for Terrain Interpolation
17
Voronoi and Delaunay
18
Voronoi and Delaunay
19
Delaunay’s Theorem
20
Delaunay’s Theorem
21
Voronoi and Delaunay Properties
The planar dual of Voronoi, drawn with nodes at the sites, edges straight segments, has no crossing edges [Delaunay]. It is the Delaunay diagram, D(S) (defined by empty circle property). Combinatorial size: 3n-6 Voronoi/Delaunay edges; 2n-5 Voronoi vertices (Delaunay faces) O(n) A Voronoi cell is unbounded iff its site is on the boundary of CH(S) CH(S) = boundary of unbounded face of D(S) Delaunay triangulation lexico-maximizes the angle vector among all triangulations In particular, maximizes the min angle
23
Angle Sequence of a Triangulation
24
Angle Sequence of a Triangulation
25
Legal Edges, Triangulations
Got to this slide, 10/25/12
26
Edge Flips (Swaps)
27
Geometry of Circles/Triangles
Thale’s Theorem
28
Legal/Illegal Edges Equivalent: alpha2 + alpha6 > pi
InCircle(pi ,pk ,pj ,pl )
29
Legal/Illegal Edges
30
Algorithm: Legalize Triangulation
31
Example: 4 points
32
Voronoi and Delaunay Properties
In any partition of S, S=B R, into blue/red points, any blue-red pair that is shortest B-R bridge is a Delaunay edge. Corollaries: D(S) is connected MST D(S) (MST=“min spanning tree”) NNG D(S) (NNG=“nearest neighbor graph”) Got to here 3/26/13
33
Voronoi and Delaunay Properties
In any partition of S, S=B R, into blue/red points, any blue-red pair that is shortest B-R bridge is a Delaunay edge. D(S) is connected MST D(S) (MST=“min spanning tree”) NNG D(S) (NNG=“nearest neighbor graph”) Voronoi/Delaunay can be built in time O(n log n) Divide and conquer Sweep Randomized incremental VoroGlide applet
34
Nearest Neighbor Graph: NNG
Directed graph NNG(S):
35
Minimum Spanning Tree; MST
Greedy algorithms: Prim: grows a tree Kruskal: grows a forest: O(e log v)
36
Euclidean MST One way to compute: Apply Prim or Kruskal to the complete graph, with edges weighted by their Euclidean lengths: O(n2 log n) Better: Exploit the fact that MST is a subgraph of the Delaunay (which has size O(n)): Apply Prim/Kruskal to the Delaunay: O(n log n), since e = O(n)
37
Euclidean MST
38
Traveling Salesperson Problem: TSP
40
Approximation Algorithms
41
PTAS for Geometric TSP
42
Voronoi Applet VoroGlide applet Got to here 3/26/13
43
Voronoi and Delaunay: 1D
Easy: Just sort the sites along the line Delaunay is a path Voronoi is a partition of the line into intervals Time: O(n log n) Lower bound: (n log n), since the Delaunay gives the sorted order of the input points, {x1 , x2 , x3 ,…}
44
Voronoi and Delaunay: 2D Algorithms
Naïve O(n2 log n) algorithm: Build Voronoi cells one by one, solving n halfplane intersection problems (each in O(n log n), using divide-and-conquer) Incremental: worst-case O(n2) Divide and conquer (first O(n log n)) Lawson Edge Swap (“Legalize”): Delaunay Randomized Incremental (expected O(n log n)) Sweep [Fortune] Any algorithm that computes CH in R3 , e.g., QHull Qhull website
46
Delaunay: Edge Flip Algorithm
Lawson Edge Swap “Legalize” [BKOS] Assume: No 4 co-circular points, for simplicity. Start with any triangulation Keep a list (stack) of “illegal” edges: ab is illegal if InCircle(a,c,b,d) iff the smallest of the 6 angles goes up if flip Flip any illegal edge; update legality status of neighboring edges Continue until no illegal edges Theorem: A triangulation is Delaunay iff there are no illegal edges (i.e., it is “locally Delaunay”) Only O(n2 ) flips needed. d b Locally non-Delauany a c
47
Connection to Convex Hulls in 3D
Delaunay diagram lower convex hull of the lifted sites, (xi , yi , xi 2 +yi 2 ), on the paraboloid of revolution, z=x2 + y2 Upper hull “furthest site Delaunay” 3D CH applet
50
Delaunay in 2D is Convex Hull in 3D
51
Delaunay in 2D is Convex Hull in 3D
52
Voronoi and Delaunay Algorithms: Straightforward incremental: O(n2 )
Divide and conquer (first O(n log n)) Sweep Randomized incremental Any algorithm that computes CH in R3 , e.g., QHull Qhull website
53
Straightforward Incremental Algorithm: Voronoi
54
Straightforward Incremental Algorithm: Voronoi
55
Fortune’s Sweep Algorithm
AMS 545 / CSE 555 Applet Ack: Guibas&Stolfi
56
Parabolic Front AMS 545 / CSE 555 Applet Ack: Guibas&Stolfi
57
Site Events a) b) c) AMS 545 / CSE 555 Applet Ack: Guibas&Stolfi
58
Circle Events AMS 545 / CSE 555 Applet Ack: Guibas&Stolfi
59
Scheduling Circle Events
AMS 545 / CSE 555 Applet Ack: Guibas&Stolfi
62
Incremental Construction
Add sites one by one, modifying the Delaunay (Voronoi) as we go: Join vi to 3 corners of triangle containing it Do edge flips to restore local Delaunayhood If added in random order, simple “Backwards analysis” shows expected time O(n log n) [Guibas, Knuth, Sharir] old link to applet, showing Vor, Del, empty circles AMS 545 / CSE 555
63
CS691G Computational Geometry - UMass Amherst
Example CS691G Computational Geometry - UMass Amherst
64
Voronoi Extensions Numerous ! [see Okabe, Boots, Sugihara, Chiu]
Different metrics Higher dimensions: Delaunay in Rd lower CH in Rd+1 O( n log n + n (d+1)/2 ) Order-k, furthest-site Other sites: Voronoi of polygons, “medial axis” Additive/multiplicative weights; power diagram -shapes: a powerful shape representation GeoMagic, biogeometry at Duke
65
Furthest Site Voronoi
66
Medial Axis: Convex Polygon
67
Medial Axis: Convex Polygon
68
Medial Axis: Nonconvex Polygon
69
Medial Axis: Curved Domain
70
Straight Skeleton
71
VRONI: Fast, robust Voronoi of polygonal domains
Incremental algorithm
73
Computing offsets with a Voronoi diagram
74
Alpha Shapes, Hulls “Erase” with a ball of radius to get -shape. Straighten edges to get -hull
76
-Shapes Theorem: For each Delaunay edge, e=(pi,pj), there exists min(e)>0 and max(e)>0 such that e -shape of S iff min(e) max(e). Thus, every alpha-hull edge is in the Delaunay, and every Delaunay edge is in some alpha-shape. Applet
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.