Colour operations defined by the International Commission on Illumination (CIE).

- data Colour a
- cieXYZ :: Fractional a => a -> a -> a -> Colour a
- cieXYZView :: Fractional a => Colour a -> (a, a, a)
- luminance :: Fractional a => Colour a -> a
- toCIEXYZ :: Fractional a => Colour a -> (a, a, a)
- data Chromaticity a
- mkChromaticity :: Fractional a => a -> a -> Chromaticity a
- chromaCoords :: Fractional a => Chromaticity a -> (a, a, a)
- chromaX :: Fractional a => Chromaticity a -> a
- chromaY :: Fractional a => Chromaticity a -> a
- chromaZ :: Fractional a => Chromaticity a -> a
- chromaConvert :: (Fractional b, Real a) => Chromaticity a -> Chromaticity b
- chromaColour :: Fractional a => Chromaticity a -> a -> Colour a
- lightness :: (Ord a, Floating a) => Chromaticity a -> Colour a -> a
- cieLABView :: (Ord a, Floating a) => Chromaticity a -> Colour a -> (a, a, a)
- cieLAB :: (Ord a, Floating a) => Chromaticity a -> a -> a -> a -> Colour a

# Documentation

cieXYZ :: Fractional a => a -> a -> a -> Colour aSource

Construct a `Colour`

from XYZ coordinates for the 2° standard
(colourimetric) observer.

cieXYZView :: Fractional a => Colour a -> (a, a, a)Source

Returns the XYZ colour coordinates for the 2° standard (colourimetric) observer.

luminance :: Fractional a => Colour a -> aSource

Returns the Y colour coordinate (luminance) for the 2° standard (colourimetric) observer.

toCIEXYZ :: Fractional a => Colour a -> (a, a, a)Source

data Chromaticity a Source

AffineSpace Chromaticity | |

Eq a => Eq (Chromaticity a) | |

(Fractional a, Read a) => Read (Chromaticity a) | |

Fractional a => Show (Chromaticity a) |

mkChromaticity :: Fractional a => a -> a -> Chromaticity aSource

Constructs `Chromaticity`

from the CIE little *x*, little *y*
coordinates for the 2° standard (colourimetric) observer.

chromaCoords :: Fractional a => Chromaticity a -> (a, a, a)Source

Returns the CIE little *x*, little *y*, little *z* coordinates
for the 2° standard (colourimetric) observer.

chromaX :: Fractional a => Chromaticity a -> aSource

Returns the CIE little *x* coordinate
for the 2° standard (colourimetric) observer.

chromaY :: Fractional a => Chromaticity a -> aSource

Returns the CIE little *y* coordinate
for the 2° standard (colourimetric) observer.

chromaZ :: Fractional a => Chromaticity a -> aSource

Returns the CIE little *z* coordinate
for the 2° standard (colourimetric) observer.

chromaConvert :: (Fractional b, Real a) => Chromaticity a -> Chromaticity bSource

Change the type used to represent the chromaticity coordinates.

:: Fractional a | |

=> Chromaticity a | |

-> a | |

-> Colour a |

Constructs a colour from the given `Chromaticity`

and `luminance`

.

:: (Ord a, Floating a) | |

=> Chromaticity a | White point |

-> Colour a | |

-> a |

Returns the lightness of a colour with respect to a given white point. Lightness is a perceptually uniform measure.

:: (Ord a, Floating a) | |

=> Chromaticity a | White point |

-> Colour a | |

-> (a, a, a) |

Returns the CIELAB coordinates of a colour, which is a
perceptually uniform colour space.
The first coordinate is `lightness`

.
If you don't know what white point to use, use
`Data.Colour.CIE.Illuminant.d65`

.

:: (Ord a, Floating a) | |

=> Chromaticity a | White point |

-> a | L* coordinate (lightness) |

-> a | a* coordinate |

-> a | b* coordinate |

-> Colour a |

Returns the colour for given CIELAB coordinates, which is a
perceptually uniform colour space.
If you don't know what white point to use, use
`Data.Colour.CIE.Illuminant.d65`

.