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

Portabilityportable
Stabilityexperimental
Maintaineramy@nualeargais.ie
Safe HaskellSafe-Inferred

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

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.

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.

rectOctGrid :: Int -> Int -> RectOctGridSource

rectOctGrid r c produces a rectangular grid with r 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.

torOctGrid :: Int -> Int -> TorOctGridSource

torOctGrid r c returns a toroidal grid with r 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.