Voronoi Diagrams and Delaunay Triangulations
Learning Objectives
- Define the Voronoi diagram of a set of sites and describe its cells, edges, and vertices in terms of bisectors and circumcenters.
- Define the Delaunay triangulation as the dual of the Voronoi diagram and state its empty-circumcircle property.
- Compute the incircle predicate as a determinant and use it to decide edge flips, and explain the lifting-map connection to convex hulls.
- Explain why Delaunay triangulations maximize the minimum angle, and why both structures have linear size and construction.
Context & Motivation
Which hospital is closest to each house in a city? Which cell tower should a phone connect to? Where do the territories of competing coffee shops meet? These are all questions about the Voronoi diagram, which divides the plane into regions closest to each of a set of sites. Its dual, the Delaunay triangulation, connects sites that share a Voronoi boundary, and it is the default way to turn scattered points into a mesh: terrain models from elevation samples, finite-element meshes for simulation, and interpolation of sensor readings all rely on it, because it avoids long thin triangles that cause numerical trouble.
The previous concept introduced the orientation predicate and the sweep line; this one adds a second predicate, the incircle test, and shows a beautiful connection: the Delaunay triangulation of points in the plane is a convex hull in three dimensions, via the same parabola trick used to prove the sorting lower bound. Both structures are central chapters of de Berg et al.'s textbook and of CMU's 15-456.
Core Theory
The Voronoi diagram
Given sites in the plane, the Voronoi cell of is the set of points at least as close to as to any other site:
Each condition is a half-plane bounded by the perpendicular bisector of , so every cell is a convex polygon, possibly unbounded. Cell boundaries are Voronoi edges (points equidistant from two sites) and Voronoi vertices (points equidistant from three or more sites, the circumcenters of those sites). A vertex's circle through its sites contains no other site in its interior, since otherwise that site would be closer.
The diagram has linear size: by Euler's formula, for sites it has at most vertices and edges. Fortune's sweep-line algorithm (1987) builds it in , which is optimal by the same reduction from sorting.
The Delaunay triangulation
Connect two sites by an edge whenever their Voronoi cells share an edge. For points in general position (no four on a common circle), the result is a triangulation, the Delaunay triangulation , with one triangle per Voronoi vertex. Its defining property:
Empty circumcircle. A triangle with vertices among the sites belongs to if and only if its circumcircle contains no other site in its interior.
Useful consequences: contains the nearest-neighbor graph and the Euclidean minimum spanning tree as subgraphs, so either can be computed in by building first and then working on its linear number of edges.
The incircle predicate and edge flips
For sites in counterclockwise order and a query point , the incircle test is the sign of
Positive means lies inside the circle through ; negative, outside; zero, on it. Like orientation, it is a polynomial in the coordinates and can be evaluated exactly.
Lawson's flip algorithm starts from any triangulation. An edge shared by triangles and is illegal if lies inside the circumcircle of ; replace it by the other diagonal (a flip). Each flip strictly improves the triangulation's sorted angle sequence, so the process terminates, and when no illegal edge remains the triangulation is Delaunay. Combined with randomized incremental insertion (add sites in random order, flipping locally), this gives expected time.
Why Delaunay triangles are well shaped
Among all triangulations of a point set, maximizes the minimum angle; more precisely it maximizes the sorted vector of angles lexicographically. The reason is a classic circle fact: in a convex quadrilateral, choosing the diagonal that makes the triangulation locally Delaunay always yields the larger minimum angle among the six angles. Thin triangles create large interpolation errors and ill-conditioned linear systems in simulations, which is why mesh generators start from Delaunay triangulations.
The lifting map
Lift every site to on the paraboloid . A circle in the plane lifts to the intersection of the paraboloid with a plane, and a point inside the circle lifts to below that plane. Hence a triangle has an empty circumcircle exactly when its lifted triangle is a face of the lower convex hull of the lifted points, and the incircle determinant is the 3D orientation test in disguise. Delaunay triangulation in the plane equals a convex hull in space, generalizing the parabola argument of the previous concept.
Worked Examples
Example 1: deciding a flip with the incircle test
Problem: Four sites , , , form a convex quadrilateral. A triangulation uses diagonal (triangles and ). Is legal?
Trace: Test whether lies inside the circumcircle of (counterclockwise: ). Rows relative to : , , . Determinant: . is inside, so is illegal; flip to . Checking the new configuration, : is outside the circumcircle of , so is legal and the triangulation is Delaunay. Geometrically, the circumcircle of has center and radius 2.5, and is only about 1.8 from that center.
Example 2: comparing minimum angles
Problem: For the same quadrilateral, compute the smallest angle with diagonal and with diagonal .
Trace: Diagonal : triangle has a right angle at and angles of about at and at ; triangle has about at , at , and at . Minimum: . Diagonal : triangle has at , about at , at ; triangle has at , at , at . Minimum: . The flip chosen by the incircle test raised the smallest angle from to , exactly as the max-min angle property promises.
Common Misconceptions & Pitfalls
- "Delaunay means connecting each point to its nearest neighbors." Nearest-neighbor edges are contained in , but has many more edges, and its defining property is about empty circles, not distances to individual neighbors.
- "The Delaunay triangulation is always unique." With four or more cocircular sites (the corners of a rectangle, for example), several triangulations satisfy the empty-circle property; implementations must break such ties consistently, often by symbolic perturbation.
- "Max-min angle means no thin triangles at all." Delaunay maximizes the minimum angle for the given points, but if the points themselves are badly distributed, thin triangles can remain. Quality mesh generators (such as Ruppert's algorithm) insert extra points to guarantee angle bounds.
Summary
The Voronoi diagram partitions the plane into convex cells of points closest to each site, with edges on perpendicular bisectors and vertices at circumcenters of empty circles; it has at most vertices and edges and is built in . Its dual, the Delaunay triangulation, consists of exactly the triangles with empty circumcircles, contains the nearest-neighbor graph and minimum spanning tree, and maximizes the minimum angle among all triangulations. The incircle determinant decides edge flips exactly, and lifting points to a paraboloid turns Delaunay triangulation into a 3D lower convex hull. The capstone that follows applies the full toolkit of this track to realistic problems.