Copyright | (c) Amy de Buitléir 2012-2015 |
---|---|

License | BSD-style |

Maintainer | amy@nualeargais.ie |

Stability | experimental |

Portability | portable |

Safe Haskell | Safe-Inferred |

Language | Haskell98 |

Same as

, except the grids are
oriented so that the flat part of the hexagonal tiles is on the top.
The userguide, with illustrations, is available at
https://github.com/mhwombat/grid/wiki.
Also see `Hexagonal`

`Math.Geometry.Grid`

for examples of how to use this class.

- data UnboundedHexGrid = UnboundedHexGrid
- data HexHexGrid
- hexHexGrid :: Int -> HexHexGrid
- data RectHexGrid
- rectHexGrid :: Int -> Int -> RectHexGrid

# Unbounded grid with hexagonal tiles

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.

# Hexagonal grid with hexagonal tiles

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.

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 :: Int -> HexHexGrid Source

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.

# Rectangular grid with hexagonal tiles

data RectHexGrid Source

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

Eq RectHexGrid | |

Show RectHexGrid | |

Generic RectHexGrid | |

BoundedGrid RectHexGrid | |

FiniteGrid RectHexGrid | |

Grid RectHexGrid | |

type Rep RectHexGrid | |

type Size RectHexGrid = (Int, Int) | |

type Index RectHexGrid = (Int, Int) | |

type Direction RectHexGrid = HexDirection |

rectHexGrid :: Int -> Int -> RectHexGrid Source

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

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.