Struct nannou::color::luma::Luma [−][src]
#[repr(C)]pub struct Luma<S = Srgb, T = f32> where
S: LumaStandard,
T: Component, { pub luma: T, pub standard: PhantomData<S>, }
Luminance.
Luma is a purely gray scale color space, which is included more for
completeness than anything else, and represents how bright a color is
perceived to be. It’s basically the Y
component of CIE
XYZ. The lack of any form of hue representation limits
the set of operations that can be performed on it.
Fields
luma: T
The lightness of the color. 0.0 is black and 1.0 is white.
standard: PhantomData<S>
The kind of RGB standard. sRGB is the default.
Implementations
impl<S, T> Luma<S, T> where
S: LumaStandard,
T: Component,
[src]
S: LumaStandard,
T: Component,
pub fn new(luma: T) -> Luma<S, T>
[src]
Create a luminance color.
pub fn into_format<U>(self) -> Luma<S, U> where
U: Component,
[src]
U: Component,
Convert into another component type.
pub fn from_format<U>(color: Luma<S, U>) -> Luma<S, T> where
U: Component,
[src]
U: Component,
Convert from another component type.
pub fn into_components(self) -> (T,)
[src]
Convert to a (luma,)
tuple.
pub fn from_components((T,)) -> Luma<S, T>
[src]
Convert from a (luma,)
tuple.
impl<S, T> Luma<S, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
pub fn into_linear(self) -> Luma<Linear<<S as LumaStandard>::WhitePoint>, T>
[src]
Convert the color to linear luminance.
pub fn from_linear(
color: Luma<Linear<<S as LumaStandard>::WhitePoint>, T>
) -> Luma<S, T>
[src]
color: Luma<Linear<<S as LumaStandard>::WhitePoint>, T>
) -> Luma<S, T>
Convert linear luminance to nonlinear luminance.
pub fn into_encoding<St>(self) -> Luma<St, T> where
St: LumaStandard<WhitePoint = <S as LumaStandard>::WhitePoint>,
[src]
St: LumaStandard<WhitePoint = <S as LumaStandard>::WhitePoint>,
Convert the color to a different encoding.
pub fn from_encoding<St>(color: Luma<St, T>) -> Luma<S, T> where
St: LumaStandard<WhitePoint = <S as LumaStandard>::WhitePoint>,
[src]
St: LumaStandard<WhitePoint = <S as LumaStandard>::WhitePoint>,
Convert luminance from a different encoding.
Trait Implementations
impl<S, T> AbsDiffEq<Luma<S, T>> for Luma<S, T> where
S: LumaStandard + PartialEq<S>,
T: Component + AbsDiffEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
[src]
S: LumaStandard + PartialEq<S>,
T: Component + AbsDiffEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
type Epsilon = <T as AbsDiffEq<T>>::Epsilon
Used for specifying relative comparisons.
pub fn default_epsilon() -> <Luma<S, T> as AbsDiffEq<Luma<S, T>>>::Epsilon
[src]
pub fn abs_diff_eq(
&self,
other: &Luma<S, T>,
epsilon: <Luma<S, T> as AbsDiffEq<Luma<S, T>>>::Epsilon
) -> bool
[src]
&self,
other: &Luma<S, T>,
epsilon: <Luma<S, T> as AbsDiffEq<Luma<S, T>>>::Epsilon
) -> bool
pub fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
impl<S, T> Add<Luma<S, T>> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Add<T>,
<T as Add<T>>::Output: Component,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Add<T>,
<T as Add<T>>::Output: Component,
type Output = Luma<S, <T as Add<T>>::Output>
The resulting type after applying the +
operator.
pub fn add(self, other: Luma<S, T>) -> <Luma<S, T> as Add<Luma<S, T>>>::Output
[src]
impl<S, T> Add<T> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Add<T>,
<T as Add<T>>::Output: Component,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Add<T>,
<T as Add<T>>::Output: Component,
type Output = Luma<S, <T as Add<T>>::Output>
The resulting type after applying the +
operator.
pub fn add(self, c: T) -> <Luma<S, T> as Add<T>>::Output
[src]
impl<S, T> AddAssign<Luma<S, T>> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + AddAssign<T>,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + AddAssign<T>,
pub fn add_assign(&mut self, other: Luma<S, T>)
[src]
impl<S, T> AddAssign<T> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + AddAssign<T>,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + AddAssign<T>,
pub fn add_assign(&mut self, c: T)
[src]
impl<S, T, P> AsMut<P> for Luma<S, T> where
S: LumaStandard,
T: Component,
P: RawPixel<T> + ?Sized,
[src]
S: LumaStandard,
T: Component,
P: RawPixel<T> + ?Sized,
pub fn as_mut(&mut self) -> &mut P
[src]
Convert to a raw pixel format.
use palette::SrgbLuma; let mut luma = SrgbLuma::new(100); { let raw: &mut [u8] = luma.as_mut(); raw[0] = 5; } assert_eq!(luma.luma, 5);
impl<S, T, P> AsRef<P> for Luma<S, T> where
S: LumaStandard,
T: Component,
P: RawPixel<T> + ?Sized,
[src]
S: LumaStandard,
T: Component,
P: RawPixel<T> + ?Sized,
pub fn as_ref(&self) -> &P
[src]
Convert to a raw pixel format.
use palette::SrgbLuma; let luma = SrgbLuma::new(100); let raw: &[u8] = luma.as_ref(); assert_eq!(raw[0], 100);
impl<S, T> Blend for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Float,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Float,
type Color = Luma<S, T>
The core color type. Typically Self
for color types without alpha.
pub fn into_premultiplied(self) -> PreAlpha<Luma<S, T>, T>
[src]
pub fn from_premultiplied(color: PreAlpha<Luma<S, T>, T>) -> Luma<S, T>
[src]
pub fn blend<F>(self, destination: Self, blend_function: F) -> Self where
F: BlendFunction<Self::Color>,
[src]
F: BlendFunction<Self::Color>,
pub fn over(self, other: Self) -> Self
[src]
pub fn inside(self, other: Self) -> Self
[src]
pub fn outside(self, other: Self) -> Self
[src]
pub fn atop(self, other: Self) -> Self
[src]
pub fn xor(self, other: Self) -> Self
[src]
pub fn plus(self, other: Self) -> Self
[src]
pub fn multiply(self, other: Self) -> Self
[src]
pub fn screen(self, other: Self) -> Self
[src]
pub fn overlay(self, other: Self) -> Self
[src]
pub fn darken(self, other: Self) -> Self
[src]
pub fn lighten(self, other: Self) -> Self
[src]
pub fn dodge(self, other: Self) -> Self
[src]
pub fn burn(self, other: Self) -> Self
[src]
pub fn hard_light(self, other: Self) -> Self
[src]
pub fn soft_light(self, other: Self) -> Self
[src]
pub fn difference(self, other: Self) -> Self
[src]
pub fn exclusion(self, other: Self) -> Self
[src]
impl<S, T> Clone for Luma<S, T> where
S: LumaStandard,
T: Component,
[src]
S: LumaStandard,
T: Component,
impl<S, T> ComponentWise for Luma<S, T> where
S: LumaStandard,
T: Component,
[src]
S: LumaStandard,
T: Component,
type Scalar = T
The scalar type for color components.
pub fn component_wise<F>(&self, other: &Luma<S, T>, f: F) -> Luma<S, T> where
F: FnMut(T, T) -> T,
[src]
F: FnMut(T, T) -> T,
pub fn component_wise_self<F>(&self, f: F) -> Luma<S, T> where
F: FnMut(T) -> T,
[src]
F: FnMut(T) -> T,
impl<S, T> Copy for Luma<S, T> where
S: LumaStandard,
T: Component,
[src]
S: LumaStandard,
T: Component,
impl<S, T> Debug for Luma<S, T> where
S: Debug + LumaStandard,
T: Debug + Component,
[src]
S: Debug + LumaStandard,
T: Debug + Component,
impl<S, T> Default for Luma<S, T> where
S: LumaStandard,
T: Component,
[src]
S: LumaStandard,
T: Component,
impl<S, T> Div<Luma<S, T>> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Div<T>,
<T as Div<T>>::Output: Component,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Div<T>,
<T as Div<T>>::Output: Component,
type Output = Luma<S, <T as Div<T>>::Output>
The resulting type after applying the /
operator.
pub fn div(self, other: Luma<S, T>) -> <Luma<S, T> as Div<Luma<S, T>>>::Output
[src]
impl<S, T> Div<T> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Div<T>,
<T as Div<T>>::Output: Component,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Div<T>,
<T as Div<T>>::Output: Component,
type Output = Luma<S, <T as Div<T>>::Output>
The resulting type after applying the /
operator.
pub fn div(self, c: T) -> <Luma<S, T> as Div<T>>::Output
[src]
impl<S, T> DivAssign<Luma<S, T>> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + DivAssign<T>,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + DivAssign<T>,
pub fn div_assign(&mut self, other: Luma<S, T>)
[src]
impl<S, T> DivAssign<T> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + DivAssign<T>,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + DivAssign<T>,
pub fn div_assign(&mut self, c: T)
[src]
impl<S, T> From<(T,)> for Luma<S, T> where
S: LumaStandard,
T: Component,
[src]
S: LumaStandard,
T: Component,
impl<S, T, _S> From<Alpha<Hsl<_S, T>, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
[src]
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
impl<S, T, _S> From<Alpha<Hsv<_S, T>, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
[src]
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
impl<S, T, _S> From<Alpha<Hwb<_S, T>, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
[src]
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
impl<S, T> From<Alpha<Lab<<S as LumaStandard>::WhitePoint, T>, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
pub fn from(
color: Alpha<Lab<<S as LumaStandard>::WhitePoint, T>, T>
) -> Luma<S, T>
[src]
color: Alpha<Lab<<S as LumaStandard>::WhitePoint, T>, T>
) -> Luma<S, T>
impl<S, T> From<Alpha<Lch<<S as LumaStandard>::WhitePoint, T>, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
pub fn from(
color: Alpha<Lch<<S as LumaStandard>::WhitePoint, T>, T>
) -> Luma<S, T>
[src]
color: Alpha<Lch<<S as LumaStandard>::WhitePoint, T>, T>
) -> Luma<S, T>
impl<S, T, _S> From<Alpha<Luma<_S, T>, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as LumaStandard>::WhitePoint>,
[src]
S: LumaStandard,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as LumaStandard>::WhitePoint>,
impl<S, T, _S> From<Alpha<Rgb<_S, T>, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
_S: RgbStandard,
<_S as RgbStandard>::Space: RgbSpace,
<<_S as RgbStandard>::Space as RgbSpace>::WhitePoint == <S as LumaStandard>::WhitePoint,
[src]
S: LumaStandard,
T: Component + Float,
_S: RgbStandard,
<_S as RgbStandard>::Space: RgbSpace,
<<_S as RgbStandard>::Space as RgbSpace>::WhitePoint == <S as LumaStandard>::WhitePoint,
impl<S, T> From<Alpha<Xyz<<S as LumaStandard>::WhitePoint, T>, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
pub fn from(
color: Alpha<Xyz<<S as LumaStandard>::WhitePoint, T>, T>
) -> Luma<S, T>
[src]
color: Alpha<Xyz<<S as LumaStandard>::WhitePoint, T>, T>
) -> Luma<S, T>
impl<S, T> From<Alpha<Yxy<<S as LumaStandard>::WhitePoint, T>, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
pub fn from(
color: Alpha<Yxy<<S as LumaStandard>::WhitePoint, T>, T>
) -> Luma<S, T>
[src]
color: Alpha<Yxy<<S as LumaStandard>::WhitePoint, T>, T>
) -> Luma<S, T>
impl<S, T, _S> From<Hsl<_S, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
[src]
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
impl<S, T, _S> From<Hsv<_S, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
[src]
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
impl<S, T, _S> From<Hwb<_S, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
[src]
S: LumaStandard,
T: Component + Float,
_S: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>,
impl<S, T> From<Lab<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
pub fn from(color: Lab<<S as LumaStandard>::WhitePoint, T>) -> Luma<S, T>
[src]
impl<S, T> From<Lch<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
pub fn from(color: Lch<<S as LumaStandard>::WhitePoint, T>) -> Luma<S, T>
[src]
impl<Wp, T, S> From<Luma<S, T>> for Xyz<Wp, T> where
S: LumaStandard<WhitePoint = Wp>,
T: Component + Float,
Wp: WhitePoint,
[src]
S: LumaStandard<WhitePoint = Wp>,
T: Component + Float,
Wp: WhitePoint,
impl<S, T> From<Luma<S, T>> for Yxy<<S as LumaStandard>::WhitePoint, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
pub fn from(luma: Luma<S, T>) -> Yxy<<S as LumaStandard>::WhitePoint, T>
[src]
impl<S, T, St, Wp> From<Luma<St, T>> for Rgb<S, T> where
S: RgbStandard,
T: Component + Float,
Wp: WhitePoint,
St: LumaStandard<WhitePoint = Wp>,
<S as RgbStandard>::Space: RgbSpace,
<<S as RgbStandard>::Space as RgbSpace>::WhitePoint == Wp,
[src]
S: RgbStandard,
T: Component + Float,
Wp: WhitePoint,
St: LumaStandard<WhitePoint = Wp>,
<S as RgbStandard>::Space: RgbSpace,
<<S as RgbStandard>::Space as RgbSpace>::WhitePoint == Wp,
impl<S, T, _S> From<Luma<_S, T>> for Alpha<Hsl<S, T>, T> where
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
[src]
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
impl<Wp, T, _S> From<Luma<_S, T>> for Alpha<Yxy<Wp, T>, T> where
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
impl<S, T, _S> From<Luma<_S, T>> for Alpha<Hwb<S, T>, T> where
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
[src]
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
impl<Wp, T, _S> From<Luma<_S, T>> for Lch<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
impl<S, T, _S> From<Luma<_S, T>> for Hwb<S, T> where
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
[src]
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
impl<Wp, T, _S> From<Luma<_S, T>> for Lab<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
impl<Wp, T, _S> From<Luma<_S, T>> for Alpha<Xyz<Wp, T>, T> where
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
impl<S, T, _S> From<Luma<_S, T>> for Hsl<S, T> where
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
[src]
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
impl<Wp, T, _S> From<Luma<_S, T>> for Alpha<Lab<Wp, T>, T> where
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
impl<Wp, T, _S> From<Luma<_S, T>> for Alpha<Lch<Wp, T>, T> where
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: LumaStandard<WhitePoint = Wp>,
impl<S, T, _S> From<Luma<_S, T>> for Alpha<Rgb<S, T>, T> where
S: RgbStandard,
T: Component + Float,
_S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>,
[src]
S: RgbStandard,
T: Component + Float,
_S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>,
impl<S, T, _S> From<Luma<_S, T>> for Alpha<Hsv<S, T>, T> where
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
[src]
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
impl<S, T, _S> From<Luma<_S, T>> for Hsv<S, T> where
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
[src]
S: RgbSpace,
T: Component + Float,
_S: LumaStandard<WhitePoint = <S as RgbSpace>::WhitePoint>,
impl<S, T, _S> From<Rgb<_S, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
_S: RgbStandard,
<_S as RgbStandard>::Space: RgbSpace,
<<_S as RgbStandard>::Space as RgbSpace>::WhitePoint == <S as LumaStandard>::WhitePoint,
[src]
S: LumaStandard,
T: Component + Float,
_S: RgbStandard,
<_S as RgbStandard>::Space: RgbSpace,
<<_S as RgbStandard>::Space as RgbSpace>::WhitePoint == <S as LumaStandard>::WhitePoint,
impl<S, T> From<Xyz<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
pub fn from(color: Xyz<<S as LumaStandard>::WhitePoint, T>) -> Luma<S, T>
[src]
impl<S, T> From<Yxy<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
pub fn from(color: Yxy<<S as LumaStandard>::WhitePoint, T>) -> Luma<S, T>
[src]
impl<S, T> FromColor<<S as LumaStandard>::WhitePoint, T> for Luma<S, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
pub fn from_xyz(color: Xyz<<S as LumaStandard>::WhitePoint, T>) -> Luma<S, T>
[src]
pub fn from_yxy(color: Yxy<<S as LumaStandard>::WhitePoint, T>) -> Luma<S, T>
[src]
pub fn from_luma(
color: Luma<Linear<<S as LumaStandard>::WhitePoint>, T>
) -> Luma<S, T>
[src]
color: Luma<Linear<<S as LumaStandard>::WhitePoint>, T>
) -> Luma<S, T>
pub fn from_lab(inp: Lab<Wp, T>) -> Self
[src]
pub fn from_lch(inp: Lch<Wp, T>) -> Self
[src]
pub fn from_rgb<S>(inp: Rgb<Linear<S>, T>) -> Self where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
pub fn from_hsl<S>(inp: Hsl<S, T>) -> Self where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
pub fn from_hsv<S>(inp: Hsv<S, T>) -> Self where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
pub fn from_hwb<S>(inp: Hwb<S, T>) -> Self where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
impl<S, T> Into<(T,)> for Luma<S, T> where
S: LumaStandard,
T: Component,
[src]
S: LumaStandard,
T: Component,
impl<S, Wp, T> IntoColor<Wp, T> for Luma<S, T> where
S: LumaStandard<WhitePoint = Wp>,
T: Component + Float,
Wp: WhitePoint,
[src]
S: LumaStandard<WhitePoint = Wp>,
T: Component + Float,
Wp: WhitePoint,
pub fn into_xyz(self) -> Xyz<Wp, T>
[src]
pub fn into_yxy(self) -> Yxy<Wp, T>
[src]
pub fn into_luma(self) -> Luma<Linear<Wp>, T>
[src]
pub fn into_lab(self) -> Lab<Wp, T>
[src]
pub fn into_lch(self) -> Lch<Wp, T>
[src]
pub fn into_rgb<S>(self) -> Rgb<Linear<S>, T> where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
pub fn into_hsl<S>(self) -> Hsl<S, T> where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
pub fn into_hsv<S>(self) -> Hsv<S, T> where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
pub fn into_hwb<S>(self) -> Hwb<S, T> where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
impl<S, T> Limited for Luma<S, T> where
S: LumaStandard,
T: Component,
[src]
S: LumaStandard,
T: Component,
pub fn is_valid(&self) -> bool
[src]
pub fn clamp(&self) -> Luma<S, T>
[src]
pub fn clamp_self(&mut self)
[src]
impl<S, T> LowerHex for Luma<S, T> where
S: LumaStandard,
T: Component + LowerHex,
[src]
S: LumaStandard,
T: Component + LowerHex,
impl<S, T> Mix for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Float,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Float,
type Scalar = T
The type of the mixing factor.
pub fn mix(&self, other: &Luma<S, T>, factor: T) -> Luma<S, T>
[src]
impl<S, T> Mul<Luma<S, T>> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Mul<T>,
<T as Mul<T>>::Output: Component,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Mul<T>,
<T as Mul<T>>::Output: Component,
type Output = Luma<S, <T as Mul<T>>::Output>
The resulting type after applying the *
operator.
pub fn mul(self, other: Luma<S, T>) -> <Luma<S, T> as Mul<Luma<S, T>>>::Output
[src]
impl<S, T> Mul<T> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Mul<T>,
<T as Mul<T>>::Output: Component,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Mul<T>,
<T as Mul<T>>::Output: Component,
type Output = Luma<S, <T as Mul<T>>::Output>
The resulting type after applying the *
operator.
pub fn mul(self, c: T) -> <Luma<S, T> as Mul<T>>::Output
[src]
impl<S, T> MulAssign<Luma<S, T>> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + MulAssign<T>,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + MulAssign<T>,
pub fn mul_assign(&mut self, other: Luma<S, T>)
[src]
impl<S, T> MulAssign<T> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + MulAssign<T>,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + MulAssign<T>,
pub fn mul_assign(&mut self, c: T)
[src]
impl<S, T> PartialEq<Luma<S, T>> for Luma<S, T> where
S: PartialEq<S> + LumaStandard,
T: PartialEq<T> + Component,
[src]
S: PartialEq<S> + LumaStandard,
T: PartialEq<T> + Component,
impl<S, T> Pixel<T> for Luma<S, T> where
S: LumaStandard,
T: Component,
[src]
S: LumaStandard,
T: Component,
pub const CHANNELS: usize
[src]
pub fn as_raw<P>(&self) -> &P where
P: RawPixel<T> + ?Sized,
[src]
P: RawPixel<T> + ?Sized,
pub fn as_raw_mut<P>(&mut self) -> &mut P where
P: RawPixel<T> + ?Sized,
[src]
P: RawPixel<T> + ?Sized,
pub fn into_raw<P>(self) -> P where
P: RawPixelSized<T>,
[src]
P: RawPixelSized<T>,
pub fn from_raw<P>(pixel: &P) -> &Self where
P: RawPixel<T> + ?Sized,
[src]
P: RawPixel<T> + ?Sized,
pub fn from_raw_mut<P>(pixel: &mut P) -> &mut Self where
P: RawPixel<T> + ?Sized,
[src]
P: RawPixel<T> + ?Sized,
pub fn from_raw_slice(slice: &[T]) -> &[Self]ⓘ
[src]
pub fn from_raw_slice_mut(slice: &mut [T]) -> &mut [Self]ⓘ
[src]
pub fn into_raw_slice(slice: &[Self]) -> &[T]ⓘ
[src]
pub fn into_raw_slice_mut(slice: &mut [Self]) -> &mut [T]ⓘ
[src]
impl<S, T> RelativeEq<Luma<S, T>> for Luma<S, T> where
S: LumaStandard + PartialEq<S>,
T: Component + RelativeEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
[src]
S: LumaStandard + PartialEq<S>,
T: Component + RelativeEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
pub fn default_max_relative() -> <Luma<S, T> as AbsDiffEq<Luma<S, T>>>::Epsilon
[src]
pub fn relative_eq(
&self,
other: &Luma<S, T>,
epsilon: <Luma<S, T> as AbsDiffEq<Luma<S, T>>>::Epsilon,
max_relative: <Luma<S, T> as AbsDiffEq<Luma<S, T>>>::Epsilon
) -> bool
[src]
&self,
other: &Luma<S, T>,
epsilon: <Luma<S, T> as AbsDiffEq<Luma<S, T>>>::Epsilon,
max_relative: <Luma<S, T> as AbsDiffEq<Luma<S, T>>>::Epsilon
) -> bool
pub fn relative_ne(
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
impl<S, T> Shade for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Float,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Float,
type Scalar = T
The type of the lighten/darken amount.
pub fn lighten(&self, amount: T) -> Luma<S, T>
[src]
pub fn darken(&self, amount: Self::Scalar) -> Self
[src]
impl<S, T> StructuralPartialEq for Luma<S, T> where
S: LumaStandard,
T: Component,
[src]
S: LumaStandard,
T: Component,
impl<S, T> Sub<Luma<S, T>> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Sub<T>,
<T as Sub<T>>::Output: Component,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Sub<T>,
<T as Sub<T>>::Output: Component,
type Output = Luma<S, <T as Sub<T>>::Output>
The resulting type after applying the -
operator.
pub fn sub(self, other: Luma<S, T>) -> <Luma<S, T> as Sub<Luma<S, T>>>::Output
[src]
impl<S, T> Sub<T> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Sub<T>,
<T as Sub<T>>::Output: Component,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + Sub<T>,
<T as Sub<T>>::Output: Component,
type Output = Luma<S, <T as Sub<T>>::Output>
The resulting type after applying the -
operator.
pub fn sub(self, c: T) -> <Luma<S, T> as Sub<T>>::Output
[src]
impl<S, T> SubAssign<Luma<S, T>> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + SubAssign<T>,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + SubAssign<T>,
pub fn sub_assign(&mut self, other: Luma<S, T>)
[src]
impl<S, T> SubAssign<T> for Luma<S, T> where
S: LumaStandard<TransferFn = LinearFn>,
T: Component + SubAssign<T>,
[src]
S: LumaStandard<TransferFn = LinearFn>,
T: Component + SubAssign<T>,
pub fn sub_assign(&mut self, c: T)
[src]
impl<S, T> UlpsEq<Luma<S, T>> for Luma<S, T> where
S: LumaStandard + PartialEq<S>,
T: Component + UlpsEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
[src]
S: LumaStandard + PartialEq<S>,
T: Component + UlpsEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
pub fn default_max_ulps() -> u32
[src]
pub fn ulps_eq(
&self,
other: &Luma<S, T>,
epsilon: <Luma<S, T> as AbsDiffEq<Luma<S, T>>>::Epsilon,
max_ulps: u32
) -> bool
[src]
&self,
other: &Luma<S, T>,
epsilon: <Luma<S, T> as AbsDiffEq<Luma<S, T>>>::Epsilon,
max_ulps: u32
) -> bool
pub fn ulps_ne(
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_ulps: u32
) -> bool
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_ulps: u32
) -> bool
impl<S, T> UpperHex for Luma<S, T> where
S: LumaStandard,
T: Component + UpperHex,
[src]
S: LumaStandard,
T: Component + UpperHex,
Auto Trait Implementations
impl<S, T> RefUnwindSafe for Luma<S, T> where
S: RefUnwindSafe,
T: RefUnwindSafe,
S: RefUnwindSafe,
T: RefUnwindSafe,
impl<S, T> Send for Luma<S, T> where
S: Send,
T: Send,
S: Send,
T: Send,
impl<S, T> Sync for Luma<S, T> where
S: Sync,
T: Sync,
S: Sync,
T: Sync,
impl<S, T> Unpin for Luma<S, T> where
S: Unpin,
T: Unpin,
S: Unpin,
T: Unpin,
impl<S, T> UnwindSafe for Luma<S, T> where
S: UnwindSafe,
T: UnwindSafe,
S: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
impl<S, D, Swp, Dwp, T> AdaptFrom<S, Swp, Dwp, T> for D where
S: IntoColor<Swp, T>,
T: Component + Float,
D: FromColor<Dwp, T>,
Swp: WhitePoint,
Dwp: WhitePoint,
[src]
S: IntoColor<Swp, T>,
T: Component + Float,
D: FromColor<Dwp, T>,
Swp: WhitePoint,
Dwp: WhitePoint,
pub fn adapt_from_using<M>(color: S, method: M) -> D where
M: TransformMatrix<Swp, Dwp, T>,
[src]
M: TransformMatrix<Swp, Dwp, T>,
pub fn adapt_from(color: S) -> Self
[src]
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
T: Component + Float,
D: AdaptFrom<S, Swp, Dwp, T>,
Swp: WhitePoint,
Dwp: WhitePoint,
[src]
T: Component + Float,
D: AdaptFrom<S, Swp, Dwp, T>,
Swp: WhitePoint,
Dwp: WhitePoint,
pub fn adapt_into_using<M>(self, method: M) -> D where
M: TransformMatrix<Swp, Dwp, T>,
[src]
M: TransformMatrix<Swp, Dwp, T>,
pub fn adapt_into(self) -> D
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> ConvertFrom<T> for U where
U: From<T> + Limited,
[src]
U: From<T> + Limited,
pub fn convert_from(t: T) -> U
[src]
pub fn try_convert_from(t: T) -> Result<U, OutOfBounds<U>>
[src]
pub fn convert_unclamped_from(val: T) -> Self
[src]
impl<T, U> ConvertInto<U> for T where
U: ConvertFrom<T>,
[src]
U: ConvertFrom<T>,
pub fn convert_into(self) -> U
[src]
pub fn convert_unclamped_into(self) -> U
[src]
pub fn try_convert_into(self) -> Result<U, OutOfBounds<U>>
[src]
impl<T> Downcast<T> for T
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<T> SetParameter for T
pub fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
T: Parameter<Self>,
impl<T> Style for T where
T: Any + Debug + PartialEq<T>,
[src]
T: Any + Debug + PartialEq<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Upcast<T> for T
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,