Struct palette::Lab [−][src]
#[repr(C)]pub struct Lab<Wp = D65, T = f32> where
T: FloatComponent,
Wp: WhitePoint, { pub l: T, pub a: T, pub b: T, pub white_point: PhantomData<Wp>, }
The CIE L*a*b* (CIELAB) color space.
CIE L*a*b* is a device independent color space which includes all perceivable colors. It’s sometimes used to convert between other color spaces, because of its ability to represent all of their colors, and sometimes in color manipulation, because of its perceptual uniformity. This means that the perceptual difference between two colors is equal to their numerical difference.
The parameters of L*a*b* are quite different, compared to many other color spaces, so manipulating them manually may be unintuitive.
Fields
l: T
L* is the lightness of the color. 0.0 gives absolute black and 100 give the brightest white.
a: T
a* goes from red at -128 to green at 127.
b: T
b* goes from yellow at -128 to blue at 127.
white_point: PhantomData<Wp>
The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.
Implementations
impl<T> Lab<D65, T> where
T: FloatComponent,
[src]
impl<T> Lab<D65, T> where
T: FloatComponent,
[src]impl<Wp, T> Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]pub fn with_wp(l: T, a: T, b: T) -> Lab<Wp, T>
[src]
CIE L*a*b*.
pub fn into_components(self) -> (T, T, T)
[src]
Convert to a (L\*, a\*, b\*)
tuple.
pub fn from_components((l, a, b): (T, T, T)) -> Self
[src]
Convert from a (L\*, a\*, b\*)
tuple.
pub fn min_l() -> T
[src]
Return the l
value minimum.
pub fn max_l() -> T
[src]
Return the l
value maximum.
pub fn min_a() -> T
[src]
Return the a
value minimum.
pub fn max_a() -> T
[src]
Return the a
value maximum.
pub fn min_b() -> T
[src]
Return the b
value minimum.
pub fn max_b() -> T
[src]
Return the b
value maximum.
Trait Implementations
impl<Wp, T> AbsDiffEq<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + AbsDiffEq,
T::Epsilon: Copy + FloatComponent,
Wp: WhitePoint + PartialEq,
[src]
impl<Wp, T> AbsDiffEq<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + AbsDiffEq,
T::Epsilon: Copy + FloatComponent,
Wp: WhitePoint + PartialEq,
[src]type Epsilon = T::Epsilon
Used for specifying relative comparisons.
fn default_epsilon() -> Self::Epsilon
[src]
fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool
[src]
fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool
[src]
impl<Wp, T> Add<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Add<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> Add<T> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Add<T> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> AddAssign<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + AddAssign,
Wp: WhitePoint,
[src]
impl<Wp, T> AddAssign<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + AddAssign,
Wp: WhitePoint,
[src]fn add_assign(&mut self, other: Lab<Wp, T>)
[src]
impl<Wp, T> AddAssign<T> for Lab<Wp, T> where
T: FloatComponent + AddAssign,
Wp: WhitePoint,
[src]
impl<Wp, T> AddAssign<T> for Lab<Wp, T> where
T: FloatComponent + AddAssign,
Wp: WhitePoint,
[src]fn add_assign(&mut self, c: T)
[src]
impl<Wp, T, P: ?Sized> AsMut<P> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
P: RawPixel<T>,
[src]
impl<Wp, T, P: ?Sized> AsMut<P> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
P: RawPixel<T>,
[src]impl<Wp, T, P: ?Sized> AsRef<P> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
P: RawPixel<T>,
[src]
impl<Wp, T, P: ?Sized> AsRef<P> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
P: RawPixel<T>,
[src]impl<Wp, T> Clamp for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Clamp for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]fn is_within_bounds(&self) -> bool
[src]
fn clamp(&self) -> Lab<Wp, T>
[src]
fn clamp_self(&mut self)
[src]
impl<Wp, T> Clone for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Clone for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> ColorDifference for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> ColorDifference for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]type Scalar = T
The type of the calculated color difference
fn get_color_difference(&self, other: &Lab<Wp, T>) -> Self::Scalar
[src]
impl<Wp, T> ComponentWise for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> ComponentWise for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]type Scalar = T
The scalar type for color components.
fn component_wise<F: FnMut(T, T) -> T>(
&self,
other: &Lab<Wp, T>,
f: F
) -> Lab<Wp, T>
[src]
&self,
other: &Lab<Wp, T>,
f: F
) -> Lab<Wp, T>
fn component_wise_self<F: FnMut(T) -> T>(&self, f: F) -> Lab<Wp, T>
[src]
impl<Wp: Debug, T: Debug> Debug for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp: Debug, T: Debug> Debug for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> Default for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Default for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> Div<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Div<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> Div<T> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Div<T> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> DivAssign<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + DivAssign,
Wp: WhitePoint,
[src]
impl<Wp, T> DivAssign<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + DivAssign,
Wp: WhitePoint,
[src]fn div_assign(&mut self, other: Lab<Wp, T>)
[src]
impl<Wp, T> DivAssign<T> for Lab<Wp, T> where
T: FloatComponent + DivAssign,
Wp: WhitePoint,
[src]
impl<Wp, T> DivAssign<T> for Lab<Wp, T> where
T: FloatComponent + DivAssign,
Wp: WhitePoint,
[src]fn div_assign(&mut self, c: T)
[src]
impl<Wp: WhitePoint, T: FloatComponent> From<(T, T, T)> for Lab<Wp, T>
[src]
impl<Wp: WhitePoint, T: FloatComponent> From<(T, T, T)> for Lab<Wp, T>
[src]impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
_C: IntoColorUnclamped<Self>,
_A: Component,
[src]
impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
_C: IntoColorUnclamped<Self>,
_A: Component,
[src]fn from_color_unclamped(color: Alpha<_C, _A>) -> Self
[src]
impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
[src]
impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
[src]fn from_color_unclamped(color: Hsl<_S, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self
[src]
impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
[src]
impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
[src]fn from_color_unclamped(color: Hsv<_S, T>) -> Self
[src]
impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
[src]
impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
[src]fn from_color_unclamped(color: Hwb<_S, T>) -> Self
[src]
impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T> where
T: FloatComponent,
S: RgbStandard,
T: FloatComponent,
T: FloatComponent,
[src]
impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T> where
T: FloatComponent,
S: RgbStandard,
T: FloatComponent,
T: FloatComponent,
[src]fn from_color_unclamped(
color: Lab<<S::Space as RgbSpace>::WhitePoint, T>
) -> Self
[src]
color: Lab<<S::Space as RgbSpace>::WhitePoint, T>
) -> Self
impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T> where
T: FloatComponent,
S: RgbStandard,
T: FloatComponent,
T: FloatComponent,
[src]
impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T> where
T: FloatComponent,
S: RgbStandard,
T: FloatComponent,
T: FloatComponent,
[src]fn from_color_unclamped(
color: Lab<<S::Space as RgbSpace>::WhitePoint, T>
) -> Self
[src]
color: Lab<<S::Space as RgbSpace>::WhitePoint, T>
) -> Self
impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T> where
T: FloatComponent,
S: RgbStandard,
T: FloatComponent,
T: FloatComponent,
[src]
impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T> where
T: FloatComponent,
S: RgbStandard,
T: FloatComponent,
T: FloatComponent,
[src]fn from_color_unclamped(
color: Lab<<S::Space as RgbSpace>::WhitePoint, T>
) -> Self
[src]
color: Lab<<S::Space as RgbSpace>::WhitePoint, T>
) -> Self
impl<S: RgbStandard, T: Component> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T> where
T: FloatComponent,
T: FloatComponent,
[src]
impl<S: RgbStandard, T: Component> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T> where
T: FloatComponent,
T: FloatComponent,
[src]fn from_color_unclamped(
color: Lab<<S::Space as RgbSpace>::WhitePoint, T>
) -> Self
[src]
color: Lab<<S::Space as RgbSpace>::WhitePoint, T>
) -> Self
impl<S, T> FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T> where
T: Component,
S: LumaStandard,
T: FloatComponent,
T: FloatComponent,
[src]
impl<S, T> FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T> where
T: Component,
S: LumaStandard,
T: FloatComponent,
T: FloatComponent,
[src]fn from_color_unclamped(color: Lab<S::WhitePoint, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Lab<Wp, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lab<Wp, T> where
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lab<Wp, T> where
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Lab<Wp, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T> where
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T> where
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Lab<Wp, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Lab<Wp, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Lab<Wp, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]fn from_color_unclamped(color: Lab<Wp, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Lab<Wp, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T> where
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T> where
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Lch<Wp, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self
[src]
impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
_S: LumaStandard<WhitePoint = Wp>,
[src]
impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
_S: LumaStandard<WhitePoint = Wp>,
[src]fn from_color_unclamped(color: Luma<_S, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Luv<Wp, T>) -> Self
[src]
impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
[src]
impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
[src]fn from_color_unclamped(color: Rgb<_S, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T> where
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T> where
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Xyz<Wp, T>) -> Self
[src]
impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
Wp: WhitePoint,
T: FloatComponent,
[src]fn from_color_unclamped(color: Yxy<Wp, T>) -> Self
[src]
impl<Wp, T> GetHue for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> GetHue for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp: WhitePoint, T: FloatComponent> Into<(T, T, T)> for Lab<Wp, T>
[src]
impl<Wp: WhitePoint, T: FloatComponent> Into<(T, T, T)> for Lab<Wp, T>
[src]impl<Wp, T> Mix for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Mix for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> Mul<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Mul<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> Mul<T> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Mul<T> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> MulAssign<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + MulAssign,
Wp: WhitePoint,
[src]
impl<Wp, T> MulAssign<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + MulAssign,
Wp: WhitePoint,
[src]fn mul_assign(&mut self, other: Lab<Wp, T>)
[src]
impl<Wp, T> MulAssign<T> for Lab<Wp, T> where
T: FloatComponent + MulAssign,
Wp: WhitePoint,
[src]
impl<Wp, T> MulAssign<T> for Lab<Wp, T> where
T: FloatComponent + MulAssign,
Wp: WhitePoint,
[src]fn mul_assign(&mut self, c: T)
[src]
impl<Wp, T> PartialEq<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + PartialEq,
Wp: WhitePoint,
[src]
impl<Wp, T> PartialEq<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + PartialEq,
Wp: WhitePoint,
[src]impl<Wp, T> Pixel<T> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Pixel<T> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]const CHANNELS: usize
[src]
fn as_raw<P: RawPixel<T> + ?Sized>(&self) -> &P
[src]
fn as_raw_mut<P: RawPixel<T> + ?Sized>(&mut self) -> &mut P
[src]
fn into_raw<P: RawPixelSized<T>>(self) -> P
[src]
fn from_raw<P: RawPixel<T> + ?Sized>(pixel: &P) -> &Self
[src]
fn from_raw_mut<P: RawPixel<T> + ?Sized>(pixel: &mut P) -> &mut Self
[src]
fn from_raw_slice(slice: &[T]) -> &[Self]
[src]
fn from_raw_slice_mut(slice: &mut [T]) -> &mut [Self]
[src]
fn into_raw_slice(slice: &[Self]) -> &[T]
[src]
fn into_raw_slice_mut(slice: &mut [Self]) -> &mut [T]
[src]
impl<Wp, T> RelativeContrast for Lab<Wp, T> where
Wp: WhitePoint,
T: FloatComponent,
[src]
impl<Wp, T> RelativeContrast for Lab<Wp, T> where
Wp: WhitePoint,
T: FloatComponent,
[src]type Scalar = T
The type of the contrast ratio.
fn get_contrast_ratio(&self, other: &Self) -> T
[src]
fn has_min_contrast_text(&self, other: &Self) -> bool
[src]
fn has_min_contrast_large_text(&self, other: &Self) -> bool
[src]
fn has_enhanced_contrast_text(&self, other: &Self) -> bool
[src]
fn has_enhanced_contrast_large_text(&self, other: &Self) -> bool
[src]
fn has_min_contrast_graphics(&self, other: &Self) -> bool
[src]
impl<Wp, T> RelativeEq<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + RelativeEq,
T::Epsilon: Copy + FloatComponent,
Wp: WhitePoint + PartialEq,
[src]
impl<Wp, T> RelativeEq<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + RelativeEq,
T::Epsilon: Copy + FloatComponent,
Wp: WhitePoint + PartialEq,
[src]fn default_max_relative() -> T::Epsilon
[src]
fn relative_eq(
&self,
other: &Self,
epsilon: T::Epsilon,
max_relative: T::Epsilon
) -> bool
[src]
&self,
other: &Self,
epsilon: T::Epsilon,
max_relative: T::Epsilon
) -> bool
fn relative_ne(
&self,
other: &Self,
epsilon: T::Epsilon,
max_relative: T::Epsilon
) -> bool
[src]
&self,
other: &Self,
epsilon: T::Epsilon,
max_relative: T::Epsilon
) -> bool
impl<Wp, T> Shade for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Shade for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> Sub<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Sub<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> Sub<T> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
impl<Wp, T> Sub<T> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]impl<Wp, T> SubAssign<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + SubAssign,
Wp: WhitePoint,
[src]
impl<Wp, T> SubAssign<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + SubAssign,
Wp: WhitePoint,
[src]fn sub_assign(&mut self, other: Lab<Wp, T>)
[src]
impl<Wp, T> SubAssign<T> for Lab<Wp, T> where
T: FloatComponent + SubAssign,
Wp: WhitePoint,
[src]
impl<Wp, T> SubAssign<T> for Lab<Wp, T> where
T: FloatComponent + SubAssign,
Wp: WhitePoint,
[src]fn sub_assign(&mut self, c: T)
[src]
impl<Wp, T> UlpsEq<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + UlpsEq,
T::Epsilon: Copy + FloatComponent,
Wp: WhitePoint + PartialEq,
[src]
impl<Wp, T> UlpsEq<Lab<Wp, T>> for Lab<Wp, T> where
T: FloatComponent + UlpsEq,
T::Epsilon: Copy + FloatComponent,
Wp: WhitePoint + PartialEq,
[src]impl<Wp, T, _A> WithAlpha<_A> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
_A: Component,
[src]
impl<Wp, T, _A> WithAlpha<_A> for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
_A: Component,
[src]type Color = Self
The opaque color type, without any transparency. Read more
type WithAlpha = Alpha<Self, _A>
The color type with transparency applied. Read more
fn with_alpha(self, alpha: _A) -> Self::WithAlpha
[src]
fn without_alpha(self) -> Self::Color
[src]
fn split(self) -> (Self::Color, _A)
[src]
fn opaque(self) -> Self::WithAlpha
[src]
fn transparent(self) -> Self::WithAlpha
[src]
impl<Wp, T> Copy for Lab<Wp, T> where
T: FloatComponent,
Wp: WhitePoint,
[src]
T: FloatComponent,
Wp: WhitePoint,
impl<Wp, T> Eq for Lab<Wp, T> where
T: FloatComponent + Eq,
Wp: WhitePoint,
[src]
T: FloatComponent + Eq,
Wp: WhitePoint,
Auto Trait Implementations
impl<Wp, T> RefUnwindSafe for Lab<Wp, T> where
T: RefUnwindSafe,
Wp: RefUnwindSafe,
T: RefUnwindSafe,
Wp: RefUnwindSafe,
impl<Wp, T> Send for Lab<Wp, T> where
T: Send,
Wp: Send,
T: Send,
Wp: Send,
impl<Wp, T> Sync for Lab<Wp, T> where
T: Sync,
Wp: Sync,
T: Sync,
Wp: Sync,
impl<Wp, T> Unpin for Lab<Wp, T> where
T: Unpin,
Wp: Unpin,
T: Unpin,
Wp: Unpin,
impl<Wp, T> UnwindSafe for Lab<Wp, T> where
T: UnwindSafe,
Wp: UnwindSafe,
T: UnwindSafe,
Wp: UnwindSafe,
Blanket Implementations
impl<S, D, Swp, Dwp, T> AdaptFrom<S, Swp, Dwp, T> for D where
T: FloatComponent,
S: IntoColorUnclamped<Xyz<Swp, T>>,
Swp: WhitePoint,
Dwp: WhitePoint,
D: FromColorUnclamped<Xyz<Dwp, T>>,
[src]
impl<S, D, Swp, Dwp, T> AdaptFrom<S, Swp, Dwp, T> for D where
T: FloatComponent,
S: IntoColorUnclamped<Xyz<Swp, T>>,
Swp: WhitePoint,
Dwp: WhitePoint,
D: FromColorUnclamped<Xyz<Dwp, T>>,
[src]pub fn adapt_from_using<M>(S, M) -> D where
M: TransformMatrix<Swp, Dwp, T>,
[src]
M: TransformMatrix<Swp, Dwp, T>,
fn adapt_from(color: S) -> Self
[src]
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
T: FloatComponent,
Swp: WhitePoint,
Dwp: WhitePoint,
D: AdaptFrom<S, Swp, Dwp, T>,
[src]
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
T: FloatComponent,
Swp: WhitePoint,
Dwp: WhitePoint,
D: AdaptFrom<S, Swp, Dwp, T>,
[src]pub fn adapt_into_using<M>(Self, M) -> D where
M: TransformMatrix<Swp, Dwp, T>,
[src]
M: TransformMatrix<Swp, Dwp, T>,
fn adapt_into(self) -> D
[src]
impl<T, U> FromColor<T> for U where
U: FromColorUnclamped<T> + Clamp,
[src]
impl<T, U> FromColor<T> for U where
U: FromColorUnclamped<T> + Clamp,
[src]pub fn from_color(T) -> U
[src]
impl<T, U> IntoColor<U> for T where
U: FromColor<T>,
[src]
impl<T, U> IntoColor<U> for T where
U: FromColor<T>,
[src]pub fn into_color(Self) -> U
[src]
impl<T, U> IntoColorUnclamped<U> for T where
U: FromColorUnclamped<T>,
[src]
impl<T, U> IntoColorUnclamped<U> for T where
U: FromColorUnclamped<T>,
[src]pub fn into_color_unclamped(Self) -> U
[src]
impl<T, U> TryFromColor<T> for U where
U: FromColorUnclamped<T> + Clamp,
[src]
impl<T, U> TryFromColor<T> for U where
U: FromColorUnclamped<T> + Clamp,
[src]pub fn try_from_color(T) -> Result<U, OutOfBounds<U>>
[src]
impl<T, U> TryIntoColor<U> for T where
U: TryFromColor<T>,
[src]
impl<T, U> TryIntoColor<U> for T where
U: TryFromColor<T>,
[src]