| Copyright | (c) 2017 Jeffrey Rosenbluth |
|---|---|
| License | BSD-style (see LICENSE) |
| Maintainer | jeffrey.rosenbluth@gmail.com |
| Safe Haskell | None |
| Language | Haskell2010 |
Types
Contents
Description
Types and classes for creating symmtery images using the domain coloring algortihm.

- data ColorSource a p
- data Coef a = Coef {}
- data Options a = Options {}
- defaultOpts :: Options Double
- data SymmetryGroup a
- data PreProcess
- data WPtype a
- = Plain
- | Morph a
- | Blend (SymmetryGroup a)
- data Wallpaper a = Wallpaper {}
- data Rosette a = Rosette {}
- data Function a = Fn {}
- type Recipe a = Complex a -> Complex a
- class Invertible a where
- class BlackWhite a where
Documentation
data ColorSource a p Source #
A color source can be either a JuicyPixels image or a function from a complex number to a pixel.
The coefficents used to build a symmetry recipe, C_nm. A coeffient is a doubley indexed complex number
Constructors
| Coef | |
Settings for the size, repeat lenght, and scaling factor for creating a a domain coloring.
Constructors
| Options | |
defaultOpts :: Options Double Source #
The defaul Options creates a square 750 x 750 pixel image,
with a repeat of 150 pixels and scales the pixel lookup coordintes
by 1/2.
data SymmetryGroup a Source #
The 17 Wallpaper groups and 7 Frieze groups.
Constructors
| P1 a a | Arguments are ξ and η. The lattice vectors are 1 and ξ + i η. |
| P2 a a | Arguments are ξ and η. The lattice vectors are 1 and ξ + i η. |
| CM a | The argument is b with lattice vectors 1/2 +- ib. |
| CMM a | The argument is b with lattice vectors 1/2 +- ib. |
| PM a | The argument is L with lattice vectors 1 and iL. |
| PG a | The argument is L with lattice vectors 1 and iL. |
| PMM a | The argument is L with lattice vectors 1 and iL. |
| PMG a | The argument is L with lattice vectors 1 and iL. |
| PGG a | The argument is L with lattice vectors 1 and iL. |
| P4 | |
| P4M | |
| P4G | |
| P3 | |
| P31M | |
| P3M1 | |
| P6 | |
| P6M | |
| P111 | |
| P211 | |
| P1M1 | |
| P11M | |
| P11G | |
| P2MM | |
| P2MG |
Instances
| Functor SymmetryGroup Source # | |
| Eq a => Eq (SymmetryGroup a) Source # | |
| Show a => Show (SymmetryGroup a) Source # | |
| FromJSON a => FromJSON (SymmetryGroup a) Source # | |
The type of wallpaper to produce.
Constructors
| Plain | |
| Morph a | |
| Blend (SymmetryGroup a) |
Settings for creating a wallpaper.
Constructors
| Wallpaper | |
Settings for creating a rosette.
Constructors
| Rosette | |
Settings for creating a phase portrait.
Constructors
| Fn | |
type Recipe a = Complex a -> Complex a Source #
A Recipe is a mapping from the complex plange to the complex plane.
class BlackWhite a where Source #
Pixels that can be set to black and white.