Copyright | (c) Amy de Buitléir 2012-2014 |
---|---|
License | BSD-style |
Maintainer | amy@nualeargais.ie |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell98 |
A module containing private TriGrid
internals. Most developers
should use TriGrid
instead. This module is subject to change
without notice.
- 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
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.
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)] |
Eq TriTriGrid | |
Show TriTriGrid | |
Generic TriTriGrid | |
BoundedGrid TriTriGrid | |
FiniteGrid TriTriGrid | |
Grid TriTriGrid | |
type Rep TriTriGrid | |
type Size TriTriGrid = Int | |
type Index TriTriGrid = (Int, Int) | |
type Direction TriTriGrid = TriDirection |
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)] |
Eq ParaTriGrid | |
Show ParaTriGrid | |
Generic ParaTriGrid | |
BoundedGrid ParaTriGrid | |
FiniteGrid ParaTriGrid | |
Grid ParaTriGrid | |
type Rep ParaTriGrid | |
type Size ParaTriGrid = (Int, Int) | |
type Index ParaTriGrid = (Int, Int) | |
type Direction ParaTriGrid = TriDirection |
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)] |
Eq RectTriGrid | |
Show RectTriGrid | |
Generic RectTriGrid | |
BoundedGrid RectTriGrid | |
FiniteGrid RectTriGrid | |
Grid RectTriGrid | |
type Rep RectTriGrid | |
type Size RectTriGrid = (Int, Int) | |
type Index RectTriGrid = (Int, Int) | |
type Direction RectTriGrid = TriDirection |
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)] |
Eq TorTriGrid | |
Show TorTriGrid | |
Generic TorTriGrid | |
WrappedGrid TorTriGrid | |
FiniteGrid TorTriGrid | |
Grid TorTriGrid | |
type Rep TorTriGrid | |
type Size TorTriGrid = (Int, Int) | |
type Index TorTriGrid = (Int, Int) | |
type Direction TorTriGrid = TriDirection |
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)] |
Eq YCylTriGrid | |
Show YCylTriGrid | |
Generic YCylTriGrid | |
WrappedGrid YCylTriGrid | |
FiniteGrid YCylTriGrid | |
Grid YCylTriGrid | |
type Rep YCylTriGrid | |
type Size YCylTriGrid = (Int, Int) | |
type Index YCylTriGrid = (Int, Int) | |
type Direction YCylTriGrid = TriDirection |
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)] |
Eq XCylTriGrid | |
Show XCylTriGrid | |
Generic XCylTriGrid | |
WrappedGrid XCylTriGrid | |
FiniteGrid XCylTriGrid | |
Grid XCylTriGrid | |
type Rep XCylTriGrid | |
type Size XCylTriGrid = (Int, Int) | |
type Index XCylTriGrid = (Int, Int) | |
type Direction XCylTriGrid = TriDirection |
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.