Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
© The Author 2005. Published by Oxford University Press on behalf of The British Computer Society. All rights reserved. For Permissions, please email: [email protected] doi:10.1093/comjnl/bxh075 Analytical Honeycomb Geometry for Raster and Volume Graphics Valentin E. Brimkov1 and Reneta P. Barneva2 1 Fairmont State University, Fairmont, WV 26554, USA 2 State University of New York, Fredonia, NY 14063, USA Email: [email protected], [email protected] In this paper we investigate the advantages of using hexagonal grids in raster and volume graphics. In 2D, we present a hexagonal graphical model based on a hexagonal grid. In 3D, we introduce two honeycomb graphical models in which the voxels are hexagonal prisms, and we show that these are the only possible models under certain reasonable conditions. In the framework of the proposed models we design the 2D and 3D analytical honeycomb geometry of linear objects as well as of circles and spheres. We demonstrate certain advantages of the honeycomb models and address algorithmic and complexity issues. Received 29 March 2004; revised 14 September 2004 1. INTRODUCTION Various advantages of volume graphics over surface graphics have been widely discussed in the literature [1]. However, certain disadvantages of the former have been recognized quite early. One can list the following, among others [1]: • Loss of geometric information after voxelization of a surface object. The voxels composing a digital surface do not retain the geometric information contained in the definition of the surface. • High aliasing artifacts due to the discrete nature of the data from which the continuous object is reconstructed (such as appearance of holes in the object after performing some operations). • Large amount of memory and computational resources are required in order to store and manipulate digital objects. Over the last few decades numerous useful theoretical results have been obtained in digital topology and digital geometry. These are disciplines providing theoretical foundations for computer graphics and digital image analysis [2, 3, 4, 5, 6]. A promising approach, which may help resolve problems such as those listed above, is based on developing an analytical digital geometry (see, e.g. [7] for introduction). The main objective here is to obtain a simple analytical description of the basic Euclidean primitives and to develop algorithms for modeling using such primitives. Digital geometry (as well as analytical digital geometry) deals with geometrical properties of ‘digital images’, which are sets of points of the digital space Zn . The raster computer graphics is modeled upon a regular square grid, where the square tiles are called pixels. Square grids are physically implemented in computer displays. In 3D, the graphical models are based on regular cubic tilings, in which the cubes are called voxels. Alternatives to the square/cubic grid have also been considered. In 2D, such an alternative is provided by the hexagonal grid whose cells are regular hexagons. Certain properties of hexagonal tilings of the plane have been first studied in relation to research on covering and packing of the plane. Studies on these last topics seem to originate from a work of Gauss in 1831 introducing the idea of lattice. Over the years contributions to the subject have been made by mathematicians like Minkowski, Davenport and Rogers, among others. (See the classical monograph of Rogers [8] for historical and other details related to this early stage.) In particular, one can see that regular hexagons provide economic (and under certain conditions optimal) plane covering and packing. Hexagonal rasters are well known in image processing [9, 10], distance transforms [11, 12, 13, 14], image analysis architectures [15] and other applications [16, 17]. Topological properties of hexagonal grids (in particular, tunnel-freedom issues) have been studied long ago by the mathematical morphology community [18]. Recent works elucidate various interesting points. For instance, algorithmic comparison between hexagonal- and square-based models is available in [19]. This last work also provides a discussion on the possibility of implementing hexagonal grids to graphical devices. Algorithms for drawing lines and circles are presented in [20, 21]. Alternatives to the cubic grid in 3D have also been considered. Some properties and advantages of grids based on rhombic dodecahedral or truncated octahedral tilings have been studied, e.g. in [22, 23]. In the present paper we consider the case when the tile is a hexagonal prism. We call the corresponding models the ‘3D honeycomb models’. To our knowledge of the available literature, such kind of models have not been studied seriously, although they indeed expose certain advantages The Computer Journal Vol. 48 No. 2, 2005 181 Analytical Honeycomb Geometry over the classical cubic model. In brief, we show that the honeycomb models ensure tunnel-freedom of digital objects in a more direct way than the cubic models. Honeycomb models provide certain advantages in defining ‘good pairs’ of adjacency relations in view of the discrete version of the well-known Jordan curve theorem (see the end of Section 2.1 for a related discussion). Moreover, the introduced models ensure better approximation to a continuous object (in terms of the Hausdorff distance) and are ‘more economic’ in some respects. The proposed honeycomb models employ simple mathematics and provide possibilities for a straightforward transfer of notions and results from classical digital geometry. Our main contribution is developing the analytical honeycomb geometry of some fundamental Euclidean primitives, such as straight lines, segments, polygons, circles, planes, spheres etc. Their compact analytical description provides simple drawing algorithms in a straightforward manner. Our analytical approach makes the theoretical considerations either obvious or rather simpler than those of [20, 21]. The paper is organized as follows. In the next section we recall some definitions and introduce notions to be used in the sequel. In Section 3, we provide theoretical foundations for developing the 2D digital analytical honeycomb geometry of linear objects and circles. We also discuss some advantages of the hexagonal grid. In Section 4, we extend our considerations to the 3D space by introducing two honeycomb graphical models in which the voxels are hexagonal prisms. We show that these are the only possible models under certain reasonable conditions. We also develop the analytical digital honeycomb geometry within these models. In Section 5, we address algorithmic and complexity issues. We conclude with some final remarks in Section 6. 2. 2.1. PRELIMINARIES Basic notions of digital topology and geometry A tiling P of Rn by convex polytopes is called normal [24] if the intersection of any two tiles from P is either empty or appears to be their common (n − d)-dimensional facet, for some d, 1 ≤ d ≤ n. Let T be a normal tiling of Rn , n = 2 or 3, where the tiles P of T are convex polytopes. For a set of tiles A we denote U (A) = ∪P ∈A P . A set of tiles will be regarded as a digital object. A j -dimensional facet of a tile P ∈ T is called j -facet, for some j , 0 ≤ j ≤ n − 1. Thus the 0-facets of P are its vertices, the 1-facets are its edges and the 2-facets of a 3D polytope are its 2D faces. Two tiles are called j -adjacent if they share a j -facet. A k-path in a digital object A is a sequence of tiles from A such that every two consecutive tiles are k-adjacent. Two tiles are k-connected if there is a k-path between them. A digital object A is k-connected if there is a k-path connecting any two tiles of A. A digital object is connected if it is at least 0connected. Otherwise it is disconnected.1 A k- component of 1 Classically, 0-adjacent/connected (resp. 1-adjacent/connected) pixels are called 8-adjacent/connected (resp. 4-adjacent/connected). In 3D, A A D D (a) (b) FIGURE 1. (a) A set D that is tunnel-free and 0-separating in a set A. (b) A set D that is 1-separating in a set A. D is 1-tunnel-free and has 0-tunnels. a digital object A is a maximal (non-extendable) k-connected set of tiles of A. Let D be a subset of a digital object A. If A − D is not k-connected then the set D is called k-separating in A (Figure 1). A supercover of an Euclidean object M is the set Sup(M) of all tiles which are intersected by M. Let be a curve in R2 or a surface in R3 . In a very general sense one can consider a subset of Sup() as a digitization of or as a discrete curve/surface corresponding to . An important concept in discrete geometry for computer imagery is that of tunnel. Intuitively, a k-tunnel is a location in a discrete object through which a discrete k-path can penetrate. Tunnels in a discrete object (in particular, digital curve or surface) are usually defined on the basis of the notion of separability. Let a set of tiles A be k-separating in a digital object B but not j -separating in B. Then A is said to have j -tunnels for any j < k. A digital object without k-tunnels is called k-tunnel-free (Figures 1 and 2). An object that has no tunnels for any k, 0 ≤ k ≤ 2, is called tunnel-free, in short.2 The notion of tunnel plays an important role in rendering voxelized scenes by casting digital rays from the image to the scene [25]. As Kaufman remarks, thinner rays are much more attractive for ray traversal. Therefore, it is desirable to construct k-tunnel-free digital objects where k is as small as possible. The ideal situation is when the object is tunnel-free. The 2D case is comparatively simple since the connectivity of a digital object fully characterizes the topology of the tunnels. More precisely, an object A contains 1-tunnels if and only if it is disconnected; A contains 0-tunnels but no 1-tunnels if and only if it is connected but not 1-connected (i.e. if and only if it is strictly 0-connected); and A is tunnel-free if and only if it is 1-connected. In 3D, however, the situation is more complicated. Sometimes this complexity has certain negative impacts on the design of discretization algorithms. The variety of possibilities (presence of 0-, 1-, 2-tunnels or tunnelfreedom) may cause certain difficulties when constructing ktunnel-free discretizations of more complex objects. Thus, it 0-adjacent/connected (resp. 1 or 2-adjacent/connected) voxels are called 26-adjacent/connected (resp. 18 or 6-adjacent/connected). 2 Classically, in 2D, a 0-tunnel (resp. 1-tunnel) is called 8-tunnel (resp. 4-tunnel). In 3D, a 0-tunnel (resp. 1- or 2-tunnel) is called 26-tunnel (resp. 18- or 6-tunnel). A 2-tunnel is sometimes called a hole. The Computer Journal Vol. 48 No. 2, 2005 182 V. E. Brimkov and R. P. Barneva (i) (ii) (i) (ii) (iii) (a) (b) FIGURE 2. Different types of tunnels in the case of square/cubic tiles. (a) Tunnels in a 2D digital object: (i) 1-tunnel, (ii) 0-tunnel. (b) Tunnels in a 3D object: (i) 2-tunnel, (ii) 1-tunnel, (iii) 0-tunnel (in two different orientations). may be difficult to control the object connectivity. Moreover, it might even be a problem to secure that a digital object is connected [7]. Ensuring tunnel-freedom can be a difficult task as well [7, 26, 27, 28, 29, 30, 31, 32]. A source for such sort of difficulties is the topology of the square grid. In Sections 4 and 5 we will see how they can be easily overcome by using honeycomb models. The notion of tunnels is closely related to the one known in digital topology as ‘good pairs’ of adjacency relations [33, 34]. The latter arises in particular when one works with closed digital curves (in 2D) and closed digital surfaces (in 3D). It turns out that in order to make the considerations meaningful, one should use different topologies when dealing with the curve/surface or with its complement. For instance, in 2D, the following discrete version of the well-known Jordan curve theorem has been proved [35]: Theorem 1. If C is the set of points of a simple closed 1-curve (0-curve) and |C| > 4(|C| > 3), then the complement C of C has exactly two 0-components (1-components). In this context, (1, 0) and (0, 1) are good pairs of adjacency relations, while (1, 1) and (0, 0) are not. A similar situation arises in 3D: (2, 0), (0, 2), (2, 1) and (1, 2) are good pairs, while (2, 2), (1, 1) and (0, 0) are not. Thus, it is necessary to use different adjacencies when processing a digital object and its complement. However, if one uses a hexagonal grid with an adjacency relation µ defined by the nearest neighbor, such an undesirable asymmetry does not exist anymore as (µ, µ) turns out to be a good pair [33]. 2.2. Analytical digital geometry Analytical geometry is an important method for studying geometric objects by algebraic means. A geometric object is analytically represented with respect to a coordinate system in the plane or space (Figure 3). A novel approach in raster and volume graphics is the one based on developing analytical digital geometry. The main objective is to obtain simple analytical definitions of the basic Euclidean primitives, such as lines and line segments, polygons, circles, planes, spheres etc., and, on this basis, to create tools for efficient modeling of more sophisticated objects composed by such primitives. In recent years analytical digital geometry has been developed by several authors (see [36] and the bibliography in [29, 37]). This approach is very successful especially y y g O (0,0) O (0,0) x x (a) (b) FIGURE 3. (a) A straight line through the points (5, 0) and (0, 4) consists of all points (x, y) in the plane, whose coordinates satisfy the equation 4x +5y −20 = 0 with respect to a Cartesian coordinate system. (b) A circle with radius 5 and center (0, 0) in a Cartesian coordinate system has equation x 2 + y 2 = 52 . when dealing with linear objects. Analytical descriptions and efficient digitization algorithms based on them have been obtained for 2D and 3D digital straight lines or their segments [32, 36, 38, 39], digital planes [36, 39, 40, 41], 2D and 3D digital polygons as well as tunnel-free meshes of 3D polygons [7, 30, 31, 32]. These results are of significant practical importance since for various applications it suffices to work with a reasonable polyhedral approximation to the given real object. Circles and spheres have been analytically defined as well [29, 42]. In the rest of this section we introduce some basic notions and recall the analytical definitions of a digital straight line, plane and circle. A discrete coordinate plane consists of unit squares (pixels) centered on the integer points of the Cartesian coordinate system in the plane. A discrete coordinate space consists of unit cubes (voxels) centered on the integer points of the Cartesian coordinate system in the 3D space. The coordinates of pixels/voxels are the coordinates of their centers. The edges of a pixel/voxel are parallel to the coordinate axes. A 2D arithmetic line is a set of pixels L(a1 , a2 , µ, ω) = {(x, y) ∈ Z2 |0 ≤ a1 x + a2 y + µ + ω/2 < ω}, where a1 , a2 , µ ∈ Z, ω ∈ N. ω is called the arithmetic thickness or width of the line and µ is its internal translation constant. L(a1 , a2 , µ, ω) can be considered as the discretization of a straight line with equation ax1 + ax2 + µ = 0. The vector (a1 , a2 ) is the normal vector to the line. An arithmetic line L(a1 , a2 , µ, ω) is called naive if ω = max(|a1 |, |a2 |) The Computer Journal Vol. 48 No. 2, 2005 183 Analytical Honeycomb Geometry y y g y g x O (0,0) O(0,0) x O (0,0) (b) (a) x (c) FIGURE 4. (a) A naive line L(4, 5, −18, 5). (b) A standard line L(4, 5, −16, 9). (c) A digital circle C(5) with center (0, 0) and radius 5. (a) (b) (c) FIGURE 5. (a) Tiling by a parallelogram. (b) Brick-built tiling. (c) Tiling by a quasi-regular hexagon. (Figure 4a), and standard if ω = |a1 | + |a2 | (Figure 4b). It is well-known [36] that an arithmetic line is (at least) 0-connected (classically, 8-connected) and 1-tunnel-free if and only if ω ≥ max(|a1 |, |a2 |). Thus a naive line L(a1 , a2 , µ, max(|a1 |, |a2 |)) is the ‘thinnest possible’ arithmetic line that is 0-connected and 1-tunnel-free (in a sense that any arithmetic line of thickness less than max(|a1 |, |a2 |) is disconnected and has 1-tunnels). Similarly, an arithmetic line is 1-connected (classically, 4-connected) and 0-tunnel-free iff ω ≥ |a1 | + |a2 |. Thus a standard line L(a1 , a2 , µ, |a1 | + |a2 |) is the ‘thinnest possible’ arithmetic line that is 1-connected and 0-tunnel-free (in a sense that any arithmetic line of thickness less than |a1 | + |a2 | has 0-tunnels).3 An arithmetic digital plane is a set of voxels P (a1 , a2 , a3 , µ, ω) = {x ∈ Z3 : 0 ≤ a1 x1 + a2 x2 + a3 x3 + µ + ω/2 < ω}. The parameters a1 , a2 , a3 , µ ∈ Z, and ω ∈ N have the same interpretation as for lines. A digital plane with ω = max(|a1 |, |a2 |, |a3 |) is naive, while one with ω = |a1 | + |a2 | + |a3 | is standard (see [41]). Properties of naive/standard planes are similar to those of naive/standard lines [7, 41]. parallelograms, such as in Figure 5a. Such a grid is topologically equivalent to one with square-grid cells. An arithmetic digital circle with center (0, 0) and radius r ∈ Z+ is a set of pixels C(r) = {(x, y) ∈ Z2 : (r − 21 )2 ≤ x 2 + y 2 < (r + 21 )2 } (Figure 4c). The analytical approach to raster and volume graphics may lead to important advantages. The analytical digital geometry is purely discrete and involves simple integer arithmetics. A digital object is compactly defined by formulas, which ensures a very economic object encoding. Analytical definition may help achieve better accuracy of certain operations, for which one can take advantage of the corresponding analytical formulas used in the definition. It should also be noted that after performing voxelization, the distinct voxels still retain certain information about the original object. In particular, it is usually straightforward to determine whether a voxel belongs to an analytical digital object, to its interior or boundary, or to the intersection or the union of two or more analytically defined objects. Moreover, negative effects and phenomena like object disconnectedness or appearance of holes and tunnels can be understood more deeply and as a result avoided. Remark 1. It is easy to realize that the above definitions extend to the case of a grid whose cells are equivalent 2.3. 3 Note that if one of the coefficients a , a is 0, then the corresponding 1 2 naive and standard lines coincide. Consider a normal tiling P of Rn , n = 2 or 3, by copies of the same tile P , so that the following conditions are met: (i) P is a convex set, (ii) for any P1 , P2 ∈ P there is a translation τ Hexagonal and honeycomb tilings The Computer Journal Vol. 48 No. 2, 2005 184 V. E. Brimkov and R. P. Barneva (a) (b) (c) FIGURE 6. (a) Square grid. (b) Regular brick-built grid. (c) Regular hexagonal grid. (a) (b) (c) (d) FIGURE 7. (a) Parallelepiped. (b) Hexagonal prism. (c) Rombic dodecahedron. (d) Truncated octahedron. such that τ (P1 ) = P2 and (iii) if p is a point of a tile P ∈ P, then the set of the duplicas of p in all tiles from P is a lattice in Rn . A tiling with these properties is called a uniform tiling. First we consider uniform tilings of R2 . It is well known (and also easy to see) that a uniform tiling is possible only if the tile P is a parallelogram (Figure 5a and b) or a hexagon whose opposite sides are equal and parallel (Figure 5c). Such a hexagon is called quasi-regular. The vertices and sides of the tiles form a grid. The center of a tile is the intersection point of its diagonals. Sometimes we will identify a tile with its center. A grid can be regarded as an infinite plane graph G = (V , E) whose vertex set V and edge set E consist of the polygons’ vertices and sides respectively. Note that the graph of the hexagonal grid of Figure 5c is isomorphic to the one of the parallelogram tiling of Figure 5b. Thus, these two grids have the same topology, despite the different shape of their tiles. A tiling/grid such as the one in Figure 5b will be called a brick-built tiling/grid. If we require the tiles to be regular polygons, then we obtain the square tiling/grid depicted in Figure 6a, the regular brick-built tiling/grid in Figure 6b and the regular hexagonal tiling/grid in Figure 6c. Note that the brick-built tilings combine the advantages of the square grid with those of the hexagonal grids. As demonstrated later, the brick-built topology (as well as the topology of the hexagonal tiling) supports obtaining tunnelfree objects and better approximations to the continuous object. On the other hand, as distinct from the hexagonal grid, the brick-built grid allows easier drawing by graphic devices. It is well known that R3 can be uniformly tiled by parallelepiped, hexagonal prism, rhombic dodecahedron or truncated octahedron (Figure 7). In what follows we will study and compare models on grids generated by a tile P that is either a parallelepiped (in particular, cube) or a hexagonal prism whose bases are quasi-regular hexagons. The notions of a grid and a tile center are defined analogous to the 2D case. 3. 3.1. 2D ANALYTICAL HONEYCOMB GEOMETRY Hexagonal coordinate system Consider the tilings in Figure 6c and b. As mentioned, the corresponding grids are isomorphic. An important property of these tilings is that any two non-disjoint tiles are 1-adjacent. In contrast to the case of rectangular grids, here 0-adjacency is impossible. Thus, a connected digital object is always 1-connected and tunnel-free. We now develop a basis for analytical digital geometry on hexagonal grids. We call the hexagonal tiles 2-hexels. The hexels form a digital hexagonal space M. On it, we define a hexagonal coordinate system, as follows. We choose a hexel and define its center O to be the origin of the coordinate system. The origin’s coordinates are both zeros, i.e. O = (0, 0). Next we fix two coordinate axes Ob1 and Ob2 as shown in Figure 8a. The basis vectors b1 and b2 of the coordinate system are aligned with the coordinate axes. The centers of the 2-hexels of the digital hexagonal space form a sublattice L of Z2 , as b1 and b2 form a basis of L. The cells of this lattice are unit rhombuses obtained by linking the lattice centers along the Ob1 and Ob2 axes only (Figure 8a). The so defined hexagonal coordinate system is denoted by Ob1 b2 . The coordinate axes Ob1 and Ob2 divide the plane into four quadrants, denoted Quad I, Quad II, Quad III and Quad IV. The origin O is common for Quad II and Quad IV. The positive part of Ob1 and the negative part of Ob2 belong to Quad IV, while the positive part of Ob2 and the negative The Computer Journal Vol. 48 No. 2, 2005 185 Analytical Honeycomb Geometry Quad II b2 b2 Quad I g n O b1 b1 C2 Quad III (a) Quad IV C1 (b) FIGURE 8. (a) Hexagonal coordinate system and Quad I, II, III, IV. (b) The cones C1 and C2 . The normal vector n = (a1 , a2 ) to the straight line g belongs to C1 . b2 r(x,y) b1 h(x,y) (a) (b) FIGURE 9. (a) 2-hexel h(x, y) and its adjunct rhombus r(x, y). (b) Hexagonal space M̄ and its adjunct space M̄. r(−1, 1), r(−1, −1) and r(1, −1)) are 0-adjacent to r(0, 0). part of Ob1 belong to Quad II. A 2-hexel with center at a point (x, y) will be denoted h(x, y). Now with the help of Figure 10 we observe that: 3.2. Adjunct rhomboidal space With the digital hexagonal space M defined above, one can associate a subsidiary rhomboidal space called the adjunct rhomboidal space and denoted M̄. We will use it in the proofs of some statements from the subsequent sections. With any 2-hexel h(x, y) we associate a rhombus r(x, y), called adjunct to h(x, y), with the same center and with sides determined by the basis vectors of the space M, as shown in Figure 9a. This correspondence defines a rhomboidal digital space M̄ with the same center and basis vectors (Figure 9b). We now consider in more detail the relation between the spaces M and M̄ in view of the adjacency of their cells. We label a 2-hexel from M (resp. a rhombus from M̄) by the coordinates of its center. Let h(x, y) be a 2-hexel from M and r(x, y) the corresponding rhombus from M̄. Without loss of generality assume that x = y = 0. With a reference to Figure 10a we notice that: Fact 1. • h(0, 0) has six neighbors: h(1, 0), h(0, 1), h(−1, 1), h(−1, 0), h(0, −1) and h(1, −1). Each of them is 1-adjacent to h(0, 0). • r(0, 0) has eight neighbors: r(1, 0), r(1, 1), r(0, 1), r(−1, 1), r(−1, 0), r(−1, −1), r(0, −1) and r(1, −1). Four of them (r(1, 0), r(0, 1), r(−1, 0) and r(0, −1)) are 1-adjacent to r(0, 0), while the others (r(1, 1), Fact 2. (a) Any pair of rhombuses of the form r(i, j ), r(i + 1, j ) or r(i, j ), r(i, j + 1) are 1-adjacent, and the corresponding pairs of 2-hexels h(i, j ), h(i + 1, j ) or h(i, j ), h(i, j + 1) are 1-adjacent as well (Figure 10b). (b) Any pair of rhombuses of the form r(i, j ), r(i − 1, j + 1) are 0-adjacent, while the corresponding 2-hexels h(i, j ), h(i − 1, j + 1) are 1-adjacent (Figure 10c). (c) Any pair of rhombuses of the form r(i, j ), r(i + 1, j + 1) are 0-adjacent, while the corresponding 2-hexels h(i, j ), h(i + 1, j + 1) are disjoint (Figure 10d). 3.3. Lines, segments and polygons With respect to the coordinate system Ob1 b2 , one can build an analog of the analytical discrete geometry in a square grid. Let a1 x1 + a2 x2 + b = 0 (a1 , a2 , b—rational numbers) be the equation of a straight line g with respect to the hexagonal coordinate system. To simplify some considerations we assume that the coefficients a1 , a2 and b are integers and that gcd(a1 , a2 ) divides b. This ensures that the line g contains infinitely many equidistant lattice points. The vector n = (a1 , a2 ) is the normal vector to g. The line g is collinear with the vectors v = (a2 , −a1 ) and v = (−a2 , a1 ). The normal vectors to straight lines g for which the vectors v and The Computer Journal Vol. 48 No. 2, 2005 186 V. E. Brimkov and R. P. Barneva b2 –1,1 –1,0 0,1 0,0 1,0 1,1 b1 –1,–1 0,–1 1,–1 (a) (b) (c) (d) FIGURE 10. Illustration of Fact 2. to which the normal vector belongs, the width equals the thickness ω of a standard or a naive line in a square grid (see Section 2.2). Formally, we have the following theorem. b2 b1 FIGURE 11. Two ‘orthogonal’ digital line segments with endpoints (0, 0), (7, 4) and (0, 0), (−4, 5) respectively. The normal vector to the former belongs to the cone C1 , while the normal vector to the latter belongs to the cone C2 . v belong to Quad I and Quad III, form a cone C1 (Figure 8b). Analogously, the normal vectors to straight lines g for which the vectors v and v belong to Quad II and Quad IV, form a cone C2 (Figure 8b). From the definition of Quad I, Quad II, Quad III and Quad IV it follows that the cone C1 is open while the cone C2 is closed. Clearly, C1 ∩ C2 = ∅ and C1 ∪ C2 = R2 . We now define a digital line corresponding to g, as follows: g D (a1 , a2 , b) = {(x1 , x2 ) ∈ L : 0 ≤ a1 x1 + a2 x2 + b + t/2 < t}, where |a1 | + |a2 |, if n = (a1 , a2 ) ∈ C1 , t= max(|a1 |, |a2 |), if n = (a1 , a2 ) ∈ C2 . See Figure 11. The parameter t is called the width of the line g D . It equals the number of parallel equidistant straight lines, which contain centers of hexels from g D . The so defined digital line g D is the thinnest possible connected line of this type. For smaller values of t the line becomes disconnected, while for larger values it contains extra hexels which, however, do not influence the line connectivity. We remark that, depending on the quadrant Theorem 2. A digital line g D (a1 , a2 , b) in a 2D digital hexagonal space M is 1-connected and tunnel-free. Moreover, it is the thinnest possible connected digital line of this type, in a sense that decreasing the line width t leads to removal of 2-hexels from the line, which makes it disconnected. Proof. The proof relies on the observations from Section 3.2 and well-known facts from the theory of arithmetic lines in a square grid. Given a line g D (a1 , a2 , b) with a normal vector n = (a1 , a2 ), we distinguish the cases n ∈ C1 and n ∈ C2 . Case 1. Let n ∈ C1 , i.e. g D (a1 , a2 , b) has width t = |a1 | + |a2 |. In the adjunct space M̄ we consider the set ḡ of rhombuses that correspond to the 2-hexels of g D . Their centers (x1 , x2 ) satisfy the double linear Diophantine inequality 0 ≤ a1 x1 + a2 x2 + b + t/2 < t, where t = |a1 | + |a2 |. Hence, ḡ is a standard line in M̄. Since a standard line is 1-connected, by Fact 2 we obtain that any two consecutive 2-hexels of g D are 1-adjacent. Hence, the whole line g D is 1-connected and tunnel-free as well. It is easy to see that if an arbitrary pixel is removed from a standard line, it becomes either disconnected or strictly 0connected (Figure 12a, top). In view of Remark 1 the same happens in a grid with parallelogram cells (see Figure 12a, middle). If ḡ is disconnected then the corresponding line g D is disconnected. If ḡ is strictly 0-connected then g D is disconnected, as implied by Fact 2. Thus removal of a 2hexel from g D always causes occurrence of a 1-tunnel and disconnectedness (Figure 12a, bottom.) It is well known [36] that any arithmetic line of thickness ω < |a1 | + |a2 | has 1- or 0-tunnels. Consequently, if we decrease the thickness t = |a1 | + |a2 | of g D , the corresponding line ḡ in M̄ will have 0- or 1-tunnels and therefore g D will be disconnected. Case 2. Let n ∈ C2 , i.e. g D (a1 , a2 , b) has width t = max(|a1 |, |a2 |). Consider in the adjunct space M̄ the set ḡ of rhombuses corresponding to the 2-hexels of g D . Their centers (x1 , x2 ) satisfy 0 ≤ a1 x1 + a2 x2 + b + t/2 < t, The Computer Journal Vol. 48 No. 2, 2005 Analytical Honeycomb Geometry (a) 187 (b) FIGURE 12. Connectivity and tunnels in lines. (a) Standard lines: (top and middle) removal of a pixel makes the line either disconnected or strictly 0-connected; (bottom) removal of an arbitrary 2-hexel makes the line disconnected. (b) Naive lines: removal of an arbitrary cell makes the line disconnected. where t = max(|a1 |, |a2 |). Hence, ḡ is a naive line in M̄. A naive line is 0-connected and by Fact 2 it follows that any two consecutive 2-hexels of g D are 1-connected. Hence, g D is 1-connected and tunnel-free. If we remove an arbitrary pixel of a naive line ḡ (in a square or parallelogram grid), it becomes disconnected (Figure 12b, left and middle). Then the corresponding line g D in M is disconnected as well (Figure 12b, right). It is well known [36] that any arithmetic line of thickness ω < max(|a1 |, |a2 |) has 1-tunnels and, thus, is disconnected. Hence, if we decrease the thickness t = max(|a1 |, |a2 |) of g D , the corresponding line ḡ in M̄ will be disconnected. Then g D will be disconnected as well. Let us mention that a digital line in a 2D hexagonal space is always 1-connected, even if its thickness matches the width of a naive line in a square grid. In this last case a digital line g D still possesses the connectivity of a standard line in a square model. Note that this superior connectivity is achieved with essentially fewer 2-hexels. This is an important advantage for obtaining higher algorithmic efficiency of digital line generation. Given two hexels h1 and h2 one can obtain a tunnel-free digital straight line segment with endpoints h1 and h2 . On this basis one can construct tunnel-free digital polygons as a sequence of digital line segments determined by the polygon vertices. 3.4. Digital circles The circle is another basic Euclidean primitive admitting an easy analytical definition. In a square grid a digital circle has been analytically defined and studied in [29, 42, 43]. As already mentioned in Section 2.2 one can consider the following digital circle with center at O(0, 0) and radius r ∈ N. 2 2 2 2 2 1 1 C(r) = (x, y) ∈ Z : r − 2 ≤ x + y < r + 2 . (1) Note however that, in contrast to the case of lines and planes, the above definition cannot be directly applied to a hexagonal grid since it may define a set of 2-hexels which is too far from the intuitive idea of a circle and, in fact, can be disconnected (Figure 13a). Therefore, a new definition is needed. To this end consider a hexagonal coordinate system Ob1 b2 with hexagonal unity α.4 We first observe that a point (x, y) of the √ coordinate system has coordinates (α(x + 21 y), α 23 y) with respect to the ordinary square coordinate system with unity 1, origin (0, 0) and abscissa Ob1 . Then the equation of a Euclidean circle in the hexagonal system becomes 2 √ 2 α 2 x + 21 y + α 2 23 y = r 2 , i.e. α 2 (x 2 + xy + y 2 ) = r 2 . Assuming the unity α to be equal to one, we obtain the following analytical definition of a digital circle with center O(0, 0) and radius r. 2 D C (r) = (x, y) ∈ L : r − 21 ≤ (x 2 + xy + y 2 ) 2 1 < r+2 . (2) See Figure 13b. We have the following theorem. Theorem 3. (a) A digital circle defined by Equation (2) is always 1-connected and tunnel-free. (b) Concentric digital circles with radii r = 1, 2, 3, . . . fill the whole plane. Proof. In order to prove the statement, it suffices to show that C D (r) has no 1-tunnels. This last fact follows by simple argument which, however, requires some preparation. C D (r) is symmetric with respect to the axes b1 , b2 and the line with equation √ (with respect to the orthogonal coordinate system) y = 3x (Figure 14a). Therefore, it is enough to restrict our considerations to the portion of C D (r) delimited by the positive directions of b1 and b2 (Figure 14b).5 Let us D (r). denote this portion by C+ 4 The unity α is the length of the basis vectors b and b . It is easy to 1 2 √ see that α = 3a, where a is the length of a hexel side. 5 Note that in [21] all three segments of a half circle are handled separately. The Computer Journal Vol. 48 No. 2, 2005 188 V. E. Brimkov and R. P. Barneva b2 O b1 (a) (b) FIGURE 13. (a) The set of hexels satisfying condition (1) with r = 3. (b) Concentric digital circles defined by formula (2), for r = 1, 2, 3, 4, 5. b2 6 5 4 3 2 B 3 2 1 (a) A 4 5 b1 1 (b) (c) FIGURE 14. (a) Symmetries of a digital circle. (b) and (c) Illustrations of the proof of Theorem 3. We introduce a counterclockwise order on the 2-hexels of D (r), as follows: C+ • The 2-hexel h(r, 0) is assigned number 1. D (r) be numbered by a natural • Let a 2-hexel h(i, j ) ∈ C+ number k. D (r), then h(i − 1, j ) is numbered If h(i − 1, j ) ∈ C+ by k + 1. D (r) but h(i, j + 1) ∈ C D (r), Else, if h(i − 1, j ) ∈ / C+ + then h(i, j + 1) is numbered by k + 1. D (r) but Else, if h(i − 1, j ), h(i, j + 1) ∈ / C+ D h(i − 1, j + 1) ∈ C+ (r), then h(i − 1, j + 1) is numbered by k + 1. See Figure 14b which provides two examples of enumerD (3) and C D (4). Clearly the proposed ordering ation for C+ + D (r). assigns consecutive numbers to all 2-hexels of C+ We also have the following plain fact. Let a 2-hexel D (r) be numbered by k > 1. Then the 2-hexel h(i, j ) ∈ C+ numbered by k − 1 is either h(i, j − 1) or h(i + 1, j − 1) or h(i + 1, j ), and the 2-hexel numbered by k + 1 is either h(i, j + 1) or h(i − 1, j + 1) or h(i − 1, j ). D (r) has a 1-tunnel. Now assume by contradiction that C+ It is easy to realize that this is possible only if there is D (r), such that one or both of the a 2-hexel h(i, j ) ∈ C+ following conditions hold6 : D (r); (i) h(i, j − 1), h(i + 1, j − 1), h(i + 1, j ) ∈ / C+ D (r). (ii) h(i, j + 1), h(i − 1, j + 1), h(i − 1, j ) ∈ / C+ We assume that (i) is the case, the case (ii) being analogous. Then, since the radii of the two Euclidean circles C(r − 21 ) and C(r + 21 ) that determine C D (r) differ by one, the length of the segment AB must be >1 (see Figure 14c). Thus we obtain that the distance between the centers of the hexels h(i, j + 1) and h(i − 1, j + 1) is >1, which is a contradiction. Theorem 3 (b) follows from the fact that every point with integer coordinates in Ob1 b2 falls in between two concentric circles whose radii differ by one. Hence every 2-hexel belongs to a certain digital circle C D (r). A circle C D (r) can be thought as having thickness one, since it is bounded between two circles whose radii differ by one. As Theorem 3 demonstrates, a circle C D (r) is 6 Since h(r, 0) ∈ C D (r) we have that C D (r) = ∅. + + The Computer Journal Vol. 48 No. 2, 2005 189 Analytical Honeycomb Geometry x v’ 1 x 3/4 x v 3/4 u (a) (b) (c) (d) FIGURE 15. Extreme cases for which a 2-hexel of a digital line has maximal deviation from the continuous line: (a) in a square grid, (b) in a regular hexagonal grid, (c) in a regular brick-built grid and (d) in the optimal brick-built grid. always tunnel-free. Note that in a square grid a digital circle C(r) defined by Equation (1) has 0-tunnels, in general, as demonstrated in [29]. In order to ensure tunnel-freedom larger thickness should be taken. We notice that a digital circle C D (r) may contain a type of ‘extra’ 2-hexels (see the circle with radius 3 in Figures 13b and 14b). Nevertheless, C D (r) provides better approximation to the Euclidean circle, as we will see in Section 3.5. We remark that the digital circle C D (r) can be obtained by applying the algorithm proposed in [21], with possible technical simplifications based on our analytical approach. It is also worth mentioning that in [14] digital circles in a hexagonal grid have been defined by certain distance transforms providing approximations to the Euclidean distance transform. The theoretical considerations and examples from [14] provide evidence that digital circles obtained by distance transforms and those obtained analytically become more and more similar as the radius of the circle increases. Carrying out a more detailed comparison is seen as a further task. Here we only mention that, according to [14], the Euclidean distance transform (that is implicitly related to our analytical definition) appears to be ‘the ideal that the other distance transforms try to achieve’. 3.5. Optimality of the honeycomb model To have a ground for comparison between models built upon square or hexagonal grids, we suppose that the square and the hexagonal tiles have the same area 1. We call such tiles the unit square and the unit 2-hexel respectively. It is easy to calculate √ that√the√length of a side of the unit 2-hexel is equal to a = 2/( 3 4 3) = 0.62040 . . . . 3.5.1. Quality of approximation We show next that in certain sense the hexagonal grid provides better approximation to a continuous line segment than the square and the brick-built grids. To this end we first recall the definition of Hausdorff distance. Let E be a metric space with metric d, and E a family of closed non-empty subsets of E. For every x ∈ E and every A ∈ E let d(x, A) = inf{d(x, y) : y ∈ A}. Then, given two sets A, B ∈ E, Hd (A, B) = max{sup{d(a, B) : a ∈ A}, sup{d(A, b) : b ∈ B}} is called the Hausdorff distance between A and B. We will suppose that d is the Euclidean metric. We measure the deviation of a straight line discretization g D from the corresponding continuous line g by the Hausdorff distance Hd (g D , g) between them. We have the following results. Theorem 4. In the regular hexagonal grid the obtained approximation to a straight line is optimal over all possible uniform tilings of the plane, in terms of minimizing the maximal possible deviation from the continuous object. Proof. The proof consists of a number of steps in which different grids are compared. Let us first compare the hexagonal and the square grids. As Figure 15a demonstrates, a tunnel-free (standard) digital line might contain √ a pixel (or pixels) whose farthest point is in a distance 2 = 1.41421 . . . from the digitized straight line. For the hexagonal grid the maximal possible deviation is reached in the extreme case illustrated in√Figure √ 15b. √ √ It is equal to u = ( 13/2)a = ( 13/2)( 2/ 4 27) = 1.11844 . . . , which is considerably less than that in the case of square grid. Consider now the brick-built grid whose tiles are unit squares. The maximal possible deviation for this grid is reached in the case shown in Figure 15c and equals v = 1.25. This is smaller than the corresponding value for a square grid but larger than the one for a hexagonal grid. Note that in a brick-built grid framework unit square tiles do not provide the best possible approximation. In order to determine the dimensions of the optimal rectangle, with reference to Figure 15d, let us denote the length of its horizontal side by x. Then the length of the other side is 1/x. Now we have to determine x which minimizes the function f (x) = 1/x 2 + 43 x 2 . Using simple calculus we find that the solution to the above optimization problem is x = √2 = 1.15470 . . . . Then the other side has length 3 1/x = 0.86602 . . . . A grid with such a tile will be called the optimal brick-built grid. For this grid the maximal deviation is equal to v = ((1/x)2 + ( 43 x)2 )1/2 = 1.22474 . . . . It is easy to show that the maximal deviation of a digital line in a regular hexagonal grid is minimal over all quasi-regular The Computer Journal Vol. 48 No. 2, 2005 190 V. E. Brimkov and R. P. Barneva hexagonal grids. We also have that the maximal deviation of a digital line in the optimal brick-built grid is minimal over all possible brick-built grids. Thus we obtain the result stated. y b1 T b2 Pl 0 x=y Q S We have seen that the specific geometry of the brick-built grids is superior to the geometry of the square grid regarding approximability of continuous linear objects. Together with the useful topological properties, this makes the brick-built grids quite an interesting subject of study both from the theoretical and practical point of view. Similar results hold true for the maximal possible deviation of a digital circle from the corresponding Euclidean circle. We have the following theorem. Theorem 5. A digital circle C D (r) in a 2D hexagonal space provides better approximation to the Euclidean circle than a digital circle defined by Equation (1) in a square grid. Proof. By |XY | we denote the length of a segment XY with endpoints X and Y . Consider first a circle C D (r) in a hexagonal space M and an arbitrary 2-hexel h(x, y) ∈ C D (r). It is clear that a maximal deviation is reached in the case depicted in Figure 16a. Actually, this extreme case is only a hypothetical one, since the center of a 2-hexel from C D (r) cannot lie on the outer circle defining C D (r) [see the strict right inequality in Equation (2)]. Hence the maximal deviation is bounded by |AB| + |BC| = 0.5 + a = 0.5 + 0.62040 . . . = 1.12040. . . < 1.1205. We will show that the maximal possible deviation of a digital circle C̄(r) in a square grid is larger than the above upper bound 1.1205. Consider the infinite family of Euclidean circles C(r + 1 ), r = 1, 2, . . . , where the radius r is a variable parameter. 2 Every circle C(r + 21 ) is an outer circle in the definition of a digital circle C̄(r) in the square grid. Consider the points of the form Pl (l, l), where l is a positive integer. Let ε > 0 be an arbitrary real constant. It is not hard to show that there is a point Pl0 (l0 , l0 ) and a circle C(k0 + 21 ) with a radius k0 + 21 for some positive integer k0 , such that the distance from Pl0 to C(k0 + 21 ) is less than ε. To see this consider the line with equation x = y and its intersection point Q with a circle C(k + 21 ). The coordinates of Q satisfy the system of equations x 2 + y 2 = (k + 21 )2 x = y, √ from where we obtain x = (k + 21 )/ 2, i.e. Q = √ √ ((k + 21 )/ 2, (k + 21 )/ 2). We need the Euclidean distance between the points Q and Pl to be less than ε, i.e. 2 2 k+ 1 + 21 √ 2 − l + k√ − l < ε, 2 2 √ from where we get |k + 21 − l 2| < ε. Then the existence of positive integers k and l satisfying the above inequality A x B C (a) (b) FIGURE 16. Illustrations of the proof of Theorem 5. immediately follows from the well-known Kronecker’s theorem.7 Let us now fix an ‘enough small’ ε, for instance ε =√0.01. Let l0 and k0 be positive integers satisfying |k0 + 21 −l0 2| < 0.01. Then the Hausdorff distance from the point Pl0 (l0 , l0 ) to the circle C(k0 + 21 ) is given by the length |Pl0 Q| of the segment with endpoints Pl0 and Q (Figure 16b). By construction, |Pl0 Q| < 0.01. Let pl0 be the pixel with center at the point Pl0 and T be the farthest point (a vertex) of pl0 to the circle C(k0 ). The distance from T to C(k0 ) is given by the length |T S| of the segment with endpoints T and S, where the point S belongs to C(k0 ) and to the line x = y (Figure 16b). Then the Hausdorff distance between the digital circle C̄(k0 ) and the Euclidean circle C(k0 ) satisfies Hd (C̄(k0 ), C(k0 )) ≥ Hd (pl0 , C(k0 )) √ 2 − |Pl0 Q| =|ST | = 0.5 + 2 √ √ 2 2 > 0.5 + − ε = 0.5 + − 0.01 2 2 > 0.5 + 0.707 − 0.001 = 1.206. Thus we showed that for the square grid the maximal possible deviation is >1.206, while for the 2D hexagonal grid it is <1.1205. This completes the proof. 3.5.2. Grid cost We conclude this section with one more observation, revealing that the hexagonal grid is in a sense ‘more economic’ than the square grid. For a given grid H , the total length of all its edges is called the cost of H and denoted c(H ). One can calculate that a unit 2-hexel has perimeter 6a = 3.72241 . . . , which is less than the perimeter of the unit square, i.e. 4. This fact may have an advantageous impact on the cost of the corresponding grid, as illustrated by the following example. Example 1. Consider the grid of a screen with a square shape, consisting of n rows, each of them containing n unit tiles. Consider the square grid H1 (Figure 17a) and hexagonal grid H2 (Figure 17b). Both grids cover the same 7 Kronecker theorem states that for any irrational number α and real number ε > 0 there exist natural numbers m and n for which |mα − n| < ε. The Computer Journal Vol. 48 No. 2, 2005 Analytical Honeycomb Geometry (b) (a) FIGURE 17. Illustration of Example 1. area n2 . One can easily find that in the former case the grid cost is c(H1 ) = 2n2 + 2n, while in the latter case it is c(H2 ) = (3n2 + 4n − 1)a = (3a)n2 + 4an − a. Since the coefficient of n2 in c(H2 ) is 3a = 1.86120 . . . <2, we obtain that c(H2 ) is asymptotically smaller than c(H1 ). It is easy to show that a unit 2-hexel has a minimal perimeter among all quasi-regular hexagons with area 1. One can also show that a tiling by unit 2-hexels has minimal cost among all possible tilings by quasi-regular hexagons with area 1. Similarly, a unit square has a minimal perimeter among all parallelograms with area 1, and a tiling by a unit square has a minimal cost over all possible tilings by parallelograms with area 1. Thus, one can conclude that the tiling with regular hexagons has minimal cost over all possible uniform tilings.8 This property may be of interest for possible more economical wire grid fabrication of a novel computer screen design based, e.g. on liquid-crystals, plasma panels or electroluminescent technologies. On the other hand, however, the properties of the square tiling make its drawing easier and more efficient. 4. 3D HONEYCOMB GEOMETRY In this section we present two 3D honeycomb models and the related analytical digital geometry. In both of them the 3D space is tiled by a right hexagonal prism called 3-hexel. The base of the prism is a unit 2-hexel and its height has length 1. Thus the 3-hexel volume equals 1. As briefly indicated earlier one of our main concerns is to design 3D honeycomb spaces that provide a basis for obtaining tunnel-free discretization of surfaces, in particular, planes and spheres. To support the better understanding of tunnel-freedom issues in a honeycomb environment, we start by introducing a ‘naive’ 3D honeycomb model, labeled as Model 0. 4.1. Model 0 Consider a discrete space M0 consisting of slices composed by 3-hexels placed consecutively one on top of the other (Figure 18). 8 It is based on this fact that bees are known to minimize the quantity of materials used to build honeycombs. 191 We observe that in this space a connected set of 3-hexels may have 1-tunnels. For example, two 3-hexels such as those in Figure 18b are 1-adjacent and there is a 1-tunnel between them. As another example, consider the configuration of the four 3-hexels h1 , h2 , h3 and h4 in Figure 18c. It can be thought of as a portion of a digital surface in M0 . One can easily see that this set is 2-connected, but there is a 1-tunnel between the hexels h1 and h4 . In order to eliminate the possibility for such kind of undesirable cases, in what follows we introduce more sophisticated 3D honeycomb spaces in which any connected set of 3-hexels is always 2-connected and tunnel-free (i.e. no 0- or 1-tunnels may occur). 4.2. Model I Let h0 be a 3-hexel in R3 . We assign the coordinates (0, 0, 0) to its center O and consider it as the origin of a coordinate system Oe1 e2 e3 , defined as follows. The direction of the third axis e3 coincides with the direction of the height of h0 (Figure 19b). The other two axes are determined as follows. Consider the plane P passing through the origin and orthogonal to e3 . Consider a hexagonal tiling T of P generated by the 2-hexel that is an orthogonal projection of h0 over P (Figure 19a). Starting from h0 we assign to every 2-hexel of T a 3-hexel, in a way that the third coordinates of two side-neighboring 3-hexels differ either by 1 2 3 or by 3 . This assures that any two neighboring 3-hexels are 2-adjacent. In Figure 19a the third coordinates of the 3hexels (i.e. of their centers) are marked on the corresponding 2-hexels from T . The hexels’ centers belong to a plane which is chosen to be one of the digital coordinate planes. In it we fix the coordinate axes e1 and e2 , as illustrated in Figure 19. Figure 19a exposes the projections of e1 and e2 on P. The origin O and the axes e1 , e2 and e3 determine the coordinate system Oe1 e2 e3 . Now for each 3-hexel h from the digital coordinate plane Oe1 e2 , we tile the space upward and downward by adjacent copies of h. Thus, we obtain a tiling of R3 , which defines a digital honeycomb space M1 . In the digital coordinate plane Oe1 e2 one can consider the four quadrants QuadI, QuadII, QuadIII and QuadIV, determined by the coordinate axes. Figure 19b shows the three coordinate axes of M1 , and Figure 19c exposes a portion of a digital quadrant determined by the axes e1 and e2 . By construction, the centers of the 3-hexels form a lattice H in R3 whose cells are parallelepipeds. Its basis vectors e1 , e2 and e3 are also basis vectors for the coordinate system Oe1 e2 e3 . We denote the length of e1 and e2 by α and the length of e3 by β.√Note that α and β may be different. As in the 2D case α = 3a, where a is the length of the side of a hexagonal face. In√general, √ √β may be an arbitrary positive real number. If a = 2/( 3 4 3) then the 3-hexel’s hexagonal face has area 1. If, in addition, β = 1, then the 3-hexel has volume 1. In contrast to space M0 , in the so constructed digital honeycomb space M1 , every two neighboring 3-hexels are 2-adjacent. No 0- or 1-tunnel is possible in a connected The Computer Journal Vol. 48 No. 2, 2005 192 V. E. Brimkov and R. P. Barneva h1 h2 h3 h4 (a) (b) (c) FIGURE 18. Illustration of Model 0. e3 e1 Proj e2 –2 –5/3 –4/3 –1 –5/3 –4/3 –1 –4/3 –1 –1/3 –2/3 –1/3 –2/3 –1/3 –1 –2/3 –1/3 0 0 1/3 0 1/3 2/3 –2/3 –1/3 –2/3 –1/3 0 1 2/3 1 4/3 2/3 1 1/3 2/3 1 4/3 4/3 5/3 0 1/3 1/3 1/3 2/3 0 5/3 2 2/3 1 5/3 2 7/3 e1 1 O 4/3 4/3 e3 O 5/3 2 Proj e1 7/3 8/3 (a) (b) e2 (c) e2 FIGURE 19. Illustration of Model I. (a) The orthogonal projections of the centers of 3-hexels on the plane P. (b) The axes of the coordinate system Oe1 e2 e3 . The rays e1 and e2 make an angle of 60◦ . (c) Portion of a digital quadrant determined by the axes e1 and e2 . e3 Proj e2 –5/3 –5/3 –4/3 –5/3 –4/3 –4/3 1 2/3 –2/3 –1/3 –1/3 0 –1 1/3 –1 –2/3 –1/3 1/3 0 0 1/3 2/3 1/3 2/3 1 –1 –2/3 –1/3 –2/3 –1/3 0 1/3 2/3 1 4/3 0 5/3 2/3 1 4/3 1/3 2/3 1 4/3 5/3 2 0 1/3 7/3 4/3 5/3 2 2/3 1 1 4/3 5/3 e1 2 7/3 Proj e1 8/3 –e 2 O (a) (b) FIGURE 20. Illustration of a brick-built version of Model I. The rays e1 and −e2 make an angle of 120◦ . set of 3-hexels. We also mention that every 3-hexel has one 2-neighbor for the upper hexagonal face, one for the lower hexagonal face and two for every one of the six side rectangular faces, i.e. 14 neighbors overall. As in 2D, one can consider brick-built versions of the model, where the hexagonal prisms are substituted by rectangular prisms (Figure 20). 4.3. Model II Consider a regular hexagonal tiling of the plane. On every tile we build the corresponding 3-hexel. Thus we obtain a digital 3D plane P0 . We fix one of its hexels and choose its center O(0, 0) to be the origin of a coordinate system. Then we define the axes e1 and e2 as in the 2D case. Thus we obtain a digital coordinate plane Oe1 e2 . We now build on top of P0 The Computer Journal Vol. 48 No. 2, 2005 193 Analytical Honeycomb Geometry e3 e3 e2 e2 e2 e1 Proj e3 e1 e1 O O (b) (a) (c) FIGURE 21. Illustration of Model II. (a) Projections of two consecutive slices of 3-hexels on the coordinate plane Oe1 e2 . (b) The axes of the coordinate system Oe1 e2 e3 . (c) Portion of the digital quadrant determined by the axes e1 and e2 . e3 e2 e2 Proj e3 e1 O e1 (b) (a) FIGURE 22. Illustration of a brick-built version of Model II. another equivalent ‘slice’ of 3-hexels, shifted as illustrated in Figure 21a. Proceeding analogously upward and downward, we obtain a tiling of R3 . The tiles’ centers constitute a lattice in R3 whose cells are parallelepipeds. This lattice determines the third axis e3 as shown in Figure 21b. The basis vectors of the coordinate system are the basis vectors e1 , e2 and e3 of the√underlying lattice. The length of e1 and e2 is equal to α = 3a and the length β of e3 is a positive real number satisfying the condition β > 43 a. (This last inequality implies that the hexagonal prism tile has positive height.) Thus we obtain a digital honeycomb space M2 (Figure 21). We mention that for every 3-hexel of the digital space M2 there are four neighbors for every one of the two hexagonal faces and one for each of the six rectangular faces, i.e. 14 neighbors overall. The brick-built version of Model II is illustrated in Figure 22. 4.4. Adjunct spaces Similar to the 2D case one can associate the digital honeycomb spaces M1 and M2 with the adjunct digital spaces M̄1 and M̄2 respectively, whose cells are parallelepipeds. Since the hexels’ centers form a lattice, for P’ e3 (x,’y,’ z’) P e2 (x,y,z) e1 FIGURE 23. Constructing an adjunct 3-hexel. All vertices of the parallelepiped P are centers of 3-hexels from M1 . any 3-hexel h one can define a parallelepiped p, called adjunct to h, which has the same center as h. For definiteness consider the space M̄1 . Given a 3-hexel h(x, y, z) with center (x, y, z), the corresponding parallelepiped p(x, y, z) can be obtained as follows. Consider the parallelepiped p (x , y , z ) with center at the point (x , y , z ) and generated by the basis vectors e1 , e1 , e1 at the point (x, y, z) (Figure 23). By construction of the space M1 , the other vertices of p (x , y , z ) are centers of 3-hexels of M1 . Then The Computer Journal Vol. 48 No. 2, 2005 194 V. E. Brimkov and R. P. Barneva the parallelepiped p(x, y, z) is obtained by translation of p (x , y , z ) with a translation vector (x − x , y − y , z − z ). Thus we obtain a 3D digital space M̄1 with the same center and basis as M1 , whose cells are parallelepipeds. 4.5. Analytical digital planes in models I and II Consider a Euclidean plane P with equation a1 x1 + a2 x2 + a3 x3 = b, a1 , a2 , a3 , b ∈ Z, with respect to the coordinate system in the space M1 or M2 . Assume, as before, that gcd(a1 , a2 , a3 ) divides b, i.e. P contains a 2D lattice L which is a sublattice of H . We define in M1 (resp. M2 ) a digital plane corresponding to P , as follows: P D (a1 , a2 , a3 , b) = {x ∈ H : 0 ≤ a1 x1 + a2 x2 + a3 x3 + b + t/2 < t}, (3) where t= |a1 | + |a2 | + |a3 |, if n = (a1 , a2 ) ∈ C1 , max(|a1 |, |a2 |, |a3 |), if n = (a1 , a2 ) ∈ C2 . C1 and C2 are cones in the coordinate plane Oe1 e2 defined as in the 2D case. The parameter t is called the width of the plane P D . One can show that in both spaces M1 and M2 , the so defined digital plane is 2-connected and tunnel-free. Moreover, it is the thinnest possible digital plane of this type. For this one can use the adjunct spaces M̄1 and M̄2 introduced in Section 4.4. For definiteness consider Model I and the spaces M1 and M̄1 . Because of the one-to-one correspondence between the 3-hexels of M1 and the parallelepiped cells of M̄1 , there is a one-to-one correspondence between the 3-hexels and the parallelepiped cells of a digital plane defined by formula (3) in M1 and M̄1 respectively. We also take advantage of the well-known fact [41] that in the cubic grid, a standard plane (i.e. one of width ω = |a1 | + |a2 | + |a3 |) is always tunnelfree, while a naive plane (of width ω = max(|a1 |, |a2 |, |a3 |)) is 2-tunnel-free, but has 0- or 1-tunnels (unless two of the coefficients a1 , a2 , a3 equal 0). Moreover, the standard/naive plane is the thinnest arithmetic plane that is tunnel-free/ 2-tunnel-free. Then, using the approach of the proof of Theorem 2, one can show that a digital plane P D in the space M1 is tunnel-free, and for the so defined thickness it is the thinnest possible tunnel-free plane of this type. The considerations are technically more involved and lengthy, although the basic steps are analogous to those of the proof of Theorem 2. Therefore, the details are omitted here and left for a future exercise. As mentioned above, in the cubic grid a standard plane is always tunnel-free, while a naive plane is 2-tunnel-free, but has 0- or 1-tunnels. In contrast, in models I and II a digital plane is always tunnel-free, even if its width t equals that of a naive plane. 4.6. Digital spheres in models I and II In the cubic model an analytical digital sphere with center O(0, 0, 0) and radius r ∈ N is defined as follows [29, 43]: 2 C(r) = (x, y, z) ∈ Z3 : r − 21 ≤ x 2 + y 2 + z2 2 1 . (4) < r+2 In order to obtain a reasonable definition within the considered honeycomb models, we have to make certain relevant transformations. Consider first the honeycomb coordinate system Oe1 e2 e3 of Model I. It is not hard to compute that a point (x, y, z) of the honeycomb coordinate system has coordinates (α(x + √ 3 1 1 1 y), α y, x − 2 2 3 3 y +βz) with respect to a cubic coordinate system Oe1 e2 e3 with unity 1, centered at O(0, 0, 0), and such that the projection of the basis vector e1 over the coordinate plane Oe1 e2 has z-coordinate 13 , and the projection of the basis vector e2 over Oe1 e2 has z-coordinate − 13 . Then the equation of a Euclidean sphere in the honeycomb coordinate system is 2 2 α 2 x + 21 y + 43 α 2 y 2 + 13 x − 13 y + βz = r 2 , or, equivalently, α 2 + 19 x 2 + α 2 + 19 y 2 + β 2 z2 + α 2 − 29 xy + 23 β xz − 23 β yz = r 2 . This equation implies a definition of a digital honeycomb sphere. In Model II a digital sphere is defined analogously. It is not hard to calculate that the equation of a sphere with center O(0, 0, 0) and radius r is √ α 2 x 2 + α 2 y 2 + 49 a 2 + β 2 z2 + α 2 xy + 3 2 3 αa xz √ + 3 2 3 αa yz = r 2 , which immediately implies an analytical definition of a digital sphere. See Figure 24 for illustrations of spheres in models I and II.9 A digital honeycomb sphere in models I and II is 2-connected and tunnel-free. Moreover, concentric spheres with radii 1, 2, 3, . . . fill the whole space. The argument proving this last fact is the same as in the case of a digital honeycomb circle. In fact, every lattice point (center of a 3-hexel) falls in between two concentric spheres whose radii differ by one. Thus we can conclude that every 3-hexel of M1 (resp. M2 ) belongs to a digital sphere, which completes the proof. The proof of 2-connectivity and tunnel-freedom is similar (although technically more involved) to the proof of Theorem 3, therefore details are omitted. Issues concerning quality of approximation are addressed in Section 4.8. 9 Simple visualization programs implementing models I and II have been developed in OpenGL. They allow to scan-convert (discretize) objects in these models and display them from different view points. The Computer Journal Vol. 48 No. 2, 2005 195 Analytical Honeycomb Geometry (a) (b) (c) (d) (e) (f) FIGURE 24. Illustration of digital spheres. (a–c) Spheres in the space M1 with radii r, (a) r = 10, (b) r = 7 and (c) r = 5. (d–f) Spheres in the space M2 with radii r, (d) r = 10, (e) r = 7 and (f) r = 5. 4.7. Uniqueness of models I and II In this section we further study the structure of a 3-hexel neighborhood in models I and II. We have already seen that in both models, a connected set of 3-hexels is always 2-connected and does not contain any 0- or 1-tunnels. Moreover, the adjacency relation µ defined by the nearest neighbor forms a good pair (µ, µ). We remark that in models I and II the geometric position of two neighboring hexels is strictly fixed. In Model I, the z-coordinates of any two hexels of the digital space M1 differ by an integer multiple of 13 (Figure 19). In Model II, the digital space M2 consists of ‘slices’, shifted in such a way that the orthogonal projection of a hexel’s center over the coordinate plane Oe1 e2 falls exactly in the middle of a side of a hexagonal hexel’s face from the lower slice (Figure 21). Note that these models can be changed to a certain extent, so that the obtained tilings are still uniform and any two adjacent tiles are 2-adjacent. For instance, in the framework of Model II, these properties would be preserved if two consecutive slices are shifted in any arbitrary manner, unless the projection of a hexel’s center falls on a diagonal of a hexagonal hexel’s face from the lower slice (Figure 25a and b). Model I admits various modifications as well. One can see that all modifications preserving the required properties must satisfy the following conditions. (i) In Model I, every 3-hexel of the digital space M1 has one 2-neighbor for the upper hexagonal face, one for the lower hexagonal face and two for each one of the six side rectangular faces. (ii) In Model II, for every 3-hexel of the digital space M2 there are four neighbors for every one of the two hexagonal faces and one for each of the six rectangular faces. Modifications of models I and II satisfying the above conditions will be called feasible. Note that although the structure of a 3-hexel neighborhood in feasible modifications of models I and II is quite different, in both models a 3-hexel has the same number of neighbors (i.e. 14). We now show that the neighborhood structures relative to models I and II are the only possible structures, under the condition that the tiling is uniform and any two adjacent tiles are 2-adjacent. Consider a 3-hexel h. The following two cases are possible. Case 1—any hexagonal face of h is 2-adjacent to exactly one hexagonal face of another 3-hexel; Case 2—any hexagonal face of h is 2-adjacent to exactly four hexagonal faces of four other 3-hexels. (Clearly, a hexagonal face of h cannot be covered by two hexels only. If this is done by three hexels then in the tiling there must be pairs of hexels which share a single vertex. This would contradict the condition that any two adjacent tiles are 2-adjacent.) Consider Case 1. We will show that every one of the rectangular side faces of h is 2-adjacent to exactly two 3hexels h1 and h2 , as h2 is on top of h1 and the vertical edges of h, h1 and h2 are aligned (Figure 25c). To see this assume, The Computer Journal Vol. 48 No. 2, 2005 196 V. E. Brimkov and R. P. Barneva h (a) (b) h2 h2 h1 h1 (c) h h (d) h1 (e) FIGURE 25. (a) The orthogonal projection of a hexel’s center over the lower slice belongs to a diagonal of a hexagon. (b) The orthogonal projection of a hexel’s center over the lower slice in a feasible modification of Model I. (c–e) Illustrations of the proof of Theorem 6. by contradiction, that h is 2-adjacent only to h1 and shares a common rectangular face with it. Then h and h2 share an edge (Figure 25d) and there is a 1-tunnel between h and h2 —a contradiction. Now assume that the vertical edges of h and that of its neighbor h1 are not aligned (Figure 25e). Then clearly R3 cannot be tiled by a 3-hexel, since the space angle between some faces of h and h1 will equal 60◦ , which is a contradiction. Similar reasoning shows that in Case 2, every rectangular side face of h will be shared with another 3-hexel. Thus we have proved the following important result. Theorem 6. The two neighborhood structures relative to feasible modifications of models I and II are the only ones possible, under the condition that the tiling is uniform and any two adjacent tiles are 2-adjacent. Q A B (a) Optimality issues Let us define a grid cost in a 3D model as the total area of the surfels (faces) of the tiles included in certain volume (e.g. in a cube with a side n). We notice that the area of a 3-hexel is equal to 2 × 1 + 6 × a = 2 + 3.72241 . . . = 5.72241 . . . , which is less than the one of the unit cube, i.e. 6. Similar to the case of a 2D hexagonal grid, this implies that the grid cost in a honeycomb model is lower than the one in the cubic model. More importantly, the definition of a digital plane within models I and II ensures better approximation to the continuous plane (in terms of maximal possible deviation) compared with the classical cubic model. In fact, a tunnelfree √ standard plane may contain voxels that are at a distance 3 from the continuous plane (Figure 26a), while within models I and II this distance is clearly smaller. This can be immediately deduced from the fact that the longest diagonal of a 3-hexel √ equals f = (1+(2a)2 )1/2 = 1.59361 . . . , which is less than 3 = 1.73205 . . . (Figure 26b). It is not hard to realize that tiling by a right prism with a regular hexagonal base provides better approximation than tiling by a prism which is inclined and/or with a quasi-regular hexagonal base. Similar considerations and conclusions apply to the brickbuilt models. One can show that with respect to the value of the maximal possible deviation from the continuous plane, the honeycomb models I and II are superior to the corresponding brick-built models, while the latter are superior to the cubic model. (b) √ FIGURE 26. (a) The point B is at a distance 3 from the Euclidean plane passing through the point A and orthogonal to the straight line AB. (b) The diagonal PQ √ of a 3-hexel is shorter than the one of the unit cube which equals 3. 5. 4.8. P ALGORITHMIC AND COMPLEXITY ISSUES The considered analytical discrete primitives (digital straight lines and line segments, digital circles, planes and spheres) admit an efficient algorithmic generation, which can be performed in time that is linear in the number of the generated hexels. To show this we explain below how every one of the well-known linear time algorithms can be straightforwardly adapted to the honeycomb model. We illustrate this in the problem of digital straight line generation. We have the following theorem. Theorem 7. A digital line g D (a1 , a2 , b) in a 2D digital hexagonal space M can be generated in linear time with respect to the number of generated 2-hexels. Proof. Consider the adjunct space M̄ defined in Section 3.2. Recall that the rhomboidal cells of M̄ are in one-to-one correspondence with the 2-hexels of M. In M̄ the rhombuses with centers corresponding to 2-hexels from g D (a1 , a2 , b) constitute a digital line ḡ(a1 , a2 , b) (Figure 27). In view of the discussion in Section 3.2, if the normal vector n to the Euclidean line g: a1 x1 + a2 x2 = b belongs to the cone C1 , then ḡ(a1 , a2 , b) is a standard line in M̄. Otherwise, if n ∈ C2 , then ḡ(a1 , a2 , b) is a naive line (Figure 27). Thus, in order to obtain g D (a1 , a2 , b) in M, it suffices to obtain a digital line ḡ(a1 , a2 , b) in M̄. It is either standard or naive depending on the normal vector of g determined by the coefficients a1 and a2 . Thus the time-complexity of digital line generation in M matches the time-complexity of the algorithms for standard/naive line generation in M̄. The Computer Journal Vol. 48 No. 2, 2005 Analytical Honeycomb Geometry b2 b1 FIGURE 27. Digital hexagonal space Ob1 b2 with two digital line segments in it, together with the corresponding rhomboidal digital space. In a square or parallelogram grid a standard/naive line can be generated in linear time, e.g. by the algorithms described in [36]. Then, because of the one-to-one correspondence between the rhombuses of M̄ and the 2-hexels of M, we immediately obtain the desired digital line g D (a1 , a2 , b). This completes the proof. As mentioned earlier, within the cubic model, a digital line is tunnel-free if and only if it is standard. Since a standard line segment between two points contains as a subset the corresponding naive line between the same points, generation of the former is more time-consuming than generation of the latter. Within the 2D hexagonal model, if n ∈ C2 , we have to construct a naive line in the space M. Thus in this case the algorithm efficiency will be superior to the one for standard line generation within the square model. The above results straightforwardly extend to digital plane generation in the spaces M1 and M2 . For this, one can use their adjunct spaces M̄1 and M̄2 , in which digital planes can be efficiently generated. (See [7, 28, 44] for more details on linear-time algorithms for digital plane generation within the cubic model.) Similarly, digital circle in M and a digital sphere in M1 or M2 can be efficiently generated by applying known algorithms [29] for generation of the corresponding digital circle/sphere in the adjunct spaces M̄1 or M̄2 respectively. 6. CONCLUDING REMARKS In this paper we have developed analytical digital geometry for raster and volume graphics based on a hexagonal grid (resp. honeycomb prism tilings). In particular, we have defined digital lines and circles (in the 2D space), and digital planes and spheres (in the 3D space). We have also observed that the honeycomb models ensure discretizations which are in some respects superior to the classical ones. One of our main objectives was to ensure tunnel-freedom of the generated digital objects. With that end in view we proposed two fundamental 3D honeycomb spaces in which every connected set of 3-hexels is 2-connected and tunnelfree. In particular, any digital plane or sphere in these spaces has no tunnels. 197 On the basis of the presented models one can develop methods for discretizing more sophisticated objects (especially in R3 ), such as 3D line segments, polygons and meshes of polygons. For this, one can appropriately modify certain discretization schemes and algorithms, which have been developed for square/cubic models [7, 31, 32, 45]. Note that some problems that required long and complicated solutions within the cubic model [7, 31] can be handled more easily within the honeycomb models. The research can also be extended to discretization of non-linear curves and surfaces. For this one can take advantage of some results of implicit geometry used in computer graphics. This paper shows that in various respects the honeycomb models can serve as a useful alternative to the classical approaches in raster and volume modeling. One should admit that at the current stage the proposed 3D spaces are mostly of theoretical interest and importance, although in some areas of human practice constructions of this kind are widely used.10 It is not easy to predict whether or not these or other alternatives to the cubic grid will find more extensive practical applications in computer science. We believe that this will happen at least in relation to certain specific problems whose solution would be essentially harder within the traditional cubic model. ACKNOWLEDGEMENTS We thank Eric Andres, Claudio Montani, Roberto Scopigno and Marco Pellegrini for reading early versions of this paper and making comments and suggestions. We are grateful to Gabor Herman and Edgar Garduno for a useful discussion on the possible advantages of using non-cubic models. We would also like to thank David Bateman for helping us prepare Figure 24. V. E. B. thanks Reinhard Klette for a number of interesting discussions. We are indebted to the three anonymous referees, whose valuable remarks and suggestions helped us improve the presentation greatly. Part of this work has been done while V. E. B. was visiting the Laboratory on Signal, Image and Communication, IRCOM, Université de Poitiers, Poitiers, France, and Dipartimento di Elettronica ed Informatica, Università di Padova, Italy. Part of this work has been done while R. P. B. was visiting the Multimedia Laboratory of the Dipartimento di Elettronica ed Informatica, Università di Padova, Italy, and the Computer Graphics Group of IEI-CNR Pisa, Italy. Some of the results presented in this paper have been reported at the Eight International Workshop on Combinatorial Image Analysis, Philadelphia 2001. REFERENCES [1] Kaufman, A., Cohen, D. and Yagel, R. (1993) Volume graphics, Computer, 26(7), 51–64. [2] Herman, G. (1998) Geometry of Digital Spaces. Birkhäuser, Boston. 10 For instance, brick-built grids are used in some engineering constructions (e.g. in any brick-made wall) in order to make them as steady as possible. The Computer Journal Vol. 48 No. 2, 2005 198 V. E. Brimkov and R. P. Barneva [3] Johnson, E. G. and Rosenfeld, A. (1970) Geometrical operations on digital pictures. In Lipkin, B. S. and Posenfeld, A. (eds), Picture Processing and Psychopictorics, Academic Press, New York. [4] Kong, T. Y. and Rosenfeld, A. (1989) Digital topology: introduction and survey. Comput. Vision Graph., 48, 357–393. [5] Rosenfeld, A. (1998) Digital geometry—history and open problems. In Rosenfeld, A. and Sloboda, F. (eds), Advances in Digital and Computational Geometry. Springer Verlag, Singapore. [6] Voss, K. (1993) Discrete Images, Objects, and Functions in Zn . Springer Verlag, Berlin. [7] Barneva, R. P., Brimkov, V. E. and Nehlig, Ph. (2000) Thin discrete triangular meshes. Theor. Comp. Sci., 246(1–2), 73–105. [8] Rogers, C. A. (1964) Packing and Covering. Cambridge University Press, Cambridge, UK. [9] Gomes, J. and Velho, L. (1997) Image Processing for Computer Graphics. Springer Verlag, New York. [10] Sonka, M., Hlavac, V. and Boyle, R. (1998) Image Processing, Analysis, and Machine Vision (2nd edn), Brooks/Cole, USA. [11] Luszak, E. and Rosenfeld, A. (1968) Distance on a hexagonal grid. IEEE T. Comput., 25(5), 532–533. [12] Borgefors, G. (1984). Distance transformations in arbitrary dimensions. Comput. Vision Graph., 27, 321–345. [13] Borgefors, G. and Sanniti di Baja, G. (1988) Skeletonizing the distance transform on the hexagonal grid. In: Proc. 9th Int. Conf. on Pattern Recognition, Rome, Italy, 14–17 November, pp. 504–507. [14] Borgefors, G. (1989) Distance transformations on hexagonal grids. Pattern Recog. Lett., 9, 97–105. [15] Sternberg, S. R. (1985) An overview of image algebra and related architectures. In Levialdi, S. (ed), Integrated Technology for Parallel Image Processing, Academic Press, London. [16] Golay, M. J. E. (1969) Hexagonal parallel pattern transformations. IEEE T. Comput., 18(8), 733–740. [17] Deutsch, E. S. (1972) Thinning algorithms on rectangular, hexagonal, and triangular arrays. Commun. ACM, 15(9), 827–837. [18] Serra, J. (1982) Image Analysis and Mathematical Morphology. Academic Press, London. [19] Wuthrich, C. A. and Stucki, P. (1991) An algorithm comparison between square- and hexagonal-based grids. Graph. Model Im. Proc., 53(4), 324–339. [20] Yong-Kui, L. (1993) The generation of straight lines on hexagonal grids. Comput. Graph. Forum, 12(1), 21–25. [21] Yong-Kui, L. (1993) The generation of circular arcs on hexagonal grids. Comput. Graph. Forum, 12(1), 27–31. [22] Miller, E. G. (1999) Alternative tilings for improved surface area estimates by local counting algorithms. Comput. Vis. Image Und., 74, 193–211. [23] Garduno, E. (2002) Visualization and Extraction of Structural Components from Reconstructed Volumes. PhD Thesis, University of Pennsylvania, USA. [24] Saha, P. and Rosenfeld, A. (1998) Strongly normal sets of convex polygons or polyhedra. Pattern Recogn. Lett., 19, 1119–1124. [25] Cohen-Or, D. and Kaufman, A. (1997) 3D line voxelization and connectivity control. IEEE Comput. Graph., 17(6), 80–87. [26] Cohen-Or, D. and Kaufman, A. (1995) Fundamentals of surface voxelization, CVGIP: Graph. Model. Im. Proc., 57(6), 453–461. [27] Cohen-Or, D., Kaufman, A. and Kong, T. Y. (1996) On the soundness of surface voxelization. In Kong, T. Y. and Rosenfeld, A. (eds), Topological algorithms for digital image processing, North-Holland, pp. 181–204. [28] Andres, E. (2003) Discrete linear objects in dimension n: the standard model. Graph. Models, 65(1–3), 92–111. [29] Andres, E. (2001) Modélisation Analytique Discrète d’Objets Géométriques. Thèse de habilitation à diriger des recherches, Université de Poitiers, Poitiers, France. [30] Andres, E., Nehlig, P. and Françon, J. (1997) Tunnel-free supercover 3D polygons and polyhedra. In Fellner, D. and Szirmay-Kalos (eds), Eurographics ’97, 16(3), C3–C13, Blackwell Publishers, Oxford–Malden. [31] Brimkov, V. E., Barneva, R. and Nehlig, Ph. (2000) Minimally thin discrete triangulations. In Chen, M., Kaufman, A. and Yagel, R. (eds), Volume Graphics, Springer Verlag, London. [32] Brimkov, V. E. and Barneva, R. (2002) Graceful planes and lines. Theor. Comp. Sci., 283, 151–170. [33] Kong, T. Y. (2001) Digital topology. In Davis, L. S. (ed), Foundations of Image Understanding, Kluwer, Boston, MA. [34] Klette, R. and Rosenfeld, A. (2004) Digital geometry. Geometric methods for digital picture analysis. Morgan Kaufmann Publishers, San Francisco. [35] Rosenfeld, A. (1973) Arcs and curves in digital pictures. J. ACM, 18, 81–87. [36] Reveillès, J.-P. (1991) Géométrie Discrète, Calcul en Nombres Entiers et Algorithmique. Thèse d’État, Université Louis Pasteur, Strasbourg, France. [37] Françon, J. (1996) On recent trends in discrete geometry in computer imagery. In Proc. 6th Int. Workshop on Discrete Geometry for Computer Imagery, Lyon, 13–15 November, pp. 141–150, Lecture Notes in Computer Science No 1176, Springer-Verlag, Berlin. [38] Figueiredo, O., Reveillès, J.-P. (1995) A contribution to 3D digital lines. In Proc. 5th Int. Workshop on Discrete Geometry for Computer Imagery, Clermont-Ferrand, pp. 187–198, Springer-Verlag, Berlin. [39] Brimkov, V. E., Andres, E. and Barneva, R. (2002) Object discretizations in higher dimensions. Pattern Recogn. Lett., 23(6), 623–636. [40] Debled-Rennesson, I., Reveillès, J.-P. (1994) A new approach to digital lines. In Proc. SPIE’s Int. Symp. on Photonics for Industrial Applications “Vision Geometry 3,” SPIE-2356, Boston, USA, 31 October–4 November, pp. 1–11. [41] Andres, E., Acharya, R. and Sibata, C. (1997) The discrete analytical hyperplane. Graph. Model. Im. Proc., 59(5), 302–309. [42] Andres, E. and Jacob, M.-A. (1997). The discrete analytical hyperspheres. IEEE T. Vis. Comput. Gr., 3(1), 75–86. [43] Andres, E. (1994). Discrete circles, rings and spheres. Comput. Graph., 18(5), 695–706. The Computer Journal Vol. 48 No. 2, 2005 Analytical Honeycomb Geometry [44] Debled-Rennesson, I. and Reveillès, J.-P. (1994). A new approach to digital planes. In Proc. SPIE’s Int. Symp. on Photonics for Industrial Applications “Vision Geometry 3,” SPIE-2356, Boston, USA, 31 October–4 November, pp. 12–21. 199 [45] Stojmenovic, I. and Tosic, R. (1991) Digitization schemes and the recognition of digital straight lines. Hyperplanes and flats in arbitrary dimensions. Digital Geometry, Contemporary Math. Series, Amer. Math. Soc., Providence, RI, 119, 197–212. The Computer Journal Vol. 48 No. 2, 2005