Exact Construction of Minimum-Width Annulus of Disks in the Plane∗
Total Page:16
File Type:pdf, Size:1020Kb
Exact Construction of Minimum-Width Annulus of Disks in the Plane∗ Ophir Setter† Dan Halperin† Abstract outer and inner circles [15]. Hence, the center of a minimum-width annulus must lie on an intersec- The construction of a minimum-width annulus of a set tion point of the nearest-neighbor and the farthest- of objects in the plane has useful applications in di- neighbor Voronoi diagrams of the points. Using this verse fields, such as tolerancing metrology and facility observation, an algorithm for finding a minimum- location. We present a novel implementation of an al- width annulus of planar points was developed [5, 16]. gorithm for obtaining a minimum-width annulus con- Similar methods were used to solve different vari- taining a given set of disks in the plane, in case one ex- ations of the problem, such as finding a minimum- ists. The algorithm extends previously known meth- width annulus of point sets with different constraints ods for constructing minimum-width annuli of sets on its radii (e.g., fixed inner radius) [3], and finding of points. The algorithm for disks requires the con- a minimum-width annulus bounding a polygon [10]. struction of two Voronoi diagrams of different types, For some special cases there are specific deterministic one of which we call the “farthest-point farthest-site” sub-quadratic algorithms [4, 8, 17]. Voronoi diagram and appears not to have been inves- Agarwal and Sharir introduced the most efficient tigated before. The vertices of the overlay of these (randomized) algorithm to date for constructing a two diagrams are candidates for the annulus’ center. minimum-width annulus of planar points, which The implementation employs an asymptotically near- achieves an expected running time of O(n3/2+ε) [1]. optimal randomized divide-and-conquer algorithm for constructing two-dimensional Voronoi diagrams. Our software utilizes components from Cgal, the Com- 2 Solving the Problem for Disks putational Geometry Algorithms Library, and follows Given a set of objects O in the plane (also called the exact computation paradigm. We do not assume Voronoi sites) and a distance function ρ, the nearest- general position. Namely, we handle degenerate input neighbor Voronoi diagram of O with respect to ρ is and produce exact results. the partition of the plane into maximally connected cells, where each cell consists of points that are closer 1 Introduction to one particular site (or a set of sites) than to any other site. The bisector of two Voronoi sites is the annulus An is the bounded area between two concen- locus of all points that have an equal distance to tric circles. The width of an annulus is the difference both sites. A similar definition is used to define the between the radii of its outer and inner bounding cir- farthest-neighbor Voronoi diagram. cles. Given a set of objects in the plane, the objec- Recall that in the case of point sets, a minimum- tive is to find a minimum-width annulus containing width annulus can be found by overlaying the nearest- those objects. Figure 1(c) shows such an annulus for a neighbor and farthest-neighbor Voronoi diagrams of set of disks. Constructing a minimum-width annulus the points. We show that a similar approach applies has applications in various fields including tolerancing to the case of sets of disks, but the relevant diagrams metrology and facility location [11, 19]. require more careful definitions. A minimum-width annulus does not always exist. Instead of constructing the nearest-neighbor If the width of the set of objects1 is smaller than Voronoi diagram of the points we construct the the width of any containing annulus, then there is additively-weighted Voronoi diagram of the disks, also no minimum-width annulus. known as the Apollonius diagram [14]. In the case of point sets, a minimum-width annu- The Apollonius diagram is the Voronoi diagram de- lus must have (at least) two points on each of its fined for disks with respect to the following distance ∗This work has been supported in part by the Israel Science function ρ. For a point p and a disk D with a center Foundation (grant no. 236/06), by the German-Israeli Foundation c and radius r, we define ρ(p,D)= ||p − c|| − r. The (grant no. 969/07), and by the Hermann Minkowski–Minerva Cen- ter for Geometry at Tel Aviv University. distance between a point outside a disk and the disk †School of Computer Science, Tel-Aviv University, 69978, is the Euclidean distance. Apollonius bisectors, which Israel. {ophirset,danha}@post.tau.ac.il compose the diagram, are branches of hyperbolas. 1The width of a set is defined to be the width of the thinest strip (i.e., the area bounded between two parallel lines) con- Instead of constructing a farthest-neighbor Voronoi taining it. diagram of points we construct a different diagram, 1 which requires the definition of another distance func- 1. |IN | ≥ 3 and |ON | = 1 – the center coincides tion. Consider the following farthest-point distance with a vertex of the Apollonius diagram. 2 2 function from a point p ∈ R to a set of points S ⊂ R : 2. |IN | = 1 and |ON | ≥ 3 – the center coincides with a vertex of the FPFS Voronoi diagram. ρ(p,S) = sup ||p − x||, x∈S 3. |IN | ≥ 2 and |ON | ≥ 2 – the center lies on an intersection point of the Apollonius diagram and which measures the farthest distance from the point p the FPFS Voronoi diagram. to the set S. Consider the farthest-neighbor Voronoi We therefore construct each of the diagrams and over- diagram with respect to this distance function. We lay them. For each vertex of the overlay, we retrieve call this diagram the “farthest-point farthest-site” four relevant disks (either three touching the inner cir- (FPFS) Voronoi diagram. The distance function ρ cle and the one touching the outer circle, in case 1, or becomes the Euclidean distance when the set S con- three touching the outer circle and the one touching sists of a single point. However, this is not the case the inner circle, in case 2, or two pairs of disks touch- when the set S is, say, a disk in the plane. ing respectively the inner and outer circles), and com- The following lemma characterizes the FPFS pute the width of the resulting annulus. We output Voronoi diagram of disks in the plane, showing that the annulus of the smallest width. Figure 1 illustrates the bisectors induced by its sites are hyperbolic arcs. the algorithm for computing a minimum-width annu- lus of a set of disks and a highly degenerate input, which is handled properly by our implementation. Lemma 1 The bisector of two disks in the plane in- The FPFS Voronoi diagram can be defined as a duced by the farthest-point distance function is one farthest site abstract Voronoi diagram [12]. Hence, branch of a hyperbola, and is identical to the Apollo- FPFS Voronoi diagrams are of linear complexity in nius bisector of the disks with swapped radii. the size of the input (as are Apollonius diagrams). Proof. Let (cA, rA), (cB, rB ) be two disks in the plane with respective centers c ,c and radii r , r . A B A B 3 Constructing General Voronoi Diagrams with Their farthest-point distance bisector is the zero set CGAL of the equation ||x − cA|| + rA = ||x − cB|| + rB, which is the same as the zero set of ||x − c || − r = A B As described in Section 2 above, the process of con- x c r || − B||− A. The latter equation describes the Apol- structing a minimum-width annulus bounding a set lonius bisector of (c , r ), (c , r ). A B B A of disks mainly comprises three geometric operations: We now prove that there is a minimum-width an- (i) construction of the Apollonius diagram, (ii) con- nulus (in case one exists) whose center is a vertex of struction of the FPFS Voronoi diagram, and (iii) over- the overlay of the Apollonius diagram and the FPFS lay of the two diagrams. This section describes some Voronoi diagram of the disks. of the software components which our implementa- Let D = {d1,...,dn} be a collection of disks in the tion is based on, their various ramifications on the algorithm, and how they work in synergy to yield an plane, such that for all i, di 6⊆ Sj=6 i dj . For simplicity of exposition, we assume here that n ≥ 3; the case of exact and robust implementation, which can handle n < 3 is simple to handle. Let IN , ON ⊆ D denote input that is not necessarily in general position and the set of disks that touch the inner and outer cir- produce results of arbitrary precision. cles of a bounding annulus N, respectively. We show The connection between Voronoi diagrams and en- that there is a minimum-width annulus whose circles velopes is long-known [6], and yields a useful approach intersect the disks of D in at least 4 points. for constructing various types of Voronoi diagrams. Cgal,2 the Computational Geometry Algorithms Li- Theorem 2 If there is a minimum-width annulus brary, contains a robust and efficient implementation containing D, then there is a minimum-width annulus of a divide-and-conquer algorithm for constructing en- N such that |IN | + |ON |≥ 4. velopes of general surfaces in 3-space [13]. This im- plementation was employed to yield a general frame- We omit the detailed proof in this extended abstract. work for constructing two-dimensional Voronoi dia- Each minimum-width annulus must touch the disks grams [9].