The Voronoi diagram of three arbitrary lines in R3 Hazel Everett† Christian Gillot† Daniel Lazard‡ Sylvain Lazard† Marc Pouget† Abstract In this paper we study the Voronoi diagram of lines in R3 . The Voronoi diagram of three lines in general position was studied in [14]. In this paper we complete this work by presenting a complete characterization of the Voronoi diagram of three arbitrary lines in R3 . As in the general case, we prove that the arcs of trisectors are always monotonic in some direction and we show how to separate the connected components and to sort points along each arc of a trisector using only rational linear semi-algebraic tests. These results are important for the robust computation of the Voronoi diagram of polyhedra. † ‡ LORIA - INRIA Lorraine - University Nancy 2, [email protected] LIP6 - INRIA Rocquencourt - University Pierre et Marie Curie, [email protected] 1 Introduction The Voronoi diagram of a set of disjoint objects is a decomposition of space into cells, one cell per object, such that the cell associated with an object consists of all points that are closer to that object than to any other object. In this paper, we consider the Voronoi diagram of lines in R3 under the Euclidean metric. Voronoi diagrams have been the subject of a tremendous amount of research. For points, these diagrams, their complexity and optimal algorithms are well understood and robust efficient implementations exist for computing them in any dimension (see for instance [1, 2, 4, 5, 7, 8, 15, 23, 26]) although some important problems remain and are addressed in recent papers. The same is true for segments and polygons in two dimensions [18]. For lines, segments, and polyhedra in three dimensions much less is known. In particular, determining the combinatorial complexity of the Voronoi diagram of n lines or line segments in R3 is an outstanding open problem. The best known lower bound is Ω(n2 ) and the best upper bound is O(n3+ ) [27]. It is conjectured that the complexity of such diagrams is near-quadratic. In the restricted case of a set of n lines with a fixed number of possible orientations, Koltun and Sharir have shown an upper bound of O(n2+ ), for any > 0 [20]. There are few algorithms for computing exactly the Voronoi diagram of linear objects. Most of this work has been done in the context of computing the medial axis of a polyhedron, i.e., the Voronoi diagram of the faces of the polyhedron [9, 21]. Recently, some progress has been made on the related problem of computing arrangements of quadrics (each cell of the Voronoi diagram is a cell of such an arrangement) [3, 19, 22, 24, 25]. Finally, there have been many papers reporting algorithms for computing approximations of the Voronoi diagram (see for instance [11, 13, 16, 28]). In this paper, we address the fundamental problem of understanding the structure of the Voronoi diagram of three lines. A robust and effective implementation of Voronoi diagrams of three-dimensional linear objects requires a complete and thorough treatment of the base cases, that is, the diagrams of three and four lines, points or planes. Indeed, one of the few shortcomings of Culver’s algorithm for the exact computation of the medial axis of a polyhedron, which handles many degeneracies, is that it does not handle the case of a singular trisector [9]. We provide here a complete characterization of the Voronoi diagram of three arbitrary lines in R3 . This completes the study of three lines, the case of three lines in general position having been studied in [14]. The Voronoi diagram of three arbitrary lines. The Voronoi diagram of a set of lines S is a subdivision V of R3 into regions called cells associated with subsets s of S. The cell V (s) consists of the set of points equidistant to the lines of s and strictly closer to those lines than to any other line. The distance between a point p and a line s, d(p, s) is defined as the minimum Euclidean distance between the point and any point on the line. More precisely, V (s) = p ∈ R3 , a ∈ s : d(p, a) < min d(p, b) b∈S\s and ∀c ∈ s : d(p, a) = d(p, c) The Voronoi diagram of pairwise skew lines consists of cells of dimension k determined by 4 − k lines, 0 6 k 6 3. The cells are not necessarily connected even in the generic case [14] and when the lines intersect the number of connected components, as we shall see, may increase. One way of handling intersecting objects is to subdivide them into nonintersecting pieces; for example, in the case of line segments in 2D, intersecting segments 1 are partitioned into points and open segments [17]. Following this approach, we could handle intersecting lines by subdividing them into points, open rays and open segments. Since the bisector of two open segments is typically computed by first computing the bisector of their supporting lines, this approach also requires understanding the nature of the cells in the case of intersecting lines. Main results. Our main results are summarized in the following theorems which describe the cells of dimension one and two of the Voronoi diagram of three lines. Theorem 1 The trisector of three lines is (i) a non-singular quartic if the three lines are pairwise skew but not all parallel to a common plane nor on the surface of a hyperboloid of revolution, (ii) a cubic and a line if the three lines are pairwise skew and lie on the surface of a hyperboloid of revolution, (iii) a nodal quartic if the three lines are pairwise skew and are all parallel to a common plane, (iv) one or two parabolas or hyperbolas if there is exactly one pair of coplanar lines, (v) between 0 and 4 lines if there are two pairs of coplanar lines. In all cases, each branch of the trisector is monotonic in some direction.1 The following theorem summarizes the geometry of the cells of dimension two. We actually provide a much more precise description of the 2D cells; see Propositions 12, 20, 24, 26, and 28.2 Theorem 2 A cell of dimension two of a Voronoi diagram of three lines consists of up to four connected components of hyperbolic paraboloids or planes. This characterization yields some fundamental properties of the Voronoi diagram of three lines which are likely to be critical for the analysis of the complexity and the development of efficient algorithms for computing Voronoi diagrams and medial axis of lines or polyhedra. In particular, we obtain the following: Theorem 3 There is a rational linear semi-algebraic test for (i) given a point on a 2D cell, deciding on which of the connected components of the cell it lies, (ii) given a point on the trisector, deciding on which of the branches of the trisector it lies, (iii) ordering points on each branch of the trisector, knowing that they lie on the trisector. While the proofs primarily use basic notions from geometry and algebra, such as the classification of conics [10], it also relies on two recent results, the classification of quadrics [12] by Dupont et al., and a characterization of the common tangents to spheres [6] by Borcea et al. The rest of the paper is organized as follows. The next section presents notation and some preliminary lemmas. We then prove our main results about trisectors and cells of dimension two, case by case. Section 4 discusses Theorem 3. 2 Preliminaries Let `1 , `2 , and `3 be three lines in R3 and let (X, Y, Z) denote a Cartesian coordinate system. Without loss of generality, we assume that, whenever there are two skew lines 1 2 See Table 1 and Figure 8 in the Appendix for a slightly finer classification of cases (iv) and (v). See also Table 2 in the Appendix for more details. 2 amongst the three lines, that the lines `1 and `2 are parallel to the XY -plane, pass through (0, 0, 1) and (0, 0, −1) respectively, and have directions that are symmetric with respect to the XZ-plane. More precisely, we assume that line `1 is defined by point p1 = (0, 0, 1) and vector v1 = (1, a, 0), and line `2 by point p2 = (0, 0, −1) and vector v2 = (1, −a, 0), a ∈ R. See Figure 1(a). We denote by Hi,j the bisector of lines `i and `j . It is well-known, see for instance [20], that the bisector of two pairwise skew lines is a right hyperbolic paraboloid, that is, has equation of the form Z = γ X Y , γ ∈ R, in some coordinate system. Recall that our objective is to characterize the Voronoi diagram of three lines in R3 . We will often, however, for convenience, consider our lines in projective space. We say that two lines intersect if they intersect in P3 (R) i.e. they are coplanar in R3 , or equivalently, intersect or are parallel in R3 . We will make use of the following lemma which provides a geometric characterization of three lines whose trisector contains a line. Lemma 4 If the trisector contains a line then either the three lines are pairwise skew and lie on a hyperboloid of one sheet of revolution or one of the lines intersects the other two in P3 (R). Proof. Let `1 , `2 and `3 be three lines whose trisector includes a line `. Any point p on ` is equidistant to `1 , `2 and `3 so p is the center of a sphere that is tangent to all of `1 , `2 and `3 . Consider three distinct such points on ` and the three corresponding spheres. If these spheres have a common intersection, then this common intersection is a circle (possibly reduced to a point) and all lines tangent to the three spheres lie in the plane of this circle, and thus all three lines are coplanar and pairwise intersect in P3 (R). Otherwise, the set of lines tangent to the three spheres are the ruling(s) of a single quadric of revolution with symmetry axis the line through their centers [6, Lemma 7]. This quadric is a hyperboloid of one sheet, a cone or a cylinder. Now three lines lying on a cone or a cylinder pairwise intersect in P3 (R). Finally, if the three lines lie in the same ruling of a hyperboloid of one sheet of revolution then they are pairwise skew. Otherwise, one of the lines lies in one ruling and intersects the two lines lying in the other ruling. 3 Trisectors and cells of dimension two In this section we present the proof of Theorems 1 and 2 which describe the cells of dimension one and two of the Voronoi diagram of three arbitrary lines. 3.1 Three pairwise skew lines not all parallel to a common plane The results in the case of lines in general position can be found in [14]. We reproduce them here for completeness. See Figure 1. Proposition 5 ([14]) The topology of the Voronoi diagram of three pairwise skew lines that are not all parallel to a common plane is invariant. The trisector consists of four infinite branches of either a non-singular quartic or of a cubic and a line that do not intersect in P3 (R). Each cell of dimension two consists of two connected components on a hyperbolic paraboloid that are bounded, respectively, by three and one of the branches of the trisector. Proposition 6 ([14]) The trisector of three pairwise skew lines that are not all parallel to a common plane consists of a cubic and a line if and only if the hyperboloid of one sheet containing the three skew lines is of revolution. 3 Z `1 : O Y `2 : y = ax z=1 y = −ax z = −1 Y X X (a) (b) (c) Figure 1: (a) The standard configuration of two skew lines. (a) The trisector of three skew lines is a non-singular quartic. (b) Orthogonal projection of a 2D cell on a plane P with coordinate system (X, Y ); the plane’s normal is parallel to the common perpendicular of `1 and `2 and the X and Y -axes are parallel to the two bisector lines (in P) of the projection of `1 and `2 on P. The 2D cell is bounded by four branches of the trisector. Z `3 v3 = (1, β, 0) p3 = (0, y, z) O Y `1 : `2 : X y = ax z=1 y = −ax z = −1 (a) (b) (c) Figure 2: (a) Three pairwise skew lines all parallel to the same plane. (b) The trisector, which is a nodal quartic, is the intersection of hyperbolic paraboloids, or, equivalently, (c) the intersection of a hyperbolic paraboloid and a hyperbolic cylinder : H1,2 − H1,3 ∩ H1,2 Monotonicity Property Given three pairwise skew lines that are not all parallel to a common plane, there is a direction in which all four branches of the trisector are monotonic. 3.2 Three pairwise skew lines all parallel to a common plane Refer to Figure 2. In this section we prove the following proposition. Proposition 7 The trisector of three pairwise skew lines all parallel to the same plane is a nodal quartic whose singularity is at infinity. It consists of two branches that project, in the direction orthogonal to the plane to which the lines are parallel, onto a rectangular hyperbola. Let `1 , `2 , and `3 be three pairwise skew lines all parallel to the same plane with `1 and `2 as in Figure 1(a). Moreover, line `3 is parallel to the plane z = 0, and we also assume that `3 is not parallel to the Y -axis, by exchanging the role of X and Y if necessary. In particular, line `3 is defined by point p3 = (0, y, z) and vector v3 = (1, β, 0), y, z, β ∈ R, z 6= ±1. Finally, we have that a 6= 0 and β 6= ±a, since no two lines are parallel. See Figure 2(a). 4 Lemma 8 The projection of the trisector in a plane parallel to the lines is a rectangular hyperbola. Proof. The trisector is given by the intersection of the bisectors H1,2 and H1,3 , or equivalently, as the intersection of H1,2 − H1,3 and, say, H1,2 . See Figure 2. Both of H1,2 and H1,3 are rectangular hyperbolic paraboloids and can be written in the form Z = f (X, Y ). This implies that H1,2 − H1,3 , is a degree 2 equation in X and Y , H1,2 − H1,3 : (a2 − β 2 )X 2 − (a2 − β 2 )Y 2 − 2βy(1 + a2 )X +2y(1 + a2 )Y + 2((1 + a2 )β − az(1 + β 2 ))XY −(1 + a2 )((z 2 − 1)(1 + β 2 ) + y 2 ) = 0, that is, a cylinder, whose axis is the Z-axis and whose projection onto the XY -plane is a conic. Any curve traced on the surface of this cylinder, and in particular, the trisector, projects onto this conic. By the standard classification of conics [10], the conic is a hyperbola or a pair of lines if the determinant, K, of the upper-left 2 x 2 matrix of the coefficient matrix3 of the conic is negative. This is the case since the coefficients of the X 2 and Y 2 terms have opposite signs and are non-zero since a 6= ±β. By Lemma 4, the conic is not a pair of lines, hence it is a hyperbola. Furthermore, the coefficients of the X 2 and Y 2 terms are equal and opposite which gives that the hyperbola is rectangular. Lemma 9 The trisector is a nodal quartic. Proof. We use the following result of Dupont et al. [12] : the intersection of two quadrics Q and R is, in P3 (R), either a nodal quartic or one or two conics if the determinant of the characteristic polynomial of the pencil of the quadrics Q + λR, ∀λ ∈ R, has one double real root and two simple complex roots. For the quadrics H1,2 and H1,3 we get that this determinant is : D = 16(1 + a2 )3 · (1 + β 2 )(a + β)2 λ2 − 4a(a + β)(aβ + 1)λ + 4a2 (1 + a2 ) 2 · − (1 + β 2 )(1 + c)λ + 2a(a2 + 1) . Consider the polynomial of degree 2 in λ given by the second term. Its discriminant is −16(−β + a)2 (β + a)2 a2 . Recall that a 6= ±β and so this discriminant is strictly negative yielding two complex roots. The third term of D gives a double real root. Now suppose that the trisector is one or two conics. Since the trisector projects to a hyperbola, it contains at least one conic that is a hyperbola and thus intersects the plane at infinity in at least 2 points. We show now that the trisector intersects the plane at infinity in a single point, hence it is a nodal quartic. To compute the intersection of the trisector with the plane at infinity we intersect each homogenized bisector H1,2 and H1,3 with the plane w = 0. This gives two curves in the plane w = 0 whose intersection are the points we are looking for. In other words, we are looking for the solutions to the following system : 3 0 = −aXY 0 = (a2 − β 2 )X 2 − (a2 − β 2 )Y 2 + 2(β 2 + β 2 a + a2 β + a)XY 0=w The coefficient matrix is the hessian of the trivariate quadratic form associated to the homogenized equation of the conic 5 The first equation implies that X or Y is 0. Substituting Y = 0 (resp. X = 0) into the second equation gives (a2 − β 2 )X 2 = 0 (resp. (a2 − β 2 )Y 2 = 0). Now since a 6= ±β, this implies that Y = 0 (resp. X = 0). The solution to the system then is the single point (0, 0, z, 0) = (0, 0, 1, 0). Lemma 10 The trisector has a singular point at infinity and consists of two branches. Proof. The trisector is a nodal quartic and thus has one singular point. We argue that the singular point is at infinity because all points on the trisector in R3 are regular. Recall that a point on a curve that is defined as the intersection of two surfaces is regular if the two tangent planes to those surfaces at that point exist and are distinct. Any point p in R3 on the trisector is at the intersection of the hyperbolic cylinder H1,2 − H1,3 and, a right hyperbolic paraboloid, say, H1,2 . The plane tangent to the hyperbolic cylinder at p exists and is vertical, and the plane tangent to the right hyperbolic paraboloid at p exists and is not vertical. The two tangent planes exist and are distinct and hence the point on the curve is regular. The trisector lies on a right hyperbolic paraboloid of equation Z = aXY . The projection between the the hyperbolic paraboloid and the plane Z = 0 is a bijection. Therefore any point on the hyperbola maps to a unique point on the hyperbolic paraboloid. So there are exactly two branches. Lemma 11 Each branch of the trisector is monotonic with respect to X or Y . Proof. By Lemma 8, the trisector projects, in the XY -plane, to a rectangular hyperbola. Each branch of the hyperbola is monotonic in either the X or the Y direction since, if it is not monotonic in some direction, then it is monotonic in the orthogonal direction. Since the projection between H1,2 and the plane Z = 0 is a bijection, and since the trisector lies on H1,2 , the two branches of the trisector are also monotonic with respect to X or Y. The cells of dimension two are described in the following proposition. Proposition 12 Let l1 , l2 and l3 be three pairwise skew lines lying all parallel to the same plane with l1 lying between l2 and l3 . The cells of dimension two consist of up to two connected components of a hyperbolic paraboloid that are bounded by either one or two branches of the trisector. In particular, the cells V1,2 and V1,3 consist of one connected component bounded by two branches of the trisector and the cell V2,3 consists of two connected components each bound by one branch of the trisector. Sketch of proof. The origin is on V1,2 because it is the midpoint of the common perpendicular of l1 and l2 and the distance to l3 is at least the distance to the plane supporting it. The result follows by showing that the origin projected on to the XY -plane is in between the branches of the hyperbola. Similarly for V1,3 and V2,3 . 3.3 One pair of coplanar lines We treat here the case in which there are exactly one pair of coplanar lines. Here the trisector is given by the intersection of a right hyperbolic paraboloid and one or two planes and consists of one or two conics. We divide this case into three sub-cases depending on whether the pair of coplanar lines is parallel or not and, if not, whether the third line intersects or is parallel to that plane. Intuitively, given a pair of coplanar lines, when the third line becomes parallel to this plane, each of the hyperbola degenerates into a parabola and when the two coplanar lines become parallel, one of their two bisecting planes goes to infinity and one of the conics of the trisector also goes to infinity. We prove the following: 6 Z `3 O Y `1 : p3 = (x, ax, 1) v3 = (α, β, 1) `2 : X y = ax z=1 y = −ax z = −1 (a) (b) Figure 3: Two intersecting lines with the third one skew and not in a parallel plane. The trisector is the intersection of a right hyperbolic paraboloid and a pair of planes; it consists of two hyperbola. Proposition 13 Let l1 , l2 and l3 be three lines such that exactly two of them, say l1 and l3 , are coplanar. Their trisector consists of one conic if l1 and l3 are parallel and two conics otherwise. The conics are parabolas if l2 is parallel to the plane of l1 and l3 and hyperbolas otherwise. We will make use of the following lemma that is easily obtained and whose proof, which relies primarily on the classification of conics [10], we omit. Lemma 14 The intersection of a right hyperbolic paraboloid and a plane is (i) a parabola or a line if the plane is parallel to the axis of the hyperbolic paraboloid and (ii) a hyperbola or a pair of intersecting lines otherwise. Due to lack of space, we present only the case when the trisector is a pair of hyperbola. See the Appendix for the remaining cases. Two lines intersect in R3 and the third is skew but not in a parallel plane We prove here that, in this case, the trisector consists of two hyperbola. See Figure 3. We also prove several other properties which will be useful for characterizing the bisectors and performing the basic linear tests referred to in the introduction. Let `1 and `3 be a pair of intersecting lines and l2 a line that is skew with respect to both of them and such that the three lines are not all parallel to the same plane. More precisely, assume that `1 and `2 are as in Figure 1(a). Since l3 intersects l1 and is not horizontal, then line `3 may be defined by point p3 = (x, ax, −1) and vector v3 = (α, β, 1), x ∈ R. See Figure 3(a). Lemma 15 The trisector consists of two hyperbolas, one in each of the planes of H1,3 . Proof. The bisector H1,2 is a right hyperbolic paraboloid with vertical axis. The planes of H1,3 are not vertical. By Lemma 14 the intersection of H1,2 with each of the planes of H1,3 is either a hyperbola or a line. It cannot be a line by Lemma 4. Lemma 16 The projection of the trisector in the XY -plane is a pair of rectangular hyperbolas whose asymptotes are parallel to the X and Y axes and are all distinct. Proof. The bisector H1,2 is a right hyperbolic paraboloid with vertical axis. The planes of H1,3 are not vertical, and so the projection of the trisector in the XY -plane is a pair of hyperbola. See Figure 4. Consider the equation of the trisector projected into the XY plane (a degree four equation). We will use the well-known fact that a plane curve admits a vertical asymptote when the coefficient of the leading monomial in y, which is a polynomial in x, is zero. We 7 (b) x = −1 (a) x = 1 Figure 4: Projections of the trisector and bisector corresponding to the two canonical triplets. obtain that the projected trisector has exactly two distinct vertical asymptotes since this polynomial in x is quadratic with strictly positive discriminant, 4a4 (1 + α2 + β 2 )(1 + a2 ), since a 6= 0. Similarly for the vertical asymptotes. Since a hyperbola does not have two asymptotes in the same direction, each hyperbola admits a vertical and a horizontal asymptote and is rectangular. The next lemma follows easily from the properties of a rectangular hyperbola. Lemma 17 Each branch of the trisector is monotonic with respect to X and Y . The next lemma will be useful to further describe how the two hyperbola intersect in projection. Lemma 18 The set of triplets of lines consists of at most two connected components. Proof. Consider three lines as in Figure 3(a). We argue that any triplet of lines in this setting can be moved to one of two canonical triplets of lines in which l3 is vertical (v3 = (0, 0, 1)) and intersects the X-axis at either 1 or −1, and a = 1. Line l3 intersects l1 in the plane z = 1 at point p3 and the plane z = −1 at a point, say p4 . Line l3 can be modified continuously by moving point p4 until it reaches either (1, a, −1) or (−1, −a, −1) and this without ever crossing l2 . Now, if p4 = (1, a, −1) (resp. p4 = (−1, −a, −1)) then p3 can be moved to (1, a, 1) (resp. (−1, −a, 1)) without intersecting l2 . Finally, we can continuously deform the triplet of lines to obtain a = 1. To conclude notice that during the above deformation, l3 never crosses l2 . Lemma 19 When projected onto the XY -plane, the projected hyperbolas lie in asymmetric pairs of opposite quadrants and one branch of one hyperbola intersects both branches of the other. Proof. This follows by looking at the projections (see Figure 4) of the trisector of the canonical triplets of Lemma 18 and by noticing that by Lemma 16 no deformation causes the asymptotes to switch. The two dimensional cells are described in the following proposition. Proposition 20 Let l1 , l2 and l3 be three lines such that l1 and l3 intersect in R3 and l2 is skew with respect to them and not in a parallel plane. Then (i) V1,2 and V2,3 consist of three connected components of a hyperbolic paraboloid one of which is bounded by four arcs of the trisector and the other two are each bounded by two arcs of the trisector having the same asymptotic direction (see Figure 4), and (ii) V1,3 consists of two connected components of two planes. In one of the planes, the cell consists of one component bounded by two branches of the trisector and in the other plane the cell consists of two components each bounded by one branch of the trisector (see Figure 5(a)). 8 (a) (b) Figure 5: (a) The 2D cell of l1 and l3 . (b) Impossible configuration for this 2D cell. Sketch of proof. For (i) the result follows from looking at the projections (see Figure 4) of the trisector for the two canonical triplets of lines of Lemma 18 and noticing that, in both instances, the origin is in V1,2 and its projection lies in the cell bounded by four branches of the trisector, and arguing that, by continuity, the topology is invariant. Similarly for V2,3 . For (ii), each plane of the bisector contains one hyperbola and we can show that the 2D cell consists of the region between the branches on one plane and the region outside in the other. There are only two possible configurations (by Lemma 19) which are shown in Figure 5. That the 2D cell has two connected components, that is, corresponds to Figure 5(a), can be shown by computing the midpoint of the intersection points of the two hyperbolas and showing that this point is closer to l1 and l2 than to l3 . 3.4 Two pairs of coplanar lines In this case the trisector is given by the intersection of planes and consists of up to four lines. Here again we classify the cases depending on whether the lines intersect or are parallel in R3 . Proposition 21 Their trisector of three lines, at least two pairs of which are coplanar, consists of (i) the empty set, if the three lines are parallel and coplanar, (ii) one line, if either the three lines are all coplanar and concurrent in R3 or, the three lines are parallel and not all coplanar, (iii) two intersecting lines, if exactly two pairs are coplanar, one pair parallel and the other intersecting; or two parallel lines if the three lines are coplanar, two lines are parallel and the third one intersects them, (iv) four lines, otherwise. Due to space limitations we do not provide a proof of this proposition nor do we describe the two-dimensional cells, all of which are elementary, the bisectors being planes.4 . We mention here just one of the subcases of (iv) since it yields the maximum number of connected components for a 2D cell. Lemma 22 Let l1 , l2 and l3 be three concurrent lines in three distinct planes. The cells of dimension two consist of four connected components of a pair of planes. Proof. Say that l1 , l2 and l3 intersect at the origin. The trisector consists of 4 lines. Consider one of the bisecting planes of l1 and l3 . On this plane lies two of the lines of the trisector which divides the plane into four components, two of which will be in the 2D cell 4 See Table 2 in the Appendix for more details. 9 V1,3 . The same is true of the other bisecting plane. To see that these four components are disconnected notice that the line L that is the intersection of the two bisecting planes (of l1 and l3 ) is not in the 2D cell. To see this consider a sphere whose center p is on L and that is tangent to the plane containing lines l1 and l3 (at the origin). The line l2 which goes through the origin and doesn’t lie in the plane of l1 and l3 properly intersects this sphere. Thus p is closer to l2 than to l1 and l3 . Hence L is not in the 2D cell V1,3 and the four components are disconnected. (Notice that their closure is connected at the origin.) Similarly for V1,2 and V2,3 . 4 Algorithms To prove Theorem 3 we need to demonstrate, in all cases, rational separating lines and planes for branches of the trisector and the components of the two dimensional cells. The case of three pairwise skew lines not all parallel to the same plane is treated in [14]. Otherwise, this is largely elementary and follows from the monotonicity of the trisectors and the properties of their projections. We discuss here briefly the case when two lines intersect and the third is skew but not in a parallel plane, which requires some additional argument. Refer to Figure 4. We first show how to separate the component of the 2D cell bounded by four branches of trisector from the two components bounded by two branches of the trisector. First notice that when projected onto the XY -plane these components are separated by the line through the two points of intersection of the two projected hyperbola. The line in 3D through the corresponding points in 3D is the line L of intersection between the 2 planes containing the hyperbola, that is, the 2 bisecting planes of the intersecting lines l1 and l3 . Line L is the normal to l1 and l3 and is thus rational and its projection onto the XY -plane is rational. To separate the two components bounded by two branches of the trisector we take a line that separates the two branches of the (correct) hyperbola. The line L intersects the hyperbolic parabola in two points (the intersection points of the two hyperbola) which are algebraic conjugates. Hence the midpoint m of the two intersection points is rational so the line orthogonal to L in the XY plane through m is rational and separates the components. References [1] F. Aurenhammer. Voronoi diagrams – a survey of a fundamental geometric data structure. ACM Computing Surveys, 23(3):345–405, 1991. [2] F. Aurenhammer and R. Klein. Voronoi diagrams. In J. R. Sack and J. Urrutia, editors, Handbook of computational geometry, chapter 5, pages 201–290. Elsevier Publishing House, December 1999. [3] E. Berberich, M. Hemmer, L. Kettner, E. Schömer, and N. Wolpert. An exact, complete and efficient implementation for computing planar maps of quadric intersection curves. In Proceedings of the 21st ACM Annual Symposium on Computational Geometry (SoCG’05), pages 99–115, 2005. [4] J.-D. Boissonnat, O. Devillers, S. Pion, M. Teillaud, and M. Yvinec. Triangulations in CGAL. Computational Geometry: Theory and Applications, 22:5–19, 2002. 10 [5] J.-D. Boissonnat, O. Devillers, R. Schott, M. Teillaud, and M. Yvinec. Applications of random sampling to on-line algorithms in computational geometry. Discrete and Computational Geometry, 8:51–71, 1992. [6] C. Borcea, X. Goaoc, S. Lazard, and S. Petitjean. Common tangents to spheres in R3 . Discrete and Computational Geometry, 35(2):287–300, 2006. [7] T. M. Chan, J. Snoeyink, and C. K. Yap. Primal dividing and dual pruning: Outputsensitive construction of four dimensional polytopes and three-dimensional diagram Voronoi diagrams. Discrete and Computational Geometry, 18:433–454, 1997. [8] K. L. Clarkson and P. W. Shor. Applications of random sampling in computational geometry, II. Discrete and Computational Geometry, 4:387–421, 1989. [9] T. Culver. Computing the Medial Axis of a Polyhedron Reliably and Efficiently. PhD thesis, University of North Carolina at Chapel Hill, 2000. [10] C. Delode. Gomtrie affine et euclidienne. Dunod Universit, France, 2000. [11] T. K. Dey and W. Zhao. Approximate medial axis as a voronoi subcomplex. In SMA ’02: Proceedings of the seventh ACM symposium on Solid modeling and applications, pages 356–366, New York, NY, USA, 2002. ACM Press. [12] L. Dupont, D. Lazard, S. Lazard, and S. Petitjean. Near-optimal parameterization of the intersection of quadrics: II. A classification of pencils. Journal of Symbolic Computation, 2007. In press (24 pages). http://dx.doi.org/10.1016/j.jsc.2007. 10.012. [13] M. Etzion and A. Rappoport. Computing Voronoi skeletons of a 3-d polyhedron by space subdivision. Computational Geometry: Theory and Applications, 21(3):87–120, 2002. [14] H. Everett, D. Lazard, S. Lazard, and M. S. E. Din. The Voronoi diagram of three lines in R3 . In Proceedings of the 23rd ACM Annual Symposium on Computational Geometry (SoCG’07), pages 255–264, S. Korea, 2007. [15] S. Fortune. Voronoi diagrams and delaunay triangulations. In Handbook of discrete and computational geometry, pages 377–388. CRC Press, Inc., Boca Raton, FL, USA, 1997. [16] K. Hoff, T. Culver, J. Keyser, M. Lin, and D. Manocha. Fast computation of generalized Voronoi diagrams using graphics hardware. Computer Graphics, 33(Annual Conference Series):277–286, 1999. Proceedings of ACM SIGGRAPH 1999. [17] M. . Karavelas. A robust and efficient implementation for the segment voronoi diagram. In Proc. Internat. Symp. on Voronoi diagrams in Science and Engineering, pages 51–62, 2004. [18] M. I. Karavelas. A robust and efficient implementation for the segment Voronoi diagram. In International Symposium on Voronoi Diagrams in Science and Engineering, pages 51–62, 2004. [19] J. Keyser, S. Krishnan, and D. Manocha. Efficient and accurate B-Rep generation of low degree sculptured solids using exact arithmetic: I – Representations, II – Computation. Computer Aided Geometric Design, 16(9):841–859, 861–882, 1999. 11 [20] V. Koltun and M. Sharir. Three dimensional euclidean Voronoi diagrams of lines with a fixed number of orientations. SIAM Journal on Computing, 32(3):616–642, 2003. [21] V. J. Milenkovic. Robust construction of the Voronoi diagram of a polyhedron. In Proceedings of the 5th Canadian Conference on Computational Geometry (CCCG’93), pages 473–478, 1993. [22] B. Mourrain, J.-P. Técourt, and M. Teillaud. On the computation of an arrangement of quadrics in 3D. Computational Geometry: Theory and Applications, 30(2):145–164, 2005. Special issue, 19th European Workshop on Computational Geometry. [23] A. Okabe, B. Boots, K. Sugihara, and S. N. Chiu. Spatial Tessellations - Concepts and Applications of Voronoi Diagrams. John Wiley, 2nd edition, 2000. [24] E. Schömer and N. Wolpert. An exact and efficient approach for computing a cell in an arrangement of quadrics. Computational Geometry: Theory and Applications, 33(1-2):65–97, 2006. Special Issue on Robust Geometric Algorithms and their Implementations. [25] O. Schwarzkopf and M. Sharir. Vertical decomposition of a single cell in a threedimensional arrangement of surfaces and its applications. Discrete and Computational Geometry, 18:269–288, 1997. [26] R. Seidel. A convex hull algorithm optimal for point sets in even dimensions. M.Sc. thesis, Univ. British Columbia, Vancouver, BC, 1981. Report 81/14. [27] M. Sharir. Almost tight upper bounds for lower envelopes in higher dimensions. Discrete and Computational Geometry, 12:327–345, 1994. [28] M. Teichmann and S. Teller. Polygonal approximation of Voronoi diagrams of a set of triangles in three dimensions. Technical Report 766, Laboratory of Computer Science, MIT, 1997. 12 Appendix A Two lines intersect in R3 and the third is in a plane parallel In this case the trisector consists of the intersection of a right hyperbolic paraboloid and two planes. Proposition 23 If two lines intersect in R3 and the third is in a plane parallel then the trisector consists of two parabolas, one in each of the planes of the bisector of the intersecting lines. The projection of the trisector on the XY -plane is a pair of orthogonal lines (and thus monotonic in X and Y ). Proof. See Figure 6(a). We can assume that all three lines are parallel to the XY -plane so that bisector H1,3 is a pair of vertical planes and H1,2 is a right hyperbolic parabloid with vertical axis. By Lemma 14 the trisector is either a parabola or a line in each of the planes of H1,3 . By Lemma 4 neither is a line. Proposition 24 Let l1 , l2 and l3 be three lines such that l1 and l3 intersect in R3 and l2 is in a plane parallel and below the plane containing l1 and l3 . Then (i) V1,2 and V2,3 consist of two connected components of a hyperbolic paraboloid each of which is bounded by two arcs of the trisector. The cell of V1,2 (resp. V2,3 ) consists of the components that contain l1 (resp. l3 ) in projection. (i) V1,3 consists of one connected component lying on two planes. In each plane, the cell consists of the region above the corresponding branch of the trisector. Sketch of proof. The pair of parabola project onto the XY -plane in a pair of orthogonal lines dividing the plane into four quadrants. Each quadrant contains either l1 or l3 in projection. A point on the hyperbolic paraboloid H1,2 in the quadrant of l1 is clearly closer to l1 than to l3 . Similarly for H2,3 . This concludes the argument for (i). For (ii) consider a point p on the trisector that projects, orthogonally to the XY plane, on l2 . Such a point p can be chosen on each of the bisecting planes and thus on each parabola. Since l2 is everywhere below the hyperbolic paraboloid H1,2 (and H2,3 ) and l1 is above, moving the point p upward moves it away from l2 and closer to l1 . Hence the result. (a) The trisector is two parabolas (b) One parabola Figure 6: The trisector of two intersecting and one skew line. 13 Z `3 v3 = (1, a, 0) p3 = (x, 0, z) O Y `1 : `2 : X y = ax z=1 y = −ax z = −1 (a) l3 is above l1 (b) l3 is above l1 (c) l3 is below l1 Figure 7: A pair of parallel lines with the third line in a plane not parallel to the plane of the parallel pair. The trisector is a hyperbola. The 2D cells depend on whether l2 intersects the plane containing l1 and l3 between them or not. B Two lines are parallel When two lines are parallel the trisector consists of the intersection of a right hyperbolic paraboloid and a plane. It is either a parabola or a hyperbola depending on whether the third line is in a plane parallel to the parallel pair. Proposition 25 If the third line is in a plane parallel to the plane of the parallel pair then the trisector is a parabola. It’s projection in the XY -plane is a line (which is monotonic in X and Y ). Proof. See Figure 6(b). We can assume that all three lines are parallel to the XY plane so that bisector H1,3 is a vertical plane and H1,2 is a right hyperbolic parabloid with vertical axis. By Lemma 14 the trisector is either a parabola or a line and by Lemma 4 it is not a line. It projects to a line since H1,3 is vertical. Proposition 26 Let l1 , l2 and l3 be three lines such that l1 and l3 are parallel in R3 and l2 is in a plane parallel and below the plane containing l1 and l3 . Then (i) V1,2 and V2,3 consist of one connected component of a hyperbolic paraboloid bounded by the trisector. The cell of V1,2 (resp. V2,3 ) consists of the component that contains l1 (resp. l3 ) when projected on the XY -plane. (i) V1,3 consists of one connected component lying on the plane above the corresponding branch of the trisector. Sketch of proof. The proof is similar to the proof of Proposition 24. Proposition 27 If the third line is in a plane not parallel to the plane of the parallel pair then the trisector is a hyperbola. Its projection onto the XY -plane is a rectangular hyperbola which is monotonic in X and Y . Proof. See Figure 7. We can assume that bisector H1,3 is a non-vertical plane and H1,2 is a right hyperbolic parabloid with vertical axis. By Lemma 14 the trisector is either a hyperbola or a line and by Lemma 4 it is not a line. To see that its projection is rectangular, we proceed as in the proof of Lemma 8. Lines l1 and l2 are as in Figure 1(a) and l3 is given by p3 = (x, 0, z) and v3 = (1, a, 0), z 6= ±1. See Figure 7(a). The equation of the projected conic is 2a(1 − z)XY + 2a2 xX − 2axY + (1 − z 2 )(a2 + 1) − a2 x2 = 0. Since z 6= 1, the coefficient of XY is not zero, which gives the result. 14 Proposition 28 Let l1 , l2 and l3 be three lines such that l1 and l3 are parallel in R3 and l2 intersects the plane containing l1 and l3 in a point p. Without loss of generality, by exchanging if necessary l1 and l3 we may assume that l3 is below l1 (z < 1). If l3 is above (resp. below) l2 then (i) V2,3 consists of one connected component of a hyperbolic paraboloid bounded by the two branches of the trisector, (ii) V1,2 consists of two connected components of a hyperbolic paraboloid each bounded by one branch of the trisector (resp. consists of one connected component of a hyperbolic paraboloid bounded by the two branches of the trisector), and (iii) V1,3 consists of one connected component lying on the plane and bounded by two branches of the trisector (resp. two connected components on the plane and each bounded by one branch of the trisector) (see Figure 7). Sketch of proof. For (i) note that the midpoint of the common perpendicular of l1 and l3 is in the cell V1,3 and it can be shown that the projection of this midpoint is in between the two branches of the projected hyperbola. Similarly for (ii) and (iii). 15 C Tables and figures Configuration of lines Trisector Three pairwise skew lines not all parallel to a common plane or on a hyperboloid of revolution on a hyperboloid of revolution all parallel to a common plane non-singular quartic cubic and a line nodal quartic Fig. 8(a) One pair of coplanar lines one one one one pair pair pair pair intersecting, third skew, not in a parallel plane intersecting, third in a parallel plane parallel, third skew, not in a parallel plane parallel, third in a parallel plane two hyperbolas two parabolas one hyperbola one parabola Fig. Fig. Fig. Fig. 8(b) 8(c) 8(d) 8(e) Two pairs of coplanar lines two intersecting pairs one pair parallel, one pair intersecting four lines two lines Fig. 8(f) Fig. 8(g) one line four lines Fig. 8(h) Fig. 8(i) empty set two lines one line four lines Fig. Fig. Fig. Fig. Three pairs of coplanar lines in three distinct planes three pairwise parallel lines three concurrent lines Three coplanar lines three parallel lines two parallel lines, the third one intersects them three concurrent lines three pairwise intersecting lines (not concurrent) Table 1: Classification of the trisector of three lines. 16 8(j) 8(k) 8(l) 8(m) Configuration of lines Bisector type V1,2 V1,3 V2,3 V1,2 No. CC V1,3 V2,3 Three pairwise skew lines not all parallel to a common plane or on a hyperboloid of revolution on a hyperboloid of revolution all parallel to a common plane HP HP HP HP HP HP HP HP HP 2 2 1 2 2 1 2 2 2 HP HP HP HP HP HP HP HP 2P 2P P P 3 2 2(1) 1 3 2 1 1 2 1 1(2)∗ 1 HP HP 2P 2P 2P P 4 2 3 1 3 2 P 2P P 2P P 2P 1 4 1 4 1 4 P P 2P 2P P 2P 2P 2P ∅ 2P 2P 2P 1 2 2 2 1 1 2 2 0 1 2 2 One pair of coplanar lines one one one one pair pair pair pair intersecting, third skew, not in a parallel plane intersecting, third in a parallel plane parallel, third skew, not in a parallel plane parallel, third in a parallel plane Two pairs of coplanar lines two intersecting pairs one pair parallel, one pair intersecting Three pairs of coplanar lines in three distinct planes three pairwise parallel lines three concurrent lines Three coplanar lines three parallel lines two parallel lines, the third one intersects them three concurrent lines three pairwise intersecting lines (not in a point) Table 2: Classification of the 2D cells of three lines. In each case the bisectors are either hyperbolic paraboloids (HP), pairs of planes (2P), or single planes (P). *The number of connected components for cells V1,2 and V2,3 depends on where the skew line intersects the plane containing the parallel lines in between them or not. 17 `3 `2 `1 `1 `3 `2 `3 `3 `1 `2 `1 `2 (a) Three pairwise skew lines (b) One pair of coplanar (c) One pair of coplanar all parallel to a common lines: one pair intersecting, lines: one pair intersecting, plane. third is skew but not in a third in a parallel plane. parallel plane. `1 `2 `3 (d) One pair of coplanar lines: one pair parallel, the third is skew but not in a parallel plane. `1 `3 `1 `1 `2 `3 `3 `2 `2 (e) One pair of coplanar (f) Two pairs of coplanar (g) Two pairs of coplanar (h) Three pairwise parallel lines: one pair parallel, third lines: two intersecting pairs. lines: one pair parallel, one lines in three distinct planes. in a parallel plane. pair intersecting. `2 `3 `1 `2 `3 `1 `2 `3 `1 `2 `3 `1 (i) Three concurrent lines in (j) Three coplanar parallel (k) Three coplanar lines: (l) Three coplanar concurthree distinct planes. lines. two are parallel, the third in- rent lines. tersects them. `3 `1 `2 (m) Three coplanar pairwise intersecting lines (not concurrent). Figure 8: Classification of the degenerate cases. 18
© Copyright 2026 Paperzz