grid-7.6.5: Tools for working with regular grids (graphs, lattices).

Copyright (c) Amy de Buitléir 2012-2014 BSD-style amy@nualeargais.ie experimental portable Safe-Inferred Haskell98

Math.Geometry.Grid.HexagonalInternal

Description

A module containing private `HexGrid` internals. Most developers should use `HexGrid` instead. This module is subject to change without notice.

Synopsis

# Documentation

Constructors

 West Northwest Northeast East Southeast Southwest

Instances

 Eq HexDirection Show HexDirection Generic HexDirection type Rep HexDirection

An unbounded grid with hexagonal tiles The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.

Constructors

 UnboundedHexGrid

Instances

 Eq UnboundedHexGrid Show UnboundedHexGrid Generic UnboundedHexGrid Grid UnboundedHexGrid type Rep UnboundedHexGrid type Index UnboundedHexGrid = (Int, Int) type Direction UnboundedHexGrid = HexDirection

data HexHexGrid Source

A hexagonal grid with hexagonal tiles The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.

Constructors

 HexHexGrid Int [(Int, Int)]

Instances

 Eq HexHexGrid Show HexHexGrid Generic HexHexGrid BoundedGrid HexHexGrid FiniteGrid HexHexGrid Grid HexHexGrid type Rep HexHexGrid type Size HexHexGrid = Int type Index HexHexGrid = (Int, Int) type Direction HexHexGrid = HexDirection

`hexHexGrid s` returns a grid of hexagonal shape, with sides of length `s`, using hexagonal tiles. If `s` is nonnegative, the resulting grid will have `3*s*(s-1) + 1` tiles. Otherwise, the resulting grid will be null and the list of indices will be null.

A parallelogramatical grid with hexagonal tiles The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.

Constructors

 ParaHexGrid (Int, Int) [(Int, Int)]

Instances

 Eq ParaHexGrid Show ParaHexGrid Generic ParaHexGrid BoundedGrid ParaHexGrid FiniteGrid ParaHexGrid Grid ParaHexGrid type Rep ParaHexGrid type Size ParaHexGrid = (Int, Int) type Index ParaHexGrid = (Int, Int) type Direction ParaHexGrid = HexDirection

`paraHexGrid r c` returns a grid in the shape of a parallelogram with `r` rows and `c` columns, using hexagonal tiles. If `r` and `c` are both nonnegative, the resulting grid will have `r*c` tiles. Otherwise, the resulting grid will be null and the list of indices will be null.