Portability | portable |
---|---|

Stability | experimental |

Maintainer | amy@nualeargais.ie |

Safe Haskell | Safe-Inferred |

A module containing private `HexGrid`

internals. Most developers
should use `HexGrid`

instead. This module is subject to change
without notice.

- data HexDirection
- data UnboundedHexGrid = UnboundedHexGrid
- data HexHexGrid = HexHexGrid Int [(Int, Int)]
- hexHexGrid :: Int -> HexHexGrid
- data ParaHexGrid = ParaHexGrid (Int, Int) [(Int, Int)]
- paraHexGrid :: Int -> Int -> ParaHexGrid

# Documentation

data HexDirection Source

data UnboundedHexGrid Source

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.

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.

HexHexGrid Int [(Int, Int)] |

hexHexGrid :: Int -> HexHexGridSource

returns a grid of hexagonal shape, with
sides of length `hexHexGrid`

s`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.

data ParaHexGrid Source

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.

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

paraHexGrid :: Int -> Int -> ParaHexGridSource

returns a grid in the shape of a
parallelogram with `paraHexGrid`

r c`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.