prizm-0.3.0.0: src/Data/Prizm/Color/CIE.hs
module Data.Prizm.Color.CIE
(
v1
, v2
, refWhite
, transformXYZ
) where
-- | exact rational of the "0.008856" value.
v1 :: Double
v1 = (6/29) ** 3
-- | exact rational of the "7.787" value.
v2 :: Double
v2 = 1/3 * ((29/6) ** 2)
-- 2deg observer, d65 illuminant
-- [x,y,z]
refWhite :: [Double]
refWhite = [95.047, 100.000, 108.883]
transformXYZ :: Double -> Double
transformXYZ v | cv > v1 = cv
| otherwise = (v - 16 / 116) / v2
where cv = v**3