Voronoi Diagrams
Definition and Properties

Given a set of sites in , the Voronoi diagram partitions the plane into Voronoi cells, where the cell of is:
Each cell is a (possibly unbounded) convex polygon, being the intersection of halfplanes defined by perpendicular bisectors.
Structural Properties
- Vertices: equidistant from exactly three sites (in general position). A Voronoi vertex is the circumcenter of three sites
- Edges: equidistant from exactly two sites. Each edge lies on the perpendicular bisector of two sites
- Complexity: by Euler's formula, a Voronoi diagram of sites has at most vertices, edges, and faces. This is
Characterization
A point is a Voronoi vertex iff the largest empty circle centered at touches three or more sites. A point lies on a Voronoi edge iff the largest empty circle centered at it touches exactly two sites.
The nearest-site Voronoi diagram is the dual of the farthest-site Voronoi diagram (where cells contain points farthest from a given site). The farthest-site Voronoi has cells only for convex hull vertices.
Fortune's Sweep Line Algorithm
Algorithm (Fortune, 1987): time and space.
Key idea: sweep a horizontal line downward. The portion of the Voronoi diagram above the sweep line that is determined so far forms a "beach line" --- a sequence of parabolic arcs, each equidistant from a site and the sweep line.
Data structures:
- Beach line: balanced BST storing the sequence of arcs (keyed by -coordinate of intersection with the sweep line). Each arc is defined by a site above the sweep line
- Event queue: priority queue (by -coordinate) storing two types of events
Events:
- Site event: the sweep line reaches a new site. Insert a new parabolic arc into the beach line (splitting an existing arc). May create new circle event candidates
- Circle event: three consecutive arcs have their defining sites on a common circle whose lowest point is at the sweep line. The middle arc collapses to a point --- a new Voronoi vertex is created. The arc is removed and adjacent arcs may generate new circle events
Complexity: site events and circle events, each processed in time.
Implementation Notes
- Circle events can be false alarms: the middle arc may have been removed before the event fires. Handle by marking events as invalid
- Degenerate cases: cocircular sites (four sites on a circle) produce degree-4 Voronoi vertices; sites at the same -coordinate require careful event ordering
- Numerical precision: circle event detection involves computing circumcenters; use Shewchuk's exact predicates for robustness
Other Construction Algorithms
Divide and Conquer
Shamos and Hoey (1975):
- Sort sites by -coordinate
- Recursively compute Voronoi diagrams of left and right halves
- Merge by computing the dividing chain: a -monotone piecewise-linear curve separating cells belonging to left sites from right sites
The merge step traverses the dividing chain from top to bottom in time using the structure of the two sub-diagrams.
Incremental Construction
Insert sites one at a time, updating the Voronoi diagram:
- Locate the cell containing the new site: with point location
- The new cell "destroys" portions of neighboring cells
- Expected with random insertion order (via backward analysis)
Lifting Transform
A deep connection: the Voronoi diagram in is the projection of the lower convex hull of points lifted to . Lifting: . This transforms Voronoi computation to convex hull computation in one higher dimension.
Applications
Nearest Neighbor Queries
Preprocess sites into a Voronoi diagram with point location structure. Answer nearest-neighbor queries in time:
- Locate the Voronoi cell containing the query point
- The cell's site is the nearest neighbor
Point location via trapezoidal decomposition or Kirkpatrick's hierarchy: space, query.
Largest Empty Circle
Find the largest circle centered inside a convex region that contains no sites. The center must be either:
- A Voronoi vertex inside , or
- A point on the boundary of that is on a Voronoi edge
algorithm.
Euclidean Minimum Spanning Tree (EMST)
The EMST is a subgraph of the Delaunay triangulation (dual of Voronoi). Algorithm: compute Delaunay triangulation (), then MST of the Delaunay edges ( total, or with an optimal MST algorithm on the sparse graph).
Facility Location
The Voronoi diagram provides the partition of customers to nearest facilities. Updating the diagram incrementally supports dynamic facility placement. The farthest-site Voronoi is used for obnoxious facility placement (maximize minimum distance to sites).
Weighted Voronoi Diagrams
Additively Weighted (Johnson-Mehl)
Bisectors are hyperbolic arcs (not lines). Cells may be disconnected. Models crystal growth with different start times.
Multiplicatively Weighted (Apollonius)
Bisectors are circles (Apollonius circles). Cells are bounded by circular arcs. Used in wireless coverage modeling.
Power Diagram
Each site has weight . The power distance from to is .
Bisectors are lines (affine). The power diagram is an affinely weighted Voronoi diagram and is combinatorially simpler (cells are convex polygons). The dual is the weighted Delaunay triangulation (regular triangulation).
Power diagrams arise in optimal transport (semi-discrete formulation): the optimal assignment of a continuous measure to discrete sinks is given by a power diagram with appropriately chosen weights.
Farthest-Point Voronoi Diagram
Only convex hull vertices have non-empty cells. Each cell is an unbounded convex region. Complexity: where is the hull size.
Application: the smallest enclosing circle has its center at a vertex of the farthest-point Voronoi diagram (or on an edge). algorithm via the farthest-point Voronoi, though Welzl's randomized algorithm is expected.
Higher-Order Voronoi Diagrams
The order- Voronoi diagram partitions the plane into regions where the same sites are closest:
- Complexity: regions
- Construction: or via incremental construction
- The order- Voronoi is the projection of the -level of the lifted arrangement
Applications: -nearest neighbor searching (preprocess for fixed ), facility location with backup assignments, interpolation.
Voronoi Diagrams in Higher Dimensions
In , the Voronoi diagram has complexity (can be exponential in ). This is the price of the curse of dimensionality.
For : complexity in the worst case. Fortune's sweep generalizes conceptually but is more complex (sweep plane, beach surface of evolving paraboloids).
Practical construction in : incremental algorithms or convex hull in (via lifting). Libraries: CGAL provides robust 3D Voronoi/Delaunay.
Generalized Voronoi Diagrams
- Voronoi diagram of line segments: sites are line segments. Bisectors are parabolic arcs and line segments. construction. Used in motion planning, medial axis computation
- Voronoi diagram of convex polygons: more complex bisectors. Applications in robotics (configuration space obstacles)
- Geodesic Voronoi: shortest paths on surfaces instead of Euclidean distance. Used in mesh processing and geographic applications
- Abstract Voronoi diagrams (Klein, 1989): axiomatize the properties needed for Voronoi construction algorithms, yielding a general framework that covers many distance functions