pub struct Hsla {
pub hue: f32,
pub saturation: f32,
pub lightness: f32,
pub alpha: f32,
}Expand description
Fields§
§hue: f32Hue color angle in the [0.0..=360.0] range.
saturation: f32Saturation amount in the [0.0..=1.0] range, zero is gray, one is full color.
lightness: f32Lightness amount in the [0.0..=1.0] range, zero is black, one is white.
alpha: f32Alpha channel in the [0.0..=1.0] range, zero is invisible, one is opaque.
Implementations§
source§impl Hsla
impl Hsla
sourcepub fn set_hue<H: Into<AngleDegree>>(&mut self, hue: H)
pub fn set_hue<H: Into<AngleDegree>>(&mut self, hue: H)
Sets the hue color angle.
The value is normalized to be in the [0.0..=360.0] range, that is 362.deg() becomes 2.0.
sourcepub fn set_lightness<L: Into<Factor>>(&mut self, lightness: L)
pub fn set_lightness<L: Into<Factor>>(&mut self, lightness: L)
Sets the lightness value.
sourcepub fn set_saturation<S: Into<Factor>>(&mut self, saturation: S)
pub fn set_saturation<S: Into<Factor>>(&mut self, saturation: S)
Sets the saturation value.
sourcepub fn with_hue<H: Into<AngleDegree>>(self, hue: H) -> Self
pub fn with_hue<H: Into<AngleDegree>>(self, hue: H) -> Self
Returns a copy of this color with a new hue.
sourcepub fn with_lightness<L: Into<Factor>>(self, lightness: L) -> Self
pub fn with_lightness<L: Into<Factor>>(self, lightness: L) -> Self
Returns a copy of this color with a new lightness.
sourcepub fn with_saturation<S: Into<Factor>>(self, saturation: S) -> Self
pub fn with_saturation<S: Into<Factor>>(self, saturation: S) -> Self
Returns a copy of this color with a new saturation.
sourcepub fn with_alpha<A: Into<Factor>>(self, alpha: A) -> Self
pub fn with_alpha<A: Into<Factor>>(self, alpha: A) -> Self
Returns a copy of this color with a new alpha.
sourcepub fn slerp(self, to: Self, factor: Factor) -> Self
pub fn slerp(self, to: Self, factor: Factor) -> Self
Interpolate in the LerpSpace::Hsla mode.
sourcepub fn is_chromatic(self) -> bool
pub fn is_chromatic(self) -> bool
If the saturation is more than zero.
If false the color is achromatic, the hue value does not affect the color.
sourcepub fn slerp_chromatic(self, to: Self, factor: Factor) -> Self
pub fn slerp_chromatic(self, to: Self, factor: Factor) -> Self
Interpolate in the LerpSpace::HslaChromatic mode.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Hsla
impl<'de> Deserialize<'de> for Hsla
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl From<Hsla> for GradientStop
impl From<Hsla> for GradientStop
source§impl From<Hsla> for PreMulRgba
impl From<Hsla> for PreMulRgba
source§impl From<PreMulRgba> for Hsla
impl From<PreMulRgba> for Hsla
source§fn from(c: PreMulRgba) -> Self
fn from(c: PreMulRgba) -> Self
source§impl IntoVar<GradientStop> for Hsla
impl IntoVar<GradientStop> for Hsla
source§impl IntoVar<Hsla> for PreMulRgba
impl IntoVar<Hsla> for PreMulRgba
source§impl IntoVar<PreMulRgba> for Hsla
impl IntoVar<PreMulRgba> for Hsla
source§impl MixAdjust for Hsla
impl MixAdjust for Hsla
source§fn mix_normal(self, background: Self) -> Self
fn mix_normal(self, background: Self) -> Self
source§fn mix_multiply(self, background: Self) -> Self
fn mix_multiply(self, background: Self) -> Self
source§fn mix_screen(self, background: Self) -> Self
fn mix_screen(self, background: Self) -> Self
source§fn mix_overlay(self, background: Self) -> Self
fn mix_overlay(self, background: Self) -> Self
source§fn mix_darken(self, background: Self) -> Self
fn mix_darken(self, background: Self) -> Self
source§fn mix_lighten(self, background: Self) -> Self
fn mix_lighten(self, background: Self) -> Self
source§fn mix_colordodge(self, background: Self) -> Self
fn mix_colordodge(self, background: Self) -> Self
source§fn mix_colorburn(self, background: Self) -> Self
fn mix_colorburn(self, background: Self) -> Self
source§fn mix_hardlight(self, background: Self) -> Self
fn mix_hardlight(self, background: Self) -> Self
source§fn mix_softlight(self, background: Self) -> Self
fn mix_softlight(self, background: Self) -> Self
source§fn mix_difference(self, background: Self) -> Self
fn mix_difference(self, background: Self) -> Self
source§fn mix_exclusion(self, background: Self) -> Self
fn mix_exclusion(self, background: Self) -> Self
source§fn mix_saturation(self, background: Self) -> Self
fn mix_saturation(self, background: Self) -> Self
source§fn mix_luminosity(self, background: Self) -> Self
fn mix_luminosity(self, background: Self) -> Self
source§fn lighten<A: Into<Factor>>(self, amount: A) -> Self
fn lighten<A: Into<Factor>>(self, amount: A) -> Self
amount to the color lightness. Read moresource§fn darken<A: Into<Factor>>(self, amount: A) -> Self
fn darken<A: Into<Factor>>(self, amount: A) -> Self
amount from the color lightness. Read moresource§fn desaturate<A: Into<Factor>>(self, amount: A) -> Self
fn desaturate<A: Into<Factor>>(self, amount: A) -> Self
amount from the color saturation. Read moresource§fn with_lightness<L: Into<Factor>>(self, lightness: L) -> Self
fn with_lightness<L: Into<Factor>>(self, lightness: L) -> Self
lightness.source§fn mix(self, mode: MixBlendMode, background: Self) -> Selfwhere
Self: Sized,
fn mix(self, mode: MixBlendMode, background: Self) -> Selfwhere
Self: Sized,
background over self using the mode.source§impl PartialEq for Hsla
impl PartialEq for Hsla
source§impl Transitionable for Hsla
impl Transitionable for Hsla
source§fn lerp(self, to: &Self, step: EasingStep) -> Self
fn lerp(self, to: &Self, step: EasingStep) -> Self
self -> to by step.impl Copy for Hsla
impl IntoValue<ColorStop> for Hsla
impl IntoValue<GradientStop> for Hsla
impl IntoValue<Hsla> for Hsva
impl IntoValue<Hsla> for PreMulRgba
impl IntoValue<Hsla> for Rgba
impl IntoValue<Hsva> for Hsla
impl IntoValue<LightDark> for Hsla
impl IntoValue<PreMulRgba> for Hsla
impl IntoValue<Rgba> for Hsla
Auto Trait Implementations§
impl Freeze for Hsla
impl RefUnwindSafe for Hsla
impl Send for Hsla
impl Sync for Hsla
impl Unpin for Hsla
impl UnwindSafe for Hsla
Blanket Implementations§
source§impl<T> AnyVarValue for Twhere
T: VarValue,
impl<T> AnyVarValue for Twhere
T: VarValue,
source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
dyn Any methods.source§fn clone_boxed(&self) -> Box<dyn AnyVarValue>
fn clone_boxed(&self) -> Box<dyn AnyVarValue>
source§fn clone_boxed_var(&self) -> Box<dyn AnyVar>
fn clone_boxed_var(&self) -> Box<dyn AnyVar>
LocalVar<Self>.source§fn eq_any(&self, other: &(dyn AnyVarValue + 'static)) -> bool
fn eq_any(&self, other: &(dyn AnyVarValue + 'static)) -> bool
self equals other.source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more