Copyright | (c) Amy de Buitléir 2012-2019 |
---|---|
License | BSD-style |
Maintainer | amy@nualeargais.ie |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
A module containing private TriGrid
internals. Most developers
should use TriGrid
instead. This module is subject to change
without notice.
Synopsis
- data TriDirection
- data UnboundedTriGrid = UnboundedTriGrid
- triZ :: Int -> Int -> Int
- data TriTriGrid = TriTriGrid Int [(Int, Int)]
- inTriTriGrid :: (Int, Int) -> Int -> Bool
- triTriGrid :: Int -> TriTriGrid
- data ParaTriGrid = ParaTriGrid (Int, Int) [(Int, Int)]
- paraTriGrid :: Int -> Int -> ParaTriGrid
- parallelogramIndices :: Int -> Int -> [(Int, Int)]
- data RectTriGrid = RectTriGrid (Int, Int) [(Int, Int)]
- rectTriGrid :: Int -> Int -> RectTriGrid
- data TorTriGrid = TorTriGrid (Int, Int) [(Int, Int)]
- torTriGrid :: Int -> Int -> TorTriGrid
- data YCylTriGrid = YCylTriGrid (Int, Int) [(Int, Int)]
- yCylTriGrid :: Int -> Int -> YCylTriGrid
- data XCylTriGrid = XCylTriGrid (Int, Int) [(Int, Int)]
- xCylTriGrid :: Int -> Int -> XCylTriGrid
Documentation
data TriDirection Source #
Instances
data UnboundedTriGrid Source #
An unbounded grid with triangular tiles. The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.
Instances
triZ :: Int -> Int -> Int Source #
For triangular tiles, it is convenient to define a third component z.
data TriTriGrid Source #
A triangular grid with triangular tiles. The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.
TriTriGrid Int [(Int, Int)] |
Instances
triTriGrid :: Int -> TriTriGrid Source #
returns a triangular grid with sides of
length triTriGrid
ss
, using triangular tiles. If s
is nonnegative, the
resulting grid will have s^2
tiles. Otherwise, the resulting grid
will be null and the list of indices will be null.
data ParaTriGrid Source #
A Parallelogrammatical grid with triangular tiles. The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.
ParaTriGrid (Int, Int) [(Int, Int)] |
Instances
paraTriGrid :: Int -> Int -> ParaTriGrid Source #
returns a grid in the shape of a
parallelogram with paraTriGrid
r cr
rows and c
columns, using triangular
tiles. If r
and c
are both nonnegative, the resulting grid will
have 2*r*c
tiles. Otherwise, the resulting grid will be null and
the list of indices will be null.
data RectTriGrid Source #
A rectangular grid with triangular tiles. The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.
RectTriGrid (Int, Int) [(Int, Int)] |
Instances
rectTriGrid :: Int -> Int -> RectTriGrid Source #
returns a grid in the shape of a
rectangle (with jagged edges) that has rectTriGrid
r cr
rows and c
columns,
using triangular tiles. If r
and c
are both nonnegative, the
resulting grid will have 2*r*c
tiles. Otherwise, the resulting grid will be null and
the list of indices will be null.
data TorTriGrid Source #
A toroidal grid with triangular tiles. The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.
TorTriGrid (Int, Int) [(Int, Int)] |
Instances
torTriGrid :: Int -> Int -> TorTriGrid Source #
returns a toroidal grid with torTriGrid
r cr
rows and c
columns, using triangular tiles. The indexing method is the same as
for ParaTriGrid
. If r
and c
are both nonnegative, the
resulting grid will have 2*r*c
tiles. Otherwise, the resulting
grid will be null and the list of indices will be null.
data YCylTriGrid Source #
A cylindrical grid with triangular tiles, where the cylinder is along the y-axis. The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.
YCylTriGrid (Int, Int) [(Int, Int)] |
Instances
yCylTriGrid :: Int -> Int -> YCylTriGrid Source #
returns a cylindrical grid with yCylTriGrid
r cr
rows and
c
columns, using triangular tiles, where the cylinder is along
the y-axis. The indexing method is the same as for ParaTriGrid
.
If r
and c
are both nonnegative, the resulting grid will have
2*r*c
tiles. Otherwise, the resulting grid will be null and the
list of indices will be null.
data XCylTriGrid Source #
A cylindrical grid with triangular tiles, where the cylinder is along the x-axis. The grid and its indexing scheme are illustrated in the user guide, available at https://github.com/mhwombat/grid/wiki.
XCylTriGrid (Int, Int) [(Int, Int)] |
Instances
xCylTriGrid :: Int -> Int -> XCylTriGrid Source #
returns a cylindrical grid with xCylTriGrid
r cr
rows and
c
columns, using triangular tiles, where the cylinder is along
the y-axis. The indexing method is the same as for ParaTriGrid
.
If r
and c
are both nonnegative, the resulting grid will have
2*r*c
tiles. Otherwise, the resulting grid will be null and the
list of indices will be null.