Struct palette::Luma [] [src]

pub struct Luma<T: Float = f32> {
    pub luma: T,
}

Linear 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.

Methods

impl<T: Float> Luma<T>
[src]

fn new(luma: T) -> Luma<T>

Linear luminance.

fn new_u8(luma: u8) -> Luma<T>

Linear luminance from an 8 bit value.

Trait Implementations

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

fn eq(&self, __arg_0: &Luma<T>) -> bool

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, __arg_0: &Luma<T>) -> bool

This method tests for !=.

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

fn fmt(&self, __arg_0: &mut Formatter) -> Result

Formats the value using the given formatter.

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

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

fn clone(&self) -> Luma<T>

Returns a copy of the value. Read more

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

Performs copy-assignment from source. Read more

impl<T: Float> Limited for Luma<T>
[src]

fn is_valid(&self) -> bool

Check if the color's components are within the expected ranges.

fn clamp(&self) -> Luma<T>

Return a new color where the components has been clamped to the nearest valid values. Read more

fn clamp_self(&mut self)

Clamp the color's components to the nearest valid values.

impl<T: Float> Mix for Luma<T>
[src]

type Scalar = T

The type of the mixing factor.

fn mix(&self, other: &Luma<T>, factor: T) -> Luma<T>

Mix the color with an other color, by factor. Read more

impl<T: Float> Shade for Luma<T>
[src]

type Scalar = T

The type of the lighten/darken amount.

fn lighten(&self, amount: T) -> Luma<T>

Lighten the color by amount.

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

Darken the color by amount.

impl<T: Float> Default for Luma<T>
[src]

fn default() -> Luma<T>

Returns the "default value" for a type. Read more

impl<T: Float> Add<Luma<T>> for Luma<T>
[src]

type Output = Luma<T>

The resulting type after applying the + operator

fn add(self, other: Luma<T>) -> Luma<T>

The method for the + operator

impl<T: Float> Add<T> for Luma<T>
[src]

type Output = Luma<T>

The resulting type after applying the + operator

fn add(self, c: T) -> Luma<T>

The method for the + operator

impl<T: Float> Sub<Luma<T>> for Luma<T>
[src]

type Output = Luma<T>

The resulting type after applying the - operator

fn sub(self, other: Luma<T>) -> Luma<T>

The method for the - operator

impl<T: Float> Sub<T> for Luma<T>
[src]

type Output = Luma<T>

The resulting type after applying the - operator

fn sub(self, c: T) -> Luma<T>

The method for the - operator

impl<T: Float> Mul<Luma<T>> for Luma<T>
[src]

type Output = Luma<T>

The resulting type after applying the * operator

fn mul(self, other: Luma<T>) -> Luma<T>

The method for the * operator

impl<T: Float> Mul<T> for Luma<T>
[src]

type Output = Luma<T>

The resulting type after applying the * operator

fn mul(self, c: T) -> Luma<T>

The method for the * operator

impl<T: Float> Div<Luma<T>> for Luma<T>
[src]

type Output = Luma<T>

The resulting type after applying the / operator

fn div(self, other: Luma<T>) -> Luma<T>

The method for the / operator

impl<T: Float> Div<T> for Luma<T>
[src]

type Output = Luma<T>

The resulting type after applying the / operator

fn div(self, c: T) -> Luma<T>

The method for the / operator

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

fn from(color: Color<T>) -> Luma<T>

Performs the conversion.

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

fn from(color: Alpha<Luma<T>, T>) -> Luma<T>

Performs the conversion.

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

fn from(other: Alpha<Rgb<T>, T>) -> Luma<T>

Performs the conversion.

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

fn from(other: Alpha<Xyz<T>, T>) -> Luma<T>

Performs the conversion.

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

fn from(other: Alpha<Lab<T>, T>) -> Luma<T>

Performs the conversion.

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

fn from(other: Alpha<Lch<T>, T>) -> Luma<T>

Performs the conversion.

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

fn from(other: Alpha<Hsv<T>, T>) -> Luma<T>

Performs the conversion.

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

fn from(other: Alpha<Hsl<T>, T>) -> Luma<T>

Performs the conversion.

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

fn from(other: Alpha<Color<T>, T>) -> Luma<T>

Performs the conversion.

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

fn from(rgb: Rgb<T>) -> Luma<T>

Performs the conversion.

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

fn from(xyz: Xyz<T>) -> Luma<T>

Performs the conversion.

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

fn from(lab: Lab<T>) -> Luma<T>

Performs the conversion.

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

fn from(lch: Lch<T>) -> Luma<T>

Performs the conversion.

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

fn from(hsv: Hsv<T>) -> Luma<T>

Performs the conversion.

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

fn from(hsl: Hsl<T>) -> Luma<T>

Performs the conversion.