Struct Lch

Source
pub struct Lch {
    pub lightness: f64,
    pub chroma: f64,
    pub hue: f64,
    pub alpha: f32,
}
Expand description

A cylindrical colour space representing within the CIE colour space. The components are:

  • Lightness / Luminance - a number between 0.0 and 100.0
  • Chroma - a number between 0.0 and 150.0
  • Hue - a number between 0.0 and 360.0
  • Alpha - a number between 0.0 and 100.0

Fields§

§lightness: f64§chroma: f64§hue: f64§alpha: f32

Implementations§

Source§

impl Lch

Source

pub fn new(lightness: f64, chroma: f64, hue: f64, alpha: f32) -> Self

Trait Implementations§

Source§

impl Clone for Lch

Source§

fn clone(&self) -> Lch

Returns a copy of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl<T, U> ColorMixPolar<T, U> for Lch
where Self: From<T> + From<U>,

Source§

fn mix_polar( first: T, second: U, percentage: f64, hue_interpolation: HueInterpolation, ) -> Self

Source§

impl Debug for Lch

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for Lch

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl From<A98Rgb> for Lch

Source§

fn from(value: A98Rgb) -> Self

Converts to this type from the input type.
Source§

impl From<Color> for Lch

Source§

fn from(value: Color) -> Self

Converts to this type from the input type.
Source§

impl From<Hex> for Lch

Source§

fn from(value: Hex) -> Self

Converts to this type from the input type.
Source§

impl From<Hsl> for Lch

Source§

fn from(value: Hsl) -> Self

Converts to this type from the input type.
Source§

impl From<Hsv> for Lch

Source§

fn from(value: Hsv) -> Self

Converts to this type from the input type.
Source§

impl From<Hwb> for Lch

Source§

fn from(value: Hwb) -> Self

Converts to this type from the input type.
Source§

impl From<Lab> for Lch

Source§

fn from(value: Lab) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for A98Rgb

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for Color

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for Hex

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for Hsl

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for Hsv

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for Hwb

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for Lab

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for LinearRgb

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for Oklab

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for Oklch

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for RgbColor

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for Srgb

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for XyzD50

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for XyzD65

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for Lch

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<Named> for Lch

Source§

fn from(value: Named) -> Self

Converts to this type from the input type.
Source§

impl From<Oklab> for Lch

Source§

fn from(value: Oklab) -> Self

Converts to this type from the input type.
Source§

impl From<Oklch> for Lch

Source§

fn from(value: Oklch) -> Self

Converts to this type from the input type.
Source§

impl From<Srgb> for Lch

Source§

fn from(value: Srgb) -> Self

Converts to this type from the input type.
Source§

impl From<XyzD50> for Lch

Source§

fn from(value: XyzD50) -> Self

Converts to this type from the input type.
Source§

impl From<XyzD65> for Lch

Source§

fn from(value: XyzD65) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for Lch

Source§

fn eq(&self, other: &Lch) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Lch

Source§

impl StructuralPartialEq for Lch

Auto Trait Implementations§

§

impl Freeze for Lch

§

impl RefUnwindSafe for Lch

§

impl Send for Lch

§

impl Sync for Lch

§

impl Unpin for Lch

§

impl UnwindSafe for Lch

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<C, T> ColorDistance<T> for C
where C: Copy, Lab: From<C> + From<T>,

Source§

fn close_to(&self, other: T, tolerance: f64) -> bool

Compares self to other via delta_e, checking that the result is less than or equal to tolerance. Read more
Source§

fn far_from(&self, other: T, tolerance: f64) -> bool

Compares self to other via delta_e, checking that the result is greater than or equal to tolerance. Read more
Source§

fn delta_e(&self, other: T) -> f64

This uses the CIEDE2000 Delta E formula difference between self and other. Read more
Source§

impl<T, U, V> ColorMix<T, U> for V
where V: ColorMixPolar<T, U> + PolarColor, T: Into<V>, U: Into<V>,

Source§

fn mix(first: T, second: U, percentage: f64) -> V

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<C, T> WcagColorContrast<T> for C
where C: Copy, T: Copy, Srgb: From<C> + From<T>,

Source§

fn wcag_contrast_ratio(&self, other: T) -> f64

Calculate the contrast ratio between self and other. colors according to WCAG 2.1. Returns a value between 1:1 and 21:1 Read more
Source§

fn wcag_level(&self, other: T) -> WcagLevel

Get the WCAG level for the contrast between self and other. Read more
Source§

fn find_minimum_contrast<Space>( &self, other: T, level: WcagLevel, ) -> Option<Space>
where Self: WcagColorContrast<Space>, Space: ColorMix<Self, T> + From<Self> + From<T> + Copy + PartialEq + Debug, Srgb: From<Space>, Hex: From<Space>,

Find the closest color that meets a specific WCAG level against a background. Read more