colour-2.3.4: A model for human colour/color perception

Safe HaskellSafe
LanguageHaskell98

Data.Colour.CIE

Contents

Description

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

Synopsis

Documentation

data Colour a Source #

This type represents the human preception of colour. The a parameter is a numeric type used internally for the representation.

The Monoid instance allows one to add colours, but beware that adding colours can take you out of gamut. Consider using blend whenever possible.

Instances

ColourOps Colour Source # 

Methods

over :: Num a => AlphaColour a -> Colour a -> Colour a Source #

darken :: Num a => a -> Colour a -> Colour a Source #

AffineSpace Colour Source # 

Methods

affineCombo :: Num a => [(a, Colour a)] -> Colour a -> Colour a Source #

Eq a => Eq (Colour a) Source # 

Methods

(==) :: Colour a -> Colour a -> Bool #

(/=) :: Colour a -> Colour a -> Bool #

Num a => Semigroup (Colour a) Source # 

Methods

(<>) :: Colour a -> Colour a -> Colour a #

sconcat :: NonEmpty (Colour a) -> Colour a #

stimes :: Integral b => b -> Colour a -> Colour a #

Num a => Monoid (Colour a) Source # 

Methods

mempty :: Colour a #

mappend :: Colour a -> Colour a -> Colour a #

mconcat :: [Colour a] -> Colour a #

cieXYZ :: Fractional a => a -> a -> a -> Colour a Source #

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 -> a Source #

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

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

Deprecated: toCIEXYZ has been renamed cieXYZView

mkChromaticity :: Fractional a => a -> a -> Chromaticity a Source #

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 -> a Source #

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

chromaY :: Fractional a => Chromaticity a -> a Source #

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

chromaZ :: Fractional a => Chromaticity a -> a Source #

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

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

Change the type used to represent the chromaticity coordinates.

chromaColour Source #

Arguments

:: Fractional a 
=> Chromaticity a 
-> a

luminance

-> Colour a 

Constructs a colour from the given Chromaticity and luminance.

lightness Source #

Arguments

:: (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.

cieLABView Source #

Arguments

:: (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 d65.

cieLAB Source #

Arguments

:: (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 d65.

Orphan instances