[−][src]Struct valora::prelude::Xyz
The CIE 1931 XYZ color space.
XYZ links the perceived colors to their wavelengths and simply makes it possible to describe the way we see colors as numbers. It's often used when converting from one color space to an other, and requires a standard illuminant and a standard observer to be defined.
Conversions and operations on this color space depend on the defined white point
Fields
x: T
X is the scale of what can be seen as a response curve for the cone cells in the human eye. Its range depends on the white point and goes from 0.0 to 0.95047 for the default D65.
y: T
Y is the luminance of the color, where 0.0 is black and 1.0 is white.
z: T
Z is the scale of what can be seen as the blue stimulation. Its range depends on the white point and goes from 0.0 to 1.08883 for the defautl D65.
white_point: PhantomData<Wp>
The white point associated with the color's illuminant and observer. D65 for 2 degree observer is used by default.
Methods
impl<T> Xyz<D65, T> where
T: Component + Float,
[src]
T: Component + Float,
impl<Wp, T> Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
pub fn with_wp(x: T, y: T, z: T) -> Xyz<Wp, T>
[src]
CIE XYZ.
pub fn into_components(self) -> (T, T, T)
[src]
Convert to a (X, Y, Z)
tuple.
pub fn from_components((T, T, T)) -> Xyz<Wp, T>
[src]
Convert from a (X, Y, Z)
tuple.
Trait Implementations
impl<Wp, T> AbsDiffEq<Xyz<Wp, T>> for Xyz<Wp, T> where
T: Component + Float + AbsDiffEq<T>,
Wp: WhitePoint + PartialEq<Wp>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
<T as AbsDiffEq<T>>::Epsilon: Float,
[src]
T: Component + Float + AbsDiffEq<T>,
Wp: WhitePoint + PartialEq<Wp>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
<T as AbsDiffEq<T>>::Epsilon: Float,
type Epsilon = <T as AbsDiffEq<T>>::Epsilon
Used for specifying relative comparisons.
fn default_epsilon() -> <Xyz<Wp, T> as AbsDiffEq<Xyz<Wp, T>>>::Epsilon
[src]
fn abs_diff_eq(
&self,
other: &Xyz<Wp, T>,
epsilon: <T as AbsDiffEq<T>>::Epsilon
) -> bool
[src]
&self,
other: &Xyz<Wp, T>,
epsilon: <T as AbsDiffEq<T>>::Epsilon
) -> bool
fn abs_diff_ne(
&self,
other: &Xyz<Wp, T>,
epsilon: <T as AbsDiffEq<T>>::Epsilon
) -> bool
[src]
&self,
other: &Xyz<Wp, T>,
epsilon: <T as AbsDiffEq<T>>::Epsilon
) -> bool
impl<Wp, T> Add<T> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
type Output = Xyz<Wp, T>
The resulting type after applying the +
operator.
fn add(self, c: T) -> <Xyz<Wp, T> as Add<T>>::Output
[src]
impl<Wp, T> Add<Xyz<Wp, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
type Output = Xyz<Wp, T>
The resulting type after applying the +
operator.
fn add(self, other: Xyz<Wp, T>) -> <Xyz<Wp, T> as Add<Xyz<Wp, T>>>::Output
[src]
impl<Wp, T> AddAssign<T> for Xyz<Wp, T> where
T: Component + Float + AddAssign<T>,
Wp: WhitePoint,
[src]
T: Component + Float + AddAssign<T>,
Wp: WhitePoint,
fn add_assign(&mut self, c: T)
[src]
impl<Wp, T> AddAssign<Xyz<Wp, T>> for Xyz<Wp, T> where
T: Component + Float + AddAssign<T>,
Wp: WhitePoint,
[src]
T: Component + Float + AddAssign<T>,
Wp: WhitePoint,
fn add_assign(&mut self, other: Xyz<Wp, T>)
[src]
impl<Wp, T, P> AsMut<P> for Xyz<Wp, T> where
P: RawPixel<T> + ?Sized,
T: Component + Float,
Wp: WhitePoint,
[src]
P: RawPixel<T> + ?Sized,
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T, P> AsRef<P> for Xyz<Wp, T> where
P: RawPixel<T> + ?Sized,
T: Component + Float,
Wp: WhitePoint,
[src]
P: RawPixel<T> + ?Sized,
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> Clone for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> ComponentWise for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
type Scalar = T
The scalar type for color components.
fn component_wise<F>(&self, other: &Xyz<Wp, T>, f: F) -> Xyz<Wp, T> where
F: FnMut(T, T) -> T,
[src]
F: FnMut(T, T) -> T,
fn component_wise_self<F>(&self, f: F) -> Xyz<Wp, T> where
F: FnMut(T) -> T,
[src]
F: FnMut(T) -> T,
impl<Wp, T> Copy for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> Debug for Xyz<Wp, T> where
T: Debug + Component + Float,
Wp: Debug + WhitePoint,
[src]
T: Debug + Component + Float,
Wp: Debug + WhitePoint,
impl<Wp, T> Default for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> Div<T> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
type Output = Xyz<Wp, T>
The resulting type after applying the /
operator.
fn div(self, c: T) -> <Xyz<Wp, T> as Div<T>>::Output
[src]
impl<Wp, T> Div<Xyz<Wp, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
type Output = Xyz<Wp, T>
The resulting type after applying the /
operator.
fn div(self, other: Xyz<Wp, T>) -> <Xyz<Wp, T> as Div<Xyz<Wp, T>>>::Output
[src]
impl<Wp, T> DivAssign<T> for Xyz<Wp, T> where
T: Component + Float + DivAssign<T>,
Wp: WhitePoint,
[src]
T: Component + Float + DivAssign<T>,
Wp: WhitePoint,
fn div_assign(&mut self, c: T)
[src]
impl<Wp, T> DivAssign<Xyz<Wp, T>> for Xyz<Wp, T> where
T: Component + Float + DivAssign<T>,
Wp: WhitePoint,
[src]
T: Component + Float + DivAssign<T>,
Wp: WhitePoint,
fn div_assign(&mut self, other: Xyz<Wp, T>)
[src]
impl<Wp, T> From<(T, T, T)> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T, _S> From<Alpha<Hsl<_S, T>, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
impl<Wp, T, _S> From<Alpha<Hsv<_S, T>, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
impl<Wp, T, _S> From<Alpha<Hwb<_S, T>, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
impl<Wp, T> From<Alpha<Lab<Wp, T>, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> From<Alpha<Lch<Wp, T>, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T, _S> From<Alpha<Luma<_S, T>, T>> for Xyz<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<Alpha<Rgb<_S, T>, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
_S: RgbStandard,
<_S as RgbStandard>::Space: RgbSpace,
<<_S as RgbStandard>::Space as RgbSpace>::WhitePoint == Wp,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: RgbStandard,
<_S as RgbStandard>::Space: RgbSpace,
<<_S as RgbStandard>::Space as RgbSpace>::WhitePoint == Wp,
impl<Wp, T> From<Alpha<Xyz<Wp, T>, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> From<Alpha<Yxy<Wp, T>, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T, _S> From<Hsl<_S, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
impl<Wp, T, _S> From<Hsv<_S, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
impl<Wp, T, _S> From<Hwb<_S, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
[src]
T: Component + Float,
Wp: WhitePoint,
_S: RgbSpace<WhitePoint = Wp>,
impl<Wp, T> From<Lab<Wp, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> From<Lch<Wp, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
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<Wp, T, S> From<Rgb<S, T>> for Xyz<Wp, T> where
S: RgbStandard,
T: Component + Float,
Wp: WhitePoint,
<S as RgbStandard>::Space: RgbSpace,
<<S as RgbStandard>::Space as RgbSpace>::WhitePoint == Wp,
[src]
S: RgbStandard,
T: Component + Float,
Wp: WhitePoint,
<S as RgbStandard>::Space: RgbSpace,
<<S as RgbStandard>::Space as RgbSpace>::WhitePoint == Wp,
impl<S, T> From<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Alpha<Rgb<S, T>, T> where
S: RgbStandard,
T: Component + Float,
[src]
S: RgbStandard,
T: Component + Float,
fn from(
color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>
) -> Alpha<Rgb<S, T>, T>
[src]
color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>
) -> Alpha<Rgb<S, T>, T>
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,
fn from(color: Xyz<<S as LumaStandard>::WhitePoint, T>) -> Luma<S, T>
[src]
impl<S, T> From<Xyz<<S as LumaStandard>::WhitePoint, T>> for Alpha<Luma<S, T>, T> where
S: LumaStandard,
T: Component + Float,
[src]
S: LumaStandard,
T: Component + Float,
fn from(color: Xyz<<S as LumaStandard>::WhitePoint, T>) -> Alpha<Luma<S, T>, T>
[src]
impl<S, T> From<Xyz<<S as RgbSpace>::WhitePoint, T>> for Hwb<S, T> where
S: RgbSpace,
T: Component + Float,
[src]
S: RgbSpace,
T: Component + Float,
impl<S, T> From<Xyz<<S as RgbSpace>::WhitePoint, T>> for Alpha<Hsl<S, T>, T> where
S: RgbSpace,
T: Component + Float,
[src]
S: RgbSpace,
T: Component + Float,
impl<S, T> From<Xyz<<S as RgbSpace>::WhitePoint, T>> for Alpha<Hsv<S, T>, T> where
S: RgbSpace,
T: Component + Float,
[src]
S: RgbSpace,
T: Component + Float,
impl<S, T> From<Xyz<<S as RgbSpace>::WhitePoint, T>> for Hsv<S, T> where
S: RgbSpace,
T: Component + Float,
[src]
S: RgbSpace,
T: Component + Float,
impl<S, T> From<Xyz<<S as RgbSpace>::WhitePoint, T>> for Alpha<Hwb<S, T>, T> where
S: RgbSpace,
T: Component + Float,
[src]
S: RgbSpace,
T: Component + Float,
impl<S, T> From<Xyz<<S as RgbSpace>::WhitePoint, T>> for Hsl<S, T> where
S: RgbSpace,
T: Component + Float,
[src]
S: RgbSpace,
T: Component + Float,
impl<Wp, T> From<Xyz<Wp, T>> for Yxy<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> From<Xyz<Wp, T>> for Lab<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<S, Wp, T> From<Xyz<Wp, T>> for Rgb<S, T> where
S: RgbStandard,
T: Component + Float,
Wp: WhitePoint,
<S as RgbStandard>::Space: RgbSpace,
<<S as RgbStandard>::Space as RgbSpace>::WhitePoint == Wp,
[src]
S: RgbStandard,
T: Component + Float,
Wp: WhitePoint,
<S as RgbStandard>::Space: RgbSpace,
<<S as RgbStandard>::Space as RgbSpace>::WhitePoint == Wp,
impl<Wp, T> From<Xyz<Wp, T>> for Alpha<Lab<Wp, T>, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> From<Xyz<Wp, T>> for Alpha<Yxy<Wp, T>, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> From<Xyz<Wp, T>> for Lch<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> From<Xyz<Wp, T>> for Alpha<Lch<Wp, T>, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> From<Yxy<Wp, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> FromColor<Wp, T> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
fn from_xyz(color: Xyz<Wp, T>) -> Xyz<Wp, T>
[src]
fn from_rgb<_S>(color: Rgb<Linear<_S>, T>) -> Xyz<Wp, T> where
_S: RgbSpace<WhitePoint = Wp>,
[src]
_S: RgbSpace<WhitePoint = Wp>,
fn from_lab(color: Lab<Wp, T>) -> Xyz<Wp, T>
[src]
fn from_yxy(color: Yxy<Wp, T>) -> Xyz<Wp, T>
[src]
fn from_luma(color: Luma<Linear<Wp>, T>) -> Xyz<Wp, T>
[src]
fn from_lch(inp: Lch<Wp, T>) -> Self
[src]
fn from_hsl<S>(inp: Hsl<S, T>) -> Self where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
fn from_hsv<S>(inp: Hsv<S, T>) -> Self where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
fn from_hwb<S>(inp: Hwb<S, T>) -> Self where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
impl<Wp, T> Into<(T, T, T)> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> IntoColor<Wp, T> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
fn into_xyz(self) -> Xyz<Wp, T>
[src]
fn into_yxy(self) -> Yxy<Wp, T>
[src]
fn into_lab(self) -> Lab<Wp, T>
[src]
fn into_lch(self) -> Lch<Wp, T>
[src]
fn into_rgb<S>(self) -> Rgb<Linear<S>, T> where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
fn into_hsl<S>(self) -> Hsl<S, T> where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
fn into_hsv<S>(self) -> Hsv<S, T> where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
fn into_luma(self) -> Luma<Linear<Wp>, T>
[src]
fn into_hwb<S>(self) -> Hwb<S, T> where
S: RgbSpace<WhitePoint = Wp>,
[src]
S: RgbSpace<WhitePoint = Wp>,
impl<Wp, T> Limited for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> Mix for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
type Scalar = T
The type of the mixing factor.
fn mix(&self, other: &Xyz<Wp, T>, factor: T) -> Xyz<Wp, T>
[src]
impl<Wp, T> Mul<T> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
type Output = Xyz<Wp, T>
The resulting type after applying the *
operator.
fn mul(self, c: T) -> <Xyz<Wp, T> as Mul<T>>::Output
[src]
impl<Wp, T> Mul<Xyz<Wp, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
type Output = Xyz<Wp, T>
The resulting type after applying the *
operator.
fn mul(self, other: Xyz<Wp, T>) -> <Xyz<Wp, T> as Mul<Xyz<Wp, T>>>::Output
[src]
impl<Wp, T> MulAssign<T> for Xyz<Wp, T> where
T: Component + Float + MulAssign<T>,
Wp: WhitePoint,
[src]
T: Component + Float + MulAssign<T>,
Wp: WhitePoint,
fn mul_assign(&mut self, c: T)
[src]
impl<Wp, T> MulAssign<Xyz<Wp, T>> for Xyz<Wp, T> where
T: Component + Float + MulAssign<T>,
Wp: WhitePoint,
[src]
T: Component + Float + MulAssign<T>,
Wp: WhitePoint,
fn mul_assign(&mut self, other: Xyz<Wp, T>)
[src]
impl<Wp, T> PartialEq<Xyz<Wp, T>> for Xyz<Wp, T> where
T: PartialEq<T> + Component + Float,
Wp: PartialEq<Wp> + WhitePoint,
[src]
T: PartialEq<T> + Component + Float,
Wp: PartialEq<Wp> + WhitePoint,
impl<Wp, T> Pixel<T> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
const CHANNELS: usize
[src]
fn as_raw<P>(&self) -> &P where
P: RawPixel<T> + ?Sized,
[src]
P: RawPixel<T> + ?Sized,
fn as_raw_mut<P>(&mut self) -> &mut P where
P: RawPixel<T> + ?Sized,
[src]
P: RawPixel<T> + ?Sized,
fn into_raw<P>(self) -> P where
P: RawPixelSized<T>,
[src]
P: RawPixelSized<T>,
fn from_raw<P>(pixel: &P) -> &Self where
P: RawPixel<T> + ?Sized,
[src]
P: RawPixel<T> + ?Sized,
fn from_raw_mut<P>(pixel: &mut P) -> &mut Self where
P: RawPixel<T> + ?Sized,
[src]
P: RawPixel<T> + ?Sized,
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> RelativeEq<Xyz<Wp, T>> for Xyz<Wp, T> where
T: Component + Float + RelativeEq<T>,
Wp: WhitePoint + PartialEq<Wp>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
<T as AbsDiffEq<T>>::Epsilon: Float,
[src]
T: Component + Float + RelativeEq<T>,
Wp: WhitePoint + PartialEq<Wp>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
<T as AbsDiffEq<T>>::Epsilon: Float,
fn default_max_relative() -> <T as AbsDiffEq<T>>::Epsilon
[src]
fn relative_eq(
&self,
other: &Xyz<Wp, T>,
epsilon: <T as AbsDiffEq<T>>::Epsilon,
max_relative: <T as AbsDiffEq<T>>::Epsilon
) -> bool
[src]
&self,
other: &Xyz<Wp, T>,
epsilon: <T as AbsDiffEq<T>>::Epsilon,
max_relative: <T as AbsDiffEq<T>>::Epsilon
) -> bool
fn relative_ne(
&self,
other: &Xyz<Wp, T>,
epsilon: <T as AbsDiffEq<T>>::Epsilon,
max_relative: <T as AbsDiffEq<T>>::Epsilon
) -> bool
[src]
&self,
other: &Xyz<Wp, T>,
epsilon: <T as AbsDiffEq<T>>::Epsilon,
max_relative: <T as AbsDiffEq<T>>::Epsilon
) -> bool
impl<Wp, T> Shade for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
type Scalar = T
The type of the lighten/darken amount.
fn lighten(&self, amount: T) -> Xyz<Wp, T>
[src]
fn darken(&self, amount: Self::Scalar) -> Self
[src]
impl<Wp, T> StructuralPartialEq for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
impl<Wp, T> Sub<T> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
type Output = Xyz<Wp, T>
The resulting type after applying the -
operator.
fn sub(self, c: T) -> <Xyz<Wp, T> as Sub<T>>::Output
[src]
impl<Wp, T> Sub<Xyz<Wp, T>> for Xyz<Wp, T> where
T: Component + Float,
Wp: WhitePoint,
[src]
T: Component + Float,
Wp: WhitePoint,
type Output = Xyz<Wp, T>
The resulting type after applying the -
operator.
fn sub(self, other: Xyz<Wp, T>) -> <Xyz<Wp, T> as Sub<Xyz<Wp, T>>>::Output
[src]
impl<Wp, T> SubAssign<T> for Xyz<Wp, T> where
T: Component + Float + SubAssign<T>,
Wp: WhitePoint,
[src]
T: Component + Float + SubAssign<T>,
Wp: WhitePoint,
fn sub_assign(&mut self, c: T)
[src]
impl<Wp, T> SubAssign<Xyz<Wp, T>> for Xyz<Wp, T> where
T: Component + Float + SubAssign<T>,
Wp: WhitePoint,
[src]
T: Component + Float + SubAssign<T>,
Wp: WhitePoint,
fn sub_assign(&mut self, other: Xyz<Wp, T>)
[src]
impl<Wp, T> UlpsEq<Xyz<Wp, T>> for Xyz<Wp, T> where
T: Component + Float + UlpsEq<T>,
Wp: WhitePoint + PartialEq<Wp>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
<T as AbsDiffEq<T>>::Epsilon: Float,
[src]
T: Component + Float + UlpsEq<T>,
Wp: WhitePoint + PartialEq<Wp>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
<T as AbsDiffEq<T>>::Epsilon: Float,
Auto Trait Implementations
impl<Wp, T> RefUnwindSafe for Xyz<Wp, T> where
T: RefUnwindSafe,
Wp: RefUnwindSafe,
T: RefUnwindSafe,
Wp: RefUnwindSafe,
impl<Wp, T> Send for Xyz<Wp, T> where
T: Send,
Wp: Send,
T: Send,
Wp: Send,
impl<Wp, T> Sync for Xyz<Wp, T> where
T: Sync,
Wp: Sync,
T: Sync,
Wp: Sync,
impl<Wp, T> Unpin for Xyz<Wp, T> where
T: Unpin,
Wp: Unpin,
T: Unpin,
Wp: Unpin,
impl<Wp, T> UnwindSafe for Xyz<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
D: FromColor<Dwp, T>,
Dwp: WhitePoint,
S: IntoColor<Swp, T>,
Swp: WhitePoint,
T: Component + Float,
[src]
D: FromColor<Dwp, T>,
Dwp: WhitePoint,
S: IntoColor<Swp, T>,
Swp: WhitePoint,
T: Component + Float,
fn adapt_from_using<M>(color: S, method: 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
D: AdaptFrom<S, Swp, Dwp, T>,
Dwp: WhitePoint,
Swp: WhitePoint,
T: Component + Float,
[src]
D: AdaptFrom<S, Swp, Dwp, T>,
Dwp: WhitePoint,
Swp: WhitePoint,
T: Component + Float,
fn adapt_into_using<M>(self, method: M) -> D where
M: TransformMatrix<Swp, Dwp, T>,
[src]
M: TransformMatrix<Swp, Dwp, T>,
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,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, Right> ClosedAdd<Right> for T where
T: Add<Right, Output = T> + AddAssign<Right>,
T: Add<Right, Output = T> + AddAssign<Right>,
impl<T, Right> ClosedDiv<Right> for T where
T: Div<Right, Output = T> + DivAssign<Right>,
T: Div<Right, Output = T> + DivAssign<Right>,
impl<T, Right> ClosedMul<Right> for T where
T: Mul<Right, Output = T> + MulAssign<Right>,
T: Mul<Right, Output = T> + MulAssign<Right>,
impl<T, Right> ClosedSub<Right> for T where
T: Sub<Right, Output = T> + SubAssign<Right>,
T: Sub<Right, Output = T> + SubAssign<Right>,
impl<T> Content for T where
T: Copy,
[src]
T: Copy,
type Owned = T
A type that holds a sized version of the content.
fn read<F, E>(size: usize, f: F) -> Result<T, E> where
F: FnOnce(&mut T) -> Result<(), E>,
[src]
F: FnOnce(&mut T) -> Result<(), E>,
fn get_elements_size() -> usize
[src]
fn to_void_ptr(&self) -> *const ()
[src]
fn ref_from_ptr(ptr: *mut (), size: usize) -> Option<*mut T>
[src]
fn is_size_suitable(size: usize) -> bool
[src]
impl<T, U> ConvertFrom<T> for U where
U: From<T> + Limited,
[src]
U: From<T> + Limited,
fn convert_from(t: T) -> U
[src]
fn try_convert_from(t: T) -> Result<U, OutOfBounds<U>>
[src]
fn convert_unclamped_from(val: T) -> Self
[src]
impl<T, U> ConvertInto<U> for T where
U: ConvertFrom<T>,
[src]
U: ConvertFrom<T>,
fn convert_into(self) -> U
[src]
fn convert_unclamped_into(self) -> U
[src]
fn try_convert_into(self) -> Result<U, OutOfBounds<U>>
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> Scalar for T where
T: PartialEq<T> + Copy + Any + Debug,
[src]
T: PartialEq<T> + Copy + Any + Debug,
impl<T> SetParameter for T
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
T: Parameter<Self>,
impl<T> SetParameter for T
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
T: Parameter<Self>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn is_in_subset(&self) -> bool
unsafe fn to_subset_unchecked(&self) -> SS
fn from_subset(element: &SS) -> SP
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
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.
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.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,