miniBill / elm-oklch / Color.Oklab

Types


type alias Oklab =
{ lightness : Basics.Float
, a : Basics.Float
, b : Basics.Float
, alpha : Basics.Float 
}

A color in the Oklab space.

Creating colors

oklab : Basics.Float -> Basics.Float -> Basics.Float -> Oklab

Builds a color from its lightness, a (green/red) and b (blue/yellow) components.

oklaba : Basics.Float -> Basics.Float -> Basics.Float -> Basics.Float -> Oklab

Builds a color from its lightness, a (green/red), b (blue/yellow) and alpha components.

Conversions

fromColor : Color -> Oklab

Convert a color from Color (sRGB) to Oklab.

toColor : Oklab -> Color

Convert a color from Oklab to Color (sRGB).

fromLinearRGB : Color.LinearRGB.LinearRGB -> Oklab

Converts a color from linear RGB (red, green, blue) to Oklab.

The components should be between 0.0 and 1.0 (inclusive).

toLinearRGB : Oklab -> Color.LinearRGB.LinearRGB

Converts a color from Oklab to linear RGB (red, green, blue).

The output components get clipped at 0 to avoid NaNs.