an introduction to computational geometry: voronoi and delaunay diagrams joseph s. b. mitchell stony...
TRANSCRIPT
![Page 1: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/1.jpg)
An Introduction to An Introduction to Computational Geometry:Computational Geometry:
Voronoi and Delaunay DiagramsVoronoi and Delaunay Diagrams
Joseph S. B. MitchellStony Brook University
Chapters 3,4: Devadoss-O’Rourke
![Page 2: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/2.jpg)
Voronoi DiagramsVoronoi Diagrams
Georgy Voronoi1868-1908
![Page 3: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/3.jpg)
Historical Origins and Diagrams in Historical Origins and Diagrams in NatureNature
33
René Descartes1596-1650 1644: GravitationalInfluence of stars
Dragonfly wing
Honeycomb
Constrained soap bubbles
Giraffe pigmentation
Ack: Streinu&Brock
![Page 4: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/4.jpg)
Craigslist MapCraigslist Map
44
“A geometric pass at delineating areas within the United States potentially covered by each craigslist site -the United States of Craigslist.”
Source: idvsolutions.com
http://uxblog.idvsolutions.com/2011/07/chalkboard-maps-united-states-of.html
![Page 5: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/5.jpg)
Voronoi USAVoronoi USA
55(source: http://www.reddit.com/r/MapPorn/comments/1hi07c/voronoi_map_thiessen_polygons_of_the_usa_based_on/)
![Page 6: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/6.jpg)
Voronoi ApplicationsVoronoi Applications
Voronoi, together with point location Voronoi, together with point location search: nearest neighbor queriessearch: nearest neighbor queries
Facility location: Largest empty disk Facility location: Largest empty disk (centered at a Voronoi vertex)(centered at a Voronoi vertex)
Shape description/approximation: Shape description/approximation: medial axismedial axis
66[Lecture 12, David Mount notes]
![Page 7: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/7.jpg)
Post Office ProblemPost Office ProblemPost officesQuery point
Starbucks
![Page 8: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/8.jpg)
Voronoi DiagramVoronoi Diagram
Partition the plane according to the Partition the plane according to the equivalence classes: equivalence classes: V(Q) = { (x,y) : the V(Q) = { (x,y) : the closest sites of S to (x,y) is exactly the set closest sites of S to (x,y) is exactly the set Q Q S } S }• ||QQ| = 1 Voronoi cells (2-faces)| = 1 Voronoi cells (2-faces)• ||QQ| = 2 Voronoi edges (1-faces)| = 2 Voronoi edges (1-faces)• ||QQ| | 3 Voronoi vertices (0-faces) 3 Voronoi vertices (0-faces)
88
Q cocircular
Voronoi cell of pi is open, convex
“cell complex”
![Page 9: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/9.jpg)
ExampleExample
99
Voronoi cell of p
pp
![Page 10: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/10.jpg)
Join Join ppii to to ppjj iff there is an “empty circle” iff there is an “empty circle” through through ppii and and ppjj
Equivalent definition: “Dual” of the Equivalent definition: “Dual” of the Voronoi diagramVoronoi diagram
Applet [Chew] [Chew]
Delaunay DiagramDelaunay Diagram
1010
pi
pj
A witness to the Delaunayhood of (pi , pj)
If no 4 points cocircular (degenerate), then Delaunay diagram is a (very special) triangulation.
![Page 11: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/11.jpg)
Voronoi/DelaunayVoronoi/Delaunay
1111
![Page 12: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/12.jpg)
Delaunay: An Important, Delaunay: An Important, Practical TriangulationPractical Triangulation
Application: Piecewise-linear terrain Application: Piecewise-linear terrain surface interpolationsurface interpolation
1212
![Page 13: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/13.jpg)
Terrain Interpolation from Terrain Interpolation from Point Sample DataPoint Sample Data
1313
![Page 14: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/14.jpg)
Delaunay: An Important, Delaunay: An Important, Practical TriangulationPractical Triangulation
Application: Piecewise-linear terrain Application: Piecewise-linear terrain surface interpolationsurface interpolation
1414
![Page 15: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/15.jpg)
Delaunay: An Important, Delaunay: An Important, Practical TriangulationPractical Triangulation
Application: Piecewise-linear terrain Application: Piecewise-linear terrain surface interpolationsurface interpolation
1515
![Page 16: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/16.jpg)
Delaunay for Terrain Delaunay for Terrain InterpolationInterpolation
1616
![Page 17: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/17.jpg)
Voronoi and DelaunayVoronoi and Delaunay
1717
![Page 18: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/18.jpg)
Voronoi and DelaunayVoronoi and Delaunay
1818
![Page 19: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/19.jpg)
Delaunay’s TheoremDelaunay’s Theorem
1919
![Page 20: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/20.jpg)
Delaunay’s TheoremDelaunay’s Theorem
2020
![Page 21: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/21.jpg)
Voronoi and Delaunay Voronoi and Delaunay PropertiesProperties
The planar dual of Voronoi, drawn with nodes at the The planar dual of Voronoi, drawn with nodes at the sites, edges straight segments, has no crossing sites, edges straight segments, has no crossing edges edges [Delaunay]. [Delaunay]. It is the Delaunay diagram, It is the Delaunay diagram, DD((SS) ) (defined by empty circle property).(defined by empty circle property).
Combinatorial size: Combinatorial size: 3 3nn-6 Voronoi/Delaunay edges; -6 Voronoi/Delaunay edges; 2 2nn-5 Voronoi vertices (Delaunay faces) -5 Voronoi vertices (Delaunay faces) O(O(nn))
A Voronoi cell is unbounded iff its site is on the A Voronoi cell is unbounded iff its site is on the boundary of CH(boundary of CH(SS))
CH(CH(SS) = boundary of unbounded face of ) = boundary of unbounded face of DD((SS)) Delaunay triangulation lexico-maximizes the angle Delaunay triangulation lexico-maximizes the angle
vector among all triangulationsvector among all triangulations• In particular, maximizes the min angleIn particular, maximizes the min angle
2121
![Page 22: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/22.jpg)
2222
![Page 23: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/23.jpg)
Angle Sequence of a Angle Sequence of a TriangulationTriangulation
2323
![Page 24: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/24.jpg)
Angle Sequence of a Angle Sequence of a TriangulationTriangulation
2424
![Page 25: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/25.jpg)
Legal Edges, TriangulationsLegal Edges, Triangulations
2525
![Page 26: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/26.jpg)
Edge Flips (Swaps)Edge Flips (Swaps)
2626
![Page 27: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/27.jpg)
Geometry of Geometry of Circles/TrianglesCircles/Triangles
Thale’s TheoremThale’s Theorem
2727
![Page 28: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/28.jpg)
Legal/Illegal EdgesLegal/Illegal Edges
Equivalent:Equivalent:• alphaalpha22 + alpha + alpha66 > pi > pi
• InCircle(pInCircle(pii ,p ,pkk ,p ,pjj ,p ,pll ) )
2828
![Page 29: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/29.jpg)
Legal/Illegal EdgesLegal/Illegal Edges
2929
![Page 30: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/30.jpg)
Algorithm: Legalize Algorithm: Legalize TriangulationTriangulation
3030
![Page 31: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/31.jpg)
Example: 4 pointsExample: 4 points
3131
![Page 32: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/32.jpg)
Voronoi and Delaunay Voronoi and Delaunay PropertiesProperties
In any partition of In any partition of SS, , S=B S=B RR, into blue/red , into blue/red points, any blue-red pair that is shortest points, any blue-red pair that is shortest BB--RR bridge is a Delaunay edge.bridge is a Delaunay edge.
Corollaries:Corollaries:• DD((SS) is connected) is connected• MST MST D D((SS) ) (MST=“min spanning tree”)(MST=“min spanning tree”)
• NNG NNG D D((SS) ) (NNG=“nearest neighbor graph”)(NNG=“nearest neighbor graph”)
3232
![Page 33: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/33.jpg)
Voronoi and Delaunay Voronoi and Delaunay PropertiesProperties
In any partition of In any partition of SS, , S=B S=B RR, into blue/red , into blue/red points, any blue-red pair that is shortest points, any blue-red pair that is shortest BB--RR bridge is a Delaunay edge.bridge is a Delaunay edge.• DD((SS) is connected) is connected• MST MST D D((SS) ) (MST=“min spanning tree”)(MST=“min spanning tree”)
• NNG NNG D D((SS) ) (NNG=“nearest neighbor graph”)(NNG=“nearest neighbor graph”)
Voronoi/Delaunay can be built in time O(Voronoi/Delaunay can be built in time O(n log nn log n))• Divide and conquerDivide and conquer• SweepSweep• Randomized incrementalRandomized incremental
VoroGlide VoroGlide applet
3333
![Page 34: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/34.jpg)
Nearest Neighbor Graph: Nearest Neighbor Graph: NNGNNG
Directed graph NNG(S):Directed graph NNG(S):
3434
![Page 35: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/35.jpg)
Minimum Spanning Tree; Minimum Spanning Tree; MSTMST
Greedy algorithms: Greedy algorithms: • Prim: grows a treePrim: grows a tree• Kruskal: grows a forest: O(e log v)Kruskal: grows a forest: O(e log v)
3535
![Page 36: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/36.jpg)
Euclidean MSTEuclidean MST
One way to compute: Apply Prim or One way to compute: Apply Prim or Kruskal to the complete graph, with Kruskal to the complete graph, with edges weighted by their Euclidean edges weighted by their Euclidean lengths: O(nlengths: O(n22 log n) log n)
Better: Exploit the fact that MST is a Better: Exploit the fact that MST is a subgraph of the Delaunay (which has subgraph of the Delaunay (which has size O(n)):size O(n)):• Apply Prim/Kruskal to the Delaunay: Apply Prim/Kruskal to the Delaunay:
O(n log n), since e = O(n)O(n log n), since e = O(n)3636
![Page 37: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/37.jpg)
Euclidean MSTEuclidean MST
3737
![Page 38: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/38.jpg)
Traveling Salesperson Traveling Salesperson Problem: TSPProblem: TSP
![Page 39: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/39.jpg)
3939
![Page 40: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/40.jpg)
Approximation AlgorithmsApproximation Algorithms
![Page 41: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/41.jpg)
PTAS for Geometric TSPPTAS for Geometric TSP
![Page 42: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/42.jpg)
Voronoi AppletVoronoi Applet VoroGlide VoroGlide applet
4242
![Page 43: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/43.jpg)
Voronoi and Delaunay: 1DVoronoi and Delaunay: 1D
Easy: Just sort the sites along the lineEasy: Just sort the sites along the line
Delaunay is a pathDelaunay is a path
Voronoi is a partition of the line into Voronoi is a partition of the line into intervalsintervals
Time: O(n log n)Time: O(n log n)
Lower bound: Lower bound: (n log n), since the Delaunay (n log n), since the Delaunay gives the sorted order of the input points, gives the sorted order of the input points, {x{x11 , x , x22 , x , x33 ,…} ,…}
4343
![Page 44: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/44.jpg)
Voronoi and Delaunay: 2D Voronoi and Delaunay: 2D AlgorithmsAlgorithms
Naïve O(nNaïve O(n22 log n) algorithm: log n) algorithm: Build Voronoi cells one Build Voronoi cells one by one, solving n halfplane intersection problems (each in O(n by one, solving n halfplane intersection problems (each in O(n log n), using divide-and-conquer) log n), using divide-and-conquer)
Incremental: worst-case O(nIncremental: worst-case O(n22)) Divide and conquer (first O(Divide and conquer (first O(n log nn log n)))) Lawson Edge Swap (“Legalize”): DelaunayLawson Edge Swap (“Legalize”): Delaunay Randomized Incremental Randomized Incremental (expected O(n log n))(expected O(n log n)) Sweep [Fortune]Sweep [Fortune] Any algorithm that computes CH in Any algorithm that computes CH in RR3 3 , , e.g., e.g.,
QHullQHull4444
Qhull website
![Page 45: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/45.jpg)
4545
![Page 46: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/46.jpg)
Delaunay: Edge Flip AlgorithmDelaunay: Edge Flip Algorithm Assume: No 4 co-circular points, for simplicity.Assume: No 4 co-circular points, for simplicity. Start with any triangulationStart with any triangulation Keep a list (stack) of “illegal” edges:Keep a list (stack) of “illegal” edges:
• abab is is illegalillegal if InCircle( if InCircle(a,c,b,da,c,b,d))• iff the smallest of the 6 angles goes up if flipiff the smallest of the 6 angles goes up if flip
Flip any illegal edge; update legality status of Flip any illegal edge; update legality status of neighboring edgesneighboring edges
Continue until no illegal edgesContinue until no illegal edges TheoremTheorem: A triangulation is Delaunay iff there : A triangulation is Delaunay iff there
are no illegal edges (i.e., it is “locally Delaunay”)are no illegal edges (i.e., it is “locally Delaunay”) Only O(Only O(nn22 ) flips needed.) flips needed.
4646
Lawson Edge Swap“Legalize” [BKOS]
a
b
c
d
Locally non-Delauany
![Page 47: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/47.jpg)
Connection to Convex Hulls in Connection to Convex Hulls in 3D3D
Delaunay diagram Delaunay diagram lower convex hull lower convex hull of the of the liftedlifted sites, ( sites, (xxi i , y , yii , x , xii 22 +y +yii 22 ), on ), on the paraboloid of revolution, the paraboloid of revolution, z=xz=x22 + y + y22
Upper hull Upper hull “furthest site Delaunay” “furthest site Delaunay” 3D CH 3D CH applet
4747
![Page 48: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/48.jpg)
4848
![Page 49: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/49.jpg)
4949
![Page 50: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/50.jpg)
Delaunay in 2D is Convex Hull in Delaunay in 2D is Convex Hull in 3D3D
5050
![Page 51: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/51.jpg)
Delaunay in 2D is Convex Hull in Delaunay in 2D is Convex Hull in 3D3D
5151
![Page 52: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/52.jpg)
Voronoi and DelaunayVoronoi and Delaunay
Algorithms:Algorithms:• Straightforward incremental: O(Straightforward incremental: O(nn22 ))• Divide and conquer (first O(Divide and conquer (first O(n log nn log n))))• SweepSweep• Randomized incrementalRandomized incremental• Any algorithm that computes CH in Any algorithm that computes CH in RR3 3 , ,
e.g., QHulle.g., QHull
5252
Qhull website
![Page 53: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/53.jpg)
Straightforward Incremental Straightforward Incremental Algorithm: VoronoiAlgorithm: Voronoi
5353
![Page 54: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/54.jpg)
Straightforward Incremental Straightforward Incremental Algorithm: VoronoiAlgorithm: Voronoi
5454
![Page 55: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/55.jpg)
5555
Fortune’s Sweep AlgorithmFortune’s Sweep Algorithm
Ack: Guibas&StolfiApplet
AMS 545 / CSE 555
![Page 56: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/56.jpg)
5656
Parabolic FrontParabolic Front
Ack: Guibas&StolfiApplet
AMS 545 / CSE 555
![Page 57: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/57.jpg)
5757
Site EventsSite Events
a) b) c)
Ack: Guibas&StolfiApplet
AMS 545 / CSE 555
![Page 58: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/58.jpg)
5858
Circle EventsCircle Events
Ack: Guibas&StolfiApplet
AMS 545 / CSE 555
![Page 59: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/59.jpg)
5959
Scheduling Circle EventsScheduling Circle Events
Ack: Guibas&StolfiApplet
AMS 545 / CSE 555
![Page 60: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/60.jpg)
6060
![Page 61: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/61.jpg)
6161
![Page 62: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/62.jpg)
Incremental ConstructionIncremental Construction
Add sites one by one, modifying the Add sites one by one, modifying the Delaunay (Voronoi) as we go:Delaunay (Voronoi) as we go:• Join Join vvi i to 3 corners of triangle containing itto 3 corners of triangle containing it
• Do edge flips to restore local Do edge flips to restore local DelaunayhoodDelaunayhood
If added in random order, simple If added in random order, simple “Backwards analysis” shows expected “Backwards analysis” shows expected time O(time O(n log nn log n) ) [Guibas, Knuth, Sharir][Guibas, Knuth, Sharir]
6262
AMS 545 / CSE 555
![Page 63: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/63.jpg)
ExampleExample
CS691G Computational Geometry - UMass CS691G Computational Geometry - UMass AmherstAmherst
6363
![Page 64: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/64.jpg)
Voronoi ExtensionsVoronoi Extensions
Numerous ! Numerous ! [see Okabe, Boots, Sugihara, Chiu][see Okabe, Boots, Sugihara, Chiu]
Different metricsDifferent metrics Higher dimensions: Higher dimensions:
• Delaunay in Delaunay in RRd d lower CH in lower CH in RRd+1d+1 • O( O( n log n +n log n + nn (d+1)/2(d+1)/2 ) )
Order-Order-k, k, furthest-sitefurthest-site Other sites: Voronoi of polygons, “medial axis”Other sites: Voronoi of polygons, “medial axis” Additive/multiplicative weights; power diagramAdditive/multiplicative weights; power diagram -shapes: a powerful shape representation-shapes: a powerful shape representation
6464
GeoMagic, biogeometry at Duke
![Page 65: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/65.jpg)
Furthest Site VoronoiFurthest Site Voronoi
6565
![Page 66: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/66.jpg)
Medial Axis: Convex PolygonMedial Axis: Convex Polygon
6666
![Page 67: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/67.jpg)
Medial Axis: Convex PolygonMedial Axis: Convex Polygon
6767
![Page 68: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/68.jpg)
Medial Axis: Nonconvex Medial Axis: Nonconvex PolygonPolygon
6868
![Page 69: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/69.jpg)
Medial Axis: Curved DomainMedial Axis: Curved Domain
6969
![Page 70: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/70.jpg)
Straight SkeletonStraight Skeleton
7070
![Page 71: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/71.jpg)
7171
VRONI: Fast, robust Voronoi of polygonal domains
Incremental algorithm
![Page 72: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/72.jpg)
7272
![Page 73: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/73.jpg)
7373
Computing offsets with a Voronoi diagram
![Page 74: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/74.jpg)
Alpha Shapes, HullsAlpha Shapes, Hulls
7474
“Erase” with a ball of radius to get -shape. Straighten edges to get -hull
![Page 75: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/75.jpg)
7575
![Page 76: An Introduction to Computational Geometry: Voronoi and Delaunay Diagrams Joseph S. B. Mitchell Stony Brook University Chapters 3,4: Devadoss-O’Rourke](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e0f5503460f94af9f9e/html5/thumbnails/76.jpg)
Applet
-Shapes-Shapes
TheoremTheorem: For each Delaunay edge, : For each Delaunay edge, ee=(=(ppii,p,pjj), there exists ), there exists minmin((ee)>0 and )>0 and maxmax((ee)>0 such that )>0 such that e e --shape of shape of SS iff iff minmin((ee) ) maxmax((ee).).
Thus, every alpha-hull edge is in the Thus, every alpha-hull edge is in the Delaunay, and every Delaunay edge Delaunay, and every Delaunay edge is in some alpha-shape.is in some alpha-shape.