460 likes | 798 Views
Voronoi Diagram (Supplemental). The Universal Spatial Data Structure (Franz Aurenhammer ). Outline. Voronoi and Delaunay Facility location problem Nearest neighbor Fortune ’ s algorithm revisited Generalized Voronoi diagrams. Voronoi Diagram. Dual: Delaunay Triangulation.
E N D
Voronoi Diagram (Supplemental) The Universal Spatial Data Structure (Franz Aurenhammer)
Outline • Voronoi and Delaunay • Facility location problem • Nearest neighbor • Fortune’s algorithm revisited • Generalized Voronoi diagrams
Determine a location to minimize the distance to its furthest customer Minimum enclosing circle Determine a location whose distance to nearest store is as large as possible Largest empty circle q Facility Location Problems
Facility Location (version 2) • Seek location for new grocery store, whose distance to nearest store is as large as possible — center of largest empty circle • One restriction: center in convex hull of the sites
Facility Location (cont) Center on hull: p must lie on a voronoi edge Center in hull: p must be coincident with a voronoi vertex
Nearest Neighbor Search • A special case of point-location problem where every face in the subdivision is monotone • Use chain method to get O(log n) time complexity for query
8 7 5 6 4 3 2 1
8 7 5 6 4 3 2 1
8 7 5 6 4 3 2 1
8 7 5 6 4 3 2 1
8 7 5 6 4 3 2 1
8 7 5 6 4 3 2 1
8 7 5 6 4 3 2 1
Closest Pairs • In collision detection, two closest sites are in greatest danger of collision • Naïve approach: Q(n2) Each site and its closest pair share an edge check all Voronoi edges O(n) Furthest pair cannot be derived directly from the diagram
Motion Planning (translational) Collision avoidance: stay away from obstacle
Fortune’s Algorithm Revisited • Cones • Idea • H/W implementation The curve of intersection of two cones projects to a line.
45 deg Cone distance=height site
Cone (cont) intersection of cone equal-distance point
Cone (cont) When viewed from –Z, we got colored V-cells
Nearest Distance Function Viewed from here [less than]
Furthest Distance Function Viewed from here [greater than]
Fortune’s Algorithm (Cont) • Cone slicing Cone cut up by sweep plane and L are sweeping toward the right.
Fortune’s Algorithm (Cont) • Viewed from z = -, The heavy curve is the parabolic front. How the 2D algorithm and the 3D cones are related…
Generalized Voronoi Diagram V(points, lines, curves, …) Distance function: Euclidean, weighted, farthest V(points), Euclidean distance
Brute Force Method Record ID of the closest site to each sample point Coarsepoint-samplingresult Finerpoint-samplingresult
Graphics Hardware Acceleration Simply rasterize the cones using graphics hardware Our 2-part discrete Voronoidiagram representation Color Buffer Depth Buffer Site IDs Distance Haeberli90, Woo97
Algorithm • Associate each primitive with the corresponding distance mesh • Render each distance mesh with depth test on • Voronoi edges: found by continuation methods
Distance Meshes polygon line curve
Medial Axis Computation Medial axes as part of Voronoi diagram
Piano Mover: Real-time Motion Planning (static and dynamic) Plan motion of piano through 100K triangle model Distance buffer of floorplan used as potential field
(regular) Voronoi diagram Furthest distance Voronoi diagram Variety of Voronoi Diagram
Minimum Enclosing Circle Center of MEC is at the vertex of furthest site Voronoi diagram