[][src]Trait palette::Saturate

pub trait Saturate: Sized {
    type Scalar: Float;
    fn saturate(&self, factor: Self::Scalar) -> Self;

    fn desaturate(&self, factor: Self::Scalar) -> Self { ... }
}

A trait for colors where the saturation (or chroma) can be manipulated without conversion.

use palette::{Hsv, Saturate};

let a = Hsv::new(0.0, 0.25, 1.0);
let b = Hsv::new(0.0, 1.0, 1.0);

assert_eq!(a.saturate(1.0), b.desaturate(0.5));

Associated Types

type Scalar: Float

The type of the (de)saturation factor.

Loading content...

Required methods

fn saturate(&self, factor: Self::Scalar) -> Self

Increase the saturation by factor.

Loading content...

Provided methods

fn desaturate(&self, factor: Self::Scalar) -> Self

Decrease the saturation by factor.

Loading content...

Implementors

impl<C: Saturate> Saturate for Alpha<C, C::Scalar>[src]

type Scalar = C::Scalar

impl<S, T> Saturate for Color<S, T> where
    T: Float + Component,
    S: RgbSpace
[src]

type Scalar = T

impl<S, T> Saturate for Hsl<S, T> where
    T: Component + Float,
    S: RgbSpace
[src]

type Scalar = T

impl<S, T> Saturate for Hsv<S, T> where
    T: Component + Float,
    S: RgbSpace
[src]

type Scalar = T

impl<Wp, T> Saturate for Lch<Wp, T> where
    T: Component + Float,
    Wp: WhitePoint
[src]

type Scalar = T

Loading content...