Struct palette::gradient::Gradient[][src]

pub struct Gradient<C: Mix + Clone>(_);

A linear interpolation between colors.

It's used to smoothly transition between a series of colors, that can be either evenly spaced or have customized positions. The gradient is continuous between the control points, but it's possible to iterate over a number of evenly spaced points using the take method. Any point outside the domain of the gradient will have the same color as the closest control point.

Methods

impl<C: Mix + Clone> Gradient<C>
[src]

Create a gradient of evenly spaced colors with the domain [0.0, 1.0]. There must be at least one color.

Create a gradient of colors with custom spacing and domain. There must be at least one color and they are expected to be ordered by their position value.

Get a color from the gradient. The color of the closest control point will be returned if i is outside the domain.

Important traits for Take<'a, C>

Take n evenly spaced colors from the gradient, as an iterator.

Slice this gradient to limit its domain.

Get the limits of this gradient's domain.

Trait Implementations

impl<C: Clone + Mix + Clone> Clone for Gradient<C> where
    C::Scalar: Clone
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<C: Debug + Mix + Clone> Debug for Gradient<C> where
    C::Scalar: Debug
[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl<C> Send for Gradient<C> where
    C: Send,
    <C as Mix>::Scalar: Send

impl<C> Sync for Gradient<C> where
    C: Sync,
    <C as Mix>::Scalar: Sync