Quasi-Regular Tessellation of Hexagons

Quasi-Regular Tessellation of Hexagons

Journal of Computing and Information Technology - CIT 9, 2001, 3, 227–232 227 Quasi-regular Tessellation of Hexagons Branko Kauciˇ cˇ1 and Borut Zalikˇ 2 1 PEF, University of Maribor, Slovenia 2 FERI, University of Maribor, Slovenia An algorithm for quasi-regular hexagon tessellation of discussed. In the last, fifth section, the paper is uniformly distributed points is presented. At first, the summarised. needed definitions and notations are introduced. Then, the algorithm for the tessellation, based on “laying-down the sticks” analogy, is given. At the end, the estimation of the algorithm time complexity is done. 2. Tessellation Keywords: tessellation, gridded spatial data, computa- tional geometry In general, the tessellation is divided into the following groups: a regular tessellation, where the sides of tiles are all of the same length. Only three 1. Introduction possible shapes of tiles exist: triangles, squa- res, and hexagons, where triangular and squa- A tessellation is a process that surrounds us ev- red tiles are usually used in practice. ery day. It is an old problem in mathematics and a quasi-regular tessellation, where all tiles in computational geometry Preparata, 1985 . are of the same shape, but the lengths of the Several tessellations are known, although only sides are not equal. some of them are interesting in the computa- a semi-regular tessellation, where several tional geometry. The main aim of the tessella- regular shapes are combined together. tion is to tile or divide the space of the inter- est into smaller parts tiles upon which other a non-regular tessellation, where the tiles problems could be solved more easily e.g. ge- have different lengths of their sides, and are ometric search, visualising only parts of the in- differently shaped. The best known tessella- terest. tion in practice are Voronoi diagrams Mul- muley, 1994; Preparata, 1985, although In the paper, a new algorithm for the tessella- in theory different ideas exist Armstrong, tion of hexagons is presented. We believe that 1988; Farmer, 1996; Wells, 1991. tessellation of hexagons is more efficient than other tessellations for some applications on dig- Tessellations of squares are simple, because there is no need to apply any rotation to com- ital elevation models DEMs , as for example a fly-through problem. We will restrict ourselves pletely cover the plane. On the other side, tes- to quasi-regular tessellation only. sellations of triangles produce gaps if they are not rotated. The same is true for hexagons. The paper is divided into five sections. At the beginning, a tessellation of hexagons is ex- plained. The algorithm of the tessellation is 2.1. Tessellation of Hexagons given in the next section, together with the de- tails of the input data. In the fourth section, the As stated before, the paper considers a quasi- idea of obtaining optimal tessellation and the regular tessellation of hexagons. The tessella- worst case time complexity of the algorithm is tion of hexagons has some advantages against 228 Quasi-regular Tessellation of Hexagons Fig. 1. Examples of tessellations. other two regular tessellations Kauciˇ c,ˇ 2001a . lation of the rectangular area with one of many Each vertex of the tile has the smallest number optimal solutions b . An optimal solution po- of neighbouring tiles, each tile has the smallest sition of the starting point can be computed in number of neighbouring tiles, the neighbour- a constant time. On the right side c , more hood of the tile is determined only with edges complex example with a hole is given. An op- of the tile and not with the combination of ver- timal solution cannot be found so simply as in tices and edges, and the number of tiles in the previous example. tessellation is the smallest under certain condi- tions. So far, nothing was said about the representa- tion of an area. In the continuation, only points Further, at the tessellation of hexagons, the fol- arranged in the regular grid are considered. It lowing interesting questions occur: With the turned out that the regular tessellation does not given size of a hexagon, how an arbitrary area give the optimal results in some applications can be tessellated? What is the minimum num- e.g. fly-through problem . More suitable are ber of tiles? How must the area be tessellated quasi-regular hexagons, where some points of to reach the minimum? How many tiles are en- the regular grid lie on the border of the tile tirely in the area, and how many of them cover Fig. 2 a . the area only partially? With a given point in the tessellated area, which cell contains it? In Points located on edges, splitting two neigh- general, answers to these questions especially bouring tiles, are doubled in both tiles. In this to the second and third present a hard problem. manner, the direct connections between bor- To illustrate the difficulty of given questions and der points of neighbouring tiles exist Kauciˇ c,ˇ the need for optimal tessellation, Fig. 1 shows 2001a. Fig. 2 b shows how the dimension of two examples of tessellations of an arbitrary the quasi-regular hexagon tile is defined. The area. values a and b can take any positive integer num- ber, where a represents the number of points The left side of the figure a shows the tessel- in upright side, and b is the number of points on the slanted side. However, to get the best approximation of the regular tessellation, b is a p determined by equation b ROUND . 2 3. Algorithm of the Tessellation The motivation for the presented tessellation al- gorithm was a database of terrain elevations. Regular grids are usually in the form of a rect- angle, while in our case the border of the regular Fig. 2. a quasi-regular hexagons, b the hexagon tile. grid represents the border of the land, which is Quasi-regular Tessellation of Hexagons 229 AL of arrays” s of data. At the second level, AL contains all points of the corresponding col- umn. Each element of AL represents a connected set of points and consists of a starting point, an ending point, and elevations. The starting point represents a vertical index of the first point in the connected set of points, and the ending point represents a vertical index of the last point in the same set of points. The most upper points in the area have their vertical index set to 0, and empty columns that represent a region without points have NULL pointers in ML. The algorithm for the tessellation of hexagons works with a sweep traversal over a tessellated area and in each step behaves as if the sticks were being laid-down. Each sweep step is asso- ciated with a column in the input data structure. For each column, the algorithm lays-down the sticks of appropriate length under each other until the end of points in the current column is Fig. 3. a Input data structure. reached. Let us observe Fig. 3 b . Suppose, there are enough points in the first column to lay-down far from being a rectangle. The data was then at least two consecutive tiles. The first starting converted into a more appropriate form. Data point in the first AL marked with an arrow is structure consisting of a list of lists as shown on taken as the starting point of the tessellation. Fig. 3 a is used. The upper stick used is shorter than the lower ML Ss The “main list” stores pointers to the “lists stick we name them “short stick” and Fig. 3. b Division of cells on short and large. 230 Quasi-regular Tessellation of Hexagons Ls “large stick” . Accordingly to that, are the TS hexagons in the same row of type short ,or TL type large . An additional array Fig. 3 b is used to control the tessellation process, named CCL “control cell list” . It contains identifiers of tiles and the information about the row type TS TL TS or . All even entries are of type and the odd entries are of type TN. Ls At each step of the algorithm, Ss and have to be updated. The update depends on the state of the tessellation process. Four states are possible Fig. 4 : CCL left side, where all entries in , repre- senting the cells of TS are removed. Some of them are replaced with new identifiers in the next step. Ss slanted-up, where the length of in- creases by 2, and the length of Ls decreases by the same value. In this state, the tessella- Fig. 4. Four states of the tessellation process. tion process stays at most b 1 times, except if the end of ML is reached. peak is similar to the first state, but this time Within those states, an additional value status is it is applied on the cells of TL. updated. As shown in Fig. 4, it starts with value slanted-down, where the opposite actions of 0 and increases by 1 in state “slanted-up”, while the state “slanted-up” are performed. in the state “slanted-down” it decreases by 1. LDS ALGORITHM: TS laydown current stick within Ss input : a, b, ML f COMPUTEnext stick //initialization if CONTAINSCCLindex 1 then CCL Ss Ls UPDATECCLnew identifier COMPUTEzero status of ML while not end endif similar to TS //slanted-up LS end of ML COMPUTE while status b 1 and not type index COMPUTEindex boundary type endwhile COMPUTESs Ls if start boundary then status if CONTAINSCCLindex 1 then endwhile identifier UPDATECCLnew //peak of ML endif if not end then of TL endif REMOVECCLcells if CONTAINSCCLindex then endif identifier UPDATECCLnew //slanted-down to slantedup endif similar //laying-down the sticks //left side COMPUTEfirst stick similar to peak not reached while bottom endwhile case type of g Fig.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    6 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us