OklabColor class
A color in the Oklab color space.
The Oklab color space contains channels for lightness, a (red and green opponent values), and b (blue and yellow opponent values.)
- Implemented types
- Available extensions
Constructors
- OklabColor(double lightness, double a, double b, [int alpha = 255])
-
A color in the Oklab color space.
const
- OklabColor.from(ColorModel color)
-
Constructs an OklabColor from
color
.factory - OklabColor.fromColor(Color color)
-
Constructs an OklabColor from
color
.factory - OklabColor.fromHex(String hex)
-
Constructs an OklabColor from a RGB
hex
color.factory -
OklabColor.fromList(List<
double> values) -
Constructs an OklabColor from a list of
lab
values.factory - OklabColor.random({double minLightness = 0.0, double maxLightness = 1.0, double minA = 0.0, double maxA = 1.0, double minB = 0.0, double maxB = 1.0, int? seed})
-
Generates an OklabColor at random.
factory
Properties
- a → double
-
The red to green opponent color value.
finalinherited
- alpha → int
-
The alpha value of this color.
finalinherited
- b → double
-
The yellow to blue opponent color value.
finalinherited
- blue → int
-
The blue value of this color.
no setterinherited
- chroma → double
-
Calculates a value representing this color's lightness on a linear scale.
no setterinherited
- green → int
-
The green value of this color.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- hex → String
-
Returns
this
as a hexidecimal string.no setterinherited - hue → num
-
Gets the hue value of this color.
no setterinherited
- inverted → OklabColor
-
Inverts the values of this
ColorModel
, excluding alpha, in its own color space.no setter - isBlack → bool
-
Returns
true
if this color is pure black.no setterinherited - isMonochromatic → bool
-
Returns
true
if this color is monochromatic.no setterinherited - isWhite → bool
-
Returns
true
if this color is pure white.no setterinherited - lightness → double
-
Lightness represents the black to white value.
finalinherited
- opacity → double
-
The
alpha
value as a double normalized to a0.0
to1.0
range.no setterinherited - opposite → OklabColor
-
Returns the color with the hue opposite of this colors'.
no setter
- red → int
-
The red value of this color.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- saturation → num
-
The saturation value of this color. Color spaces without a saturation
value will be converted to HSL to retrieve the value.
no setterinherited
- value → int
-
A 32 bit value representing this color.
no setteroverride
Methods
-
castTo(
ColorModel other) → ColorModel -
Converts this color to
other
's color space.inherited -
computeLuminance(
) → double -
Returns a brightness value between 0 for darkest and 1 for lightest.
inherited
-
convert(
ColorModel other) → OklabColor -
Converts
other
to this color's color space. -
cooler(
num amount, {bool relative = true}) → OklabColor -
Adjusts the hue of this color by
amount
towards270
degrees, capping the value at270
. -
copyWith(
{num? lightness, num? a, num? b, int? alpha}) → OklabColor - Returns a copy of this color modified with the provided values.
-
distanceTo(
ColorModel color) → double -
Returns the distance between
this
color's hue andcolor
's hue in degrees.inherited -
equals(
ColorModel color) → bool -
Compares colors in the RGB color space.
inherited
-
interpolate(
ColorModel end, double step) → OklabColor -
Interpolates to
step
betweenthis
andend
. -
lerpTo(
ColorModel color, int steps, {ColorSpace? colorSpace, bool excludeOriginalColors = false}) → List< OklabColor> -
Returns the interpolated
steps
between this color andcolor
. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
rotateHue(
num amount) → OklabColor -
Rotates the hue of this color by
amount
in degrees. -
rotateHueRad(
double amount) → OklabColor -
Rotates the hue of this color by
amount
in radians. -
toCmykColor(
) → CmykColor -
Converts
this
to the CMYK color space.inherited -
toHsbColor(
) → HsbColor -
Converts
this
to the HSV color space.inherited -
toHsiColor(
) → HsiColor -
Converts
this
to the HSI color space.inherited -
toHslColor(
) → HslColor -
Converts
this
to the HSL color space.inherited -
toHspColor(
) → HspColor -
Converts
this
to the HSP color space.inherited -
toLabColor(
) → LabColor -
Converts
this
to the LAB color space.inherited -
toList(
) → List< double> -
Returns a fixed-length list containing the
lightness
,a
, andb
values, in that order.inherited -
toListWithAlpha(
) → List< num> -
Returns a fixed-length list containing the
lightness
,a
,b
, andalpha
values, in that order.inherited -
toOklabColor(
) → OklabColor -
Converts
this
to the Oklab color space. -
toRgbColor(
) → RgbColor -
Converts
this
to the RGB color space.inherited -
toString(
) → String -
A string representation of this object.
inherited
-
toXyzColor(
) → XyzColor -
Converts
this
to the XYZ color space.inherited -
warmer(
num amount, {bool relative = true}) → OklabColor -
Adjusts the hue of this color by
amount
towards90
degrees, capping the value at90
. -
withAlpha(
int alpha) → OklabColor -
Returns this
OklabColor
modified with the providedalpha
value. -
withBlue(
num blue) → OklabColor -
Returns a new color that matches this color with the blue channel replaced
with
b
(which ranges from 0 to 255).override -
withChroma(
double chroma) → OklabColor -
Converts this color to the Oklab color space, calculates and
applies a new lightness value from the proivded
chroma
value, and converts it back to the original color space. -
withGreen(
num green) → OklabColor -
Returns a new color that matches this color with the green channel
replaced with
g
(which ranges from 0 to 255).override -
withHue(
num hue) → OklabColor -
Returns this LabColor modified with the provided
hue
value. -
withOpacity(
double opacity) → OklabColor -
Returns this
ColorModel
with the providedopacity
value. -
withRed(
num red) → OklabColor -
Returns a new color that matches this color with the red channel replaced
with
r
(which ranges from 0 to 255).override -
withValues(
List< num> values) → OklabColor - Returns a color in this color's color space with the values provided.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited