Primitives for the manipulation of general subdivisions and the computation of Voronoi diagrams

We discuss the following problem: given n points in the plane (the “sites”), and an arbitrary query point q, find the site that is closest to q. This problem can be solved by constructing the Voronoi diagram of the given sites, and then locating the query point in one of its regions. We give two algorithms, one that constructs the Voronoi diagram in O(n lg n) time, and another that inserts a new site in O(n) time. Both are based on the use of the Voronoi dual, the Delaunay triangulation, and are simple enough to be of practical value. The simplicity of both algorithms can be attributed to the separation of the geometrical and topological aspects of the problem, and to the use of two simple but powerful primitives, a geometric predicate and an operator for manipulating the topology of the diagram. The topology is represented by a new data structure for generalized diagrams, that is embeddings of graphs in two-dimensional manifolds. This structure represents simultaneously an embedding, its dual, and its mirror-image. Furthermore, just two operators are sufficient for building and modifying arbitrary diagrams.

[1]  Donald E. Knuth,et al.  The Art of Computer Programming, Volume I: Fundamental Algorithms, 2nd Edition , 1997 .

[2]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[3]  Frank Harary,et al.  Graph Theory , 2016 .

[4]  Bruce G. Baumgart A polyhedron representation for computer vision , 1975, AFIPS '75.

[5]  Michael Ian Shamos,et al.  Closest-point problems , 1975, 16th Annual Symposium on Foundations of Computer Science (sfcs 1975).

[6]  F. P. Preparata,et al.  Convex hulls of finite sets of points in two and three dimensions , 1977, CACM.

[7]  Donald E. Knuth,et al.  The art of computer programming: V.1.: Fundamental algorithms , 1997 .

[8]  David E. Muller,et al.  Finding the Intersection of two Convex Polyhedra , 1978, Theor. Comput. Sci..

[9]  Der-Tsai Lee Proximity and reachability in the plane. , 1978 .

[10]  Kevin Q. Brown,et al.  Voronoi Diagrams from Convex Hulls , 1979, Inf. Process. Lett..

[11]  David G. Kirkpatrick,et al.  Efficient computation of continuous skeletons , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[12]  J. Dieudonne,et al.  Encyclopedic Dictionary of Mathematics , 1979 .

[13]  D. F. Watson Computing the n-Dimensional Delaunay Tesselation with Application to Voronoi Polytopes , 1981, Comput. J..

[14]  Mantyla,et al.  GWB: A Solid Modeler with Euler Operators , 1982, IEEE Computer Graphics and Applications.

[15]  David G. Kirkpatrick,et al.  Optimal Search in Planar Subdivisions , 1983, SIAM J. Comput..

[16]  L. Guibas,et al.  Primitives for the manipulation of general subdivisions and the computation of Voronoi , 1985, TOGS.