|
|
|
Description |
This module provides Colour8, which stores RGB (red, green, blue)
colour values where each channel is a Word8. It also provides
arithmetic over such colours, and a few predefined colours.
It is the general intention that "most" work will be done with
Data.Colour.Double, with values converted to Colour8 only
as a final step. However, full arithmetic is supported anyway,
in case anybody wants to work that way. It is slightly less
efficient and flexible, however.
|
|
Synopsis |
|
|
|
Documentation |
|
|
The Colour type. Stores a red, a green and a blue component as
strict, unboxed Word8 values. (So it should be quite efficient
in time and space.) Also provides various class instances for
arithmetic, etc.
Note that 0x00 is assumed to mean zero, and 0xFF to mean one.
That means that (*) is slightly slower than you might expect
due to the extra steps required for renormalisation; (+) and
(-) are still efficient, however.
| Constructors | | Instances | |
|
|
|
Apply a function to every channel of a Colour8. (Mostly used
internally; exposed here in case it might be useful.)
|
|
|
The colour equivilent of Data.List.zipWith. (Mostly used
internally; exposed here in case it might be useful.)
|
|
|
Use a function to fold the three values in a Colour8 into
a single value. No particular order of application is promised.
|
|
|
Convert a Word8 into a shade of grey.
|
|
|
Scale a Colour8 by the specified amount. Recall that 0x00
means zero, and 0xFF means one. This means that it is impossible
to make a colour brighter, only darker. It also means this
operation is modestly inefficient due to the renormalisation
steps.
|
|
|
Constant: Black.
|
|
|
Constant: Red.
|
|
|
Constant: Yellow.
|
|
|
Constant: Green.
|
|
|
Constant: Cyan.
|
|
|
Constant: Blue.
|
|
|
Constant: Magenta.
|
|
|
Constant: White.
|
|
Produced by Haddock version 2.4.2 |