| Copyright | (c) Amy de Buitléir 2012-2017 |
|---|---|
| License | BSD-style |
| Maintainer | amy@nualeargais.ie |
| Stability | experimental |
| Portability | portable |
| Safe Haskell | Safe |
| Language | Haskell2010 |
Math.Geometry.Grid.Octagonal
Contents
Description
A regular arrangement of octagonal tiles.
Octagons won't tile a regular plane (there will be diamond-shaped
gaps between the tiles), but they will tile a hyperbolic plane.
(Alternatively, you can think of these as squares on a board game
where diagonal moves are allowed.)
The userguide, with illustrations, is available at
https://github.com/mhwombat/grid/wiki.
Also see Math.Geometry.Grid for examples of how to use this class.
Synopsis
- data UnboundedOctGrid = UnboundedOctGrid
- data RectOctGrid
- rectOctGrid :: Int -> Int -> RectOctGrid
- data TorOctGrid
- torOctGrid :: Int -> Int -> TorOctGrid
Unbounded grid with octagonal tiles
data UnboundedOctGrid Source #
An unbounded grid with octagonal tiles. The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.
Constructors
| UnboundedOctGrid |
Instances
Rectangular grid with octagonal tiles
data RectOctGrid Source #
A rectangular grid with octagonal tiles. The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.
Instances
rectOctGrid :: Int -> Int -> RectOctGrid Source #
produces a rectangular grid with rectOctGrid r cr rows
and c columns, using octagonal 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.
Toroidal grid with octagonal tiles
data TorOctGrid Source #
A toroidal grid with octagonal tiles. The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.
Instances
torOctGrid :: Int -> Int -> TorOctGrid Source #
returns a toroidal grid with torOctGrid r cr
rows and c columns, using octagonal 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.