[][src]Struct nannou::color::Xyz

pub struct Xyz<T = f32> where
    T: Float
{ pub x: T, pub y: T, pub z: T, }

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 assumes the CIE Standard Illuminant D65 as the white point, and the 2° standard colorimetric observer.

Fields

x: T

X is the scale of what can be seen as a response curve for the cone cells in the human eye. It goes from 0.0 to 0.95047.

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. It goes from 0.0 to 1.08883.

Methods

impl<T> Xyz<T> where
    T: Float
[src]

pub fn new(x: T, y: T, z: T) -> Xyz<T>[src]

CIE XYZ.

Trait Implementations

impl<T> IntoColor<T> for Xyz<T> where
    T: Float
[src]

fn into_hwb(self) -> Hwb<T>[src]

Convert into HWB color space

impl<T> ComponentWise for Xyz<T> where
    T: Float
[src]

type Scalar = T

The scalar type for color components.

impl<T> ApproxEq for Xyz<T> where
    T: ApproxEq + Float,
    <T as ApproxEq>::Epsilon: Copy,
    <T as ApproxEq>::Epsilon: Float
[src]

type Epsilon = <T as ApproxEq>::Epsilon

Used for specifying relative comparisons.

impl<T> From<Xyz<T>> for Alpha<Lch<T>, T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Alpha<Hwb<T>, T> where
    T: Float
[src]

impl<T> From<Luma<T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Alpha<Rgb<T>, T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Alpha<Luma<T>, T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Lch<T> where
    T: Float
[src]

impl<T> From<Lab<T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Alpha<Luma<T>, T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Alpha<Hwb<T>, T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Lab<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Color<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Luma<T> where
    T: Float
[src]

impl<T> From<Alpha<Lch<T>, T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Alpha<Hsl<T>, T> where
    T: Float
[src]

impl<T> From<Hwb<T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Lch<T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Hsl<T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Rgb<T> where
    T: Float
[src]

impl<T> From<Alpha<Yxy<T>, T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Alpha<Hsl<T>, T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Yxy<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Alpha<Yxy<T>, T> where
    T: Float
[src]

impl<T> From<Alpha<Xyz<T>, T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Alpha<Rgb<T>, T> where
    T: Float
[src]

impl<T> From<Hsv<T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Hwb<T> where
    T: Float
[src]

impl<T> From<Alpha<Lab<T>, T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Alpha<Hsv<T>, T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Alpha<Hsv<T>, T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Hsl<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Hsv<T> where
    T: Float
[src]

impl<T> From<Xyz<T>> for Alpha<Lab<T>, T> where
    T: Float
[src]

impl<T> From<Yxy<T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Color<T>> for Xyz<T> where
    T: Float
[src]

impl<T> From<Rgb<T>> for Xyz<T> where
    T: Float
[src]

impl<T> Div<Xyz<T>> for Xyz<T> where
    T: Float
[src]

type Output = Xyz<T>

The resulting type after applying the / operator.

impl<T> Div<T> for Xyz<T> where
    T: Float
[src]

type Output = Xyz<T>

The resulting type after applying the / operator.

impl<T> Limited for Xyz<T> where
    T: Float
[src]

impl<T> Default for Xyz<T> where
    T: Float
[src]

impl<T> Mul<Xyz<T>> for Xyz<T> where
    T: Float
[src]

type Output = Xyz<T>

The resulting type after applying the * operator.

impl<T> Mul<T> for Xyz<T> where
    T: Float
[src]

type Output = Xyz<T>

The resulting type after applying the * operator.

impl<T> FromColor<T> for Xyz<T> where
    T: Float
[src]

fn from_lch(inp: Lch<T>) -> Self[src]

Convert from LCh° color space

fn from_hsl(inp: Hsl<T>) -> Self[src]

Convert from HSL color space

fn from_hsv(inp: Hsv<T>) -> Self[src]

Convert from HSV color space

fn from_hwb(inp: Hwb<T>) -> Self[src]

Convert from HWB color space

impl<T> Shade for Xyz<T> where
    T: Float
[src]

type Scalar = T

The type of the lighten/darken amount.

fn darken(&self, amount: Self::Scalar) -> Self[src]

Darken the color by amount.

impl<T> Debug for Xyz<T> where
    T: Debug + Float
[src]

impl<T> Copy for Xyz<T> where
    T: Copy + Float
[src]

impl<T> Mix for Xyz<T> where
    T: Float
[src]

type Scalar = T

The type of the mixing factor.

impl<T> PartialEq<Xyz<T>> for Xyz<T> where
    T: PartialEq<T> + Float
[src]

impl<T> Add<T> for Xyz<T> where
    T: Float
[src]

type Output = Xyz<T>

The resulting type after applying the + operator.

impl<T> Add<Xyz<T>> for Xyz<T> where
    T: Float
[src]

type Output = Xyz<T>

The resulting type after applying the + operator.

impl<T> Sub<Xyz<T>> for Xyz<T> where
    T: Float
[src]

type Output = Xyz<T>

The resulting type after applying the - operator.

impl<T> Sub<T> for Xyz<T> where
    T: Float
[src]

type Output = Xyz<T>

The resulting type after applying the - operator.

impl<T> Clone for Xyz<T> where
    T: Clone + Float
[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl<S> IntoRgba<S> for Xyz<S> where
    S: Float + One
[src]

Auto Trait Implementations

impl<T> Send for Xyz<T> where
    T: Send

impl<T> Sync for Xyz<T> where
    T: Sync

Blanket Implementations

impl<T> From<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Style for T where
    T: Any + Debug + PartialEq<T>, 
[src]

impl<T> Content for T[src]

impl<T> SafeBorrow<T> for T[src]

impl<T> Erased for T

impl<S> FromSample<S> for S[src]

impl<T, U> ToSample<U> for T where
    U: FromSample<T>, 
[src]

impl<S, T> Duplex<S> for T where
    T: FromSample<S> + ToSample<S>, 
[src]

impl<T> SetParameter for T

fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
    T: Parameter<Self>, 

Sets value as a parameter of self.

impl<T> SetParameter for T

fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
    T: Parameter<Self>, 

Sets value as a parameter of self.