pub struct Lch<Wp = D65, T = f32> {
pub l: T,
pub chroma: T,
pub hue: LabHue<T>,
pub white_point: PhantomData<Wp>,
}
Expand description
CIE L*C*h°, a polar version of CIE L*a*b*.
L*C*h° shares its range and perceptual uniformity with L*a*b*, but it’s a cylindrical color space, like HSL and HSV. This gives it the same ability to directly change the hue and colorfulness of a color, while preserving other visual aspects.
Fields§
§l: T
L* is the lightness of the color. 0.0 gives absolute black and 100.0 gives the brightest white.
chroma: T
C* is the colorfulness of the color. It’s similar to saturation. 0.0 gives gray scale colors, and numbers around 128-181 gives fully saturated colors. The upper limit of 128 should include the whole L*a*b* space and some more.
hue: LabHue<T>
The hue of the color, in degrees. Decides if it’s red, blue, purple, etc.
white_point: PhantomData<Wp>
The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.
Implementations§
source§impl<Wp, T> Lch<Wp, T>
impl<Wp, T> Lch<Wp, T>
sourcepub const fn new_const(l: T, chroma: T, hue: LabHue<T>) -> Self
pub const fn new_const(l: T, chroma: T, hue: LabHue<T>) -> Self
Create a CIE L*C*h° color. This is the same as Lch::new
without the
generic hue type. It’s temporary until const fn
supports traits.
sourcepub fn into_components(self) -> (T, T, LabHue<T>)
pub fn into_components(self) -> (T, T, LabHue<T>)
Convert to a (L\*, C\*, h°)
tuple.
sourcepub fn from_components<H: Into<LabHue<T>>>((l, chroma, hue): (T, T, H)) -> Self
pub fn from_components<H: Into<LabHue<T>>>((l, chroma, hue): (T, T, H)) -> Self
Convert from a (L\*, C\*, h°)
tuple.
source§impl<Wp, T> Lch<Wp, T>where
T: Zero + Real,
impl<Wp, T> Lch<Wp, T>where T: Zero + Real,
sourcepub fn min_chroma() -> T
pub fn min_chroma() -> T
Return the chroma
value minimum.
sourcepub fn max_chroma() -> T
pub fn max_chroma() -> T
Return the chroma
value maximum. This value does not cover the entire
color space, but covers enough to be practical for downsampling to
smaller color spaces like sRGB.
sourcepub fn max_extended_chroma() -> T
pub fn max_extended_chroma() -> T
Return the chroma
extended maximum value. This value covers the entire
color space and is included for completeness, but the additional range
should be unnecessary for most use cases.
source§impl<Wp, C> Lch<Wp, C>
impl<Wp, C> Lch<Wp, C>
sourcepub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere
&'a Self: IntoIterator,
pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,
Return an iterator over the colors in the wrapped collections.
sourcepub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere
&'a mut Self: IntoIterator,
pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,
Return an iterator that allows modifying the colors in the wrapped collections.
sourcepub fn get<'a, I, T>(
&'a self,
index: I
) -> Option<Lch<Wp, &<I as SliceIndex<[T]>>::Output>>where
T: 'a,
C: AsRef<[T]>,
I: SliceIndex<[T]> + Clone,
pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Lch<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,
Get a color, or slice of colors, with references to the components at index
. See slice::get
for details.
sourcepub fn get_mut<'a, I, T>(
&'a mut self,
index: I
) -> Option<Lch<Wp, &mut <I as SliceIndex<[T]>>::Output>>where
T: 'a,
C: AsMut<[T]>,
I: SliceIndex<[T]> + Clone,
pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Lch<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,
Get a color, or slice of colors, that allows modifying the components at index
. See slice::get_mut
for details.
source§impl<Wp, T> Lch<Wp, Vec<T>>
impl<Wp, T> Lch<Wp, Vec<T>>
sourcepub fn with_capacity(capacity: usize) -> Self
pub fn with_capacity(capacity: usize) -> Self
Create a struct of vectors with a minimum capacity. See Vec::with_capacity
for details.
sourcepub fn push(&mut self, value: Lch<Wp, T>)
pub fn push(&mut self, value: Lch<Wp, T>)
Push an additional color’s components onto the component vectors. See Vec::push
for details.
sourcepub fn pop(&mut self) -> Option<Lch<Wp, T>>
pub fn pop(&mut self) -> Option<Lch<Wp, T>>
Pop a color’s components from the component vectors. See Vec::pop
for details.
sourcepub fn clear(&mut self)
pub fn clear(&mut self)
Clear the component vectors. See Vec::clear
for details.
Trait Implementations§
source§impl<Wp, T> AbsDiffEq<Lch<Wp, T>> for Lch<Wp, T>where
T: AbsDiffEq,
T::Epsilon: Clone,
LabHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,
impl<Wp, T> AbsDiffEq<Lch<Wp, T>> for Lch<Wp, T>where T: AbsDiffEq, T::Epsilon: Clone, LabHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,
source§fn default_epsilon() -> Self::Epsilon
fn default_epsilon() -> Self::Epsilon
source§fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool
fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool
source§fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool
fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool
AbsDiffEq::abs_diff_eq
.source§impl<Wp, T> AddAssign<Lch<Wp, T>> for Lch<Wp, T>where
T: AddAssign,
impl<Wp, T> AddAssign<Lch<Wp, T>> for Lch<Wp, T>where T: AddAssign,
source§fn add_assign(&mut self, other: Self)
fn add_assign(&mut self, other: Self)
+=
operation. Read moresource§impl<Wp, T> AddAssign<T> for Lch<Wp, T>where
T: AddAssign + Clone,
impl<Wp, T> AddAssign<T> for Lch<Wp, T>where T: AddAssign + Clone,
source§fn add_assign(&mut self, c: T)
fn add_assign(&mut self, c: T)
+=
operation. Read moresource§impl<Wp, T> Ciede2000 for Lch<Wp, T>where
T: Real + RealAngle + One + Zero + Powi + Exp + Trigonometry + Abs + Sqrt + Arithmetics + PartialCmp + Clone,
T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>,
Self: IntoColorUnclamped<Lab<Wp, T>>,
impl<Wp, T> Ciede2000 for Lch<Wp, T>where T: Real + RealAngle + One + Zero + Powi + Exp + Trigonometry + Abs + Sqrt + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>, Self: IntoColorUnclamped<Lab<Wp, T>>,
source§impl<Wp, T> ClampAssign for Lch<Wp, T>where
T: Zero + Real + ClampAssign,
impl<Wp, T> ClampAssign for Lch<Wp, T>where T: Zero + Real + ClampAssign,
source§fn clamp_assign(&mut self)
fn clamp_assign(&mut self)
source§impl<Wp, T> ColorDifference for Lch<Wp, T>where
T: Real + RealAngle + One + Zero + Trigonometry + Abs + Sqrt + Powi + Exp + Arithmetics + PartialCmp + Clone,
T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>,
Self: Into<LabColorDiff<T>>,
impl<Wp, T> ColorDifference for Lch<Wp, T>where T: Real + RealAngle + One + Zero + Trigonometry + Abs + Sqrt + Powi + Exp + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>, Self: Into<LabColorDiff<T>>,
CIEDE2000 distance metric for color difference.
§type Scalar = T
type Scalar = T
palette::color_difference::Ciede2000
source§fn get_color_difference(self, other: Lch<Wp, T>) -> Self::Scalar
fn get_color_difference(self, other: Lch<Wp, T>) -> Self::Scalar
palette::color_difference::Ciede2000
source§impl<'de, Wp, T> Deserialize<'de> for Lch<Wp, T>where
T: Deserialize<'de>,
impl<'de, Wp, T> Deserialize<'de> for Lch<Wp, T>where T: Deserialize<'de>,
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<Wp, T> Distribution<Lch<Wp, T>> for Standardwhere
T: Real + Zero + Sqrt + Mul<Output = T>,
Standard: Distribution<T> + Distribution<LabHue<T>>,
impl<Wp, T> Distribution<Lch<Wp, T>> for Standardwhere T: Real + Zero + Sqrt + Mul<Output = T>, Standard: Distribution<T> + Distribution<LabHue<T>>,
source§fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Lch<Wp, T>
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Lch<Wp, T>
T
, using rng
as the source of randomness.source§impl<Wp, T, C> Extend<Lch<Wp, T>> for Lch<Wp, C>where
C: Extend<T>,
impl<Wp, T, C> Extend<Lch<Wp, T>> for Lch<Wp, C>where C: Extend<T>,
source§fn extend<I: IntoIterator<Item = Lch<Wp, T>>>(&mut self, iter: I)
fn extend<I: IntoIterator<Item = Lch<Wp, T>>>(&mut self, iter: I)
source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)source§impl<Wp, T, V, const N: usize> From<[Lch<Wp, T>; N]> for Lch<Wp, V>where
[T; N]: Default,
V: FromScalarArray<N, Scalar = T>,
impl<Wp, T, V, const N: usize> From<[Lch<Wp, T>; N]> for Lch<Wp, V>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>,
source§impl<Wp, T, V, const N: usize> From<Lch<Wp, V>> for [Lch<Wp, T>; N]where
Self: Default,
V: IntoScalarArray<N, Scalar = T>,
impl<Wp, T, V, const N: usize> From<Lch<Wp, V>> for [Lch<Wp, T>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>,
source§impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where
_C: IntoColorUnclamped<Self>,
impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where _C: IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Alpha<_C, _A>) -> Self
fn from_color_unclamped(color: Alpha<_C, _A>) -> Self
source§impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,
impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Hsl<_S, T>) -> Self
fn from_color_unclamped(color: Hsl<_S, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self
fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self
source§impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,
impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Hsv<_S, T>) -> Self
fn from_color_unclamped(color: Hsv<_S, T>) -> Self
source§impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,
impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Hwb<_S, T>) -> Self
fn from_color_unclamped(color: Hwb<_S, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where
T: Zero + Hypot,
Lab<Wp, T>: GetHue<Hue = LabHue<T>>,
impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where T: Zero + Hypot, Lab<Wp, T>: GetHue<Hue = LabHue<T>>,
source§fn from_color_unclamped(color: Lab<Wp, T>) -> Self
fn from_color_unclamped(color: Lab<Wp, T>) -> Self
source§impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where
S: RgbStandard,
Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,
impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(
color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>
) -> Self
fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> ) -> Self
source§impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where
S: RgbStandard,
Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,
impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(
color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>
) -> Self
fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> ) -> Self
source§impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where
S: RgbStandard,
Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,
impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(
color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>
) -> Self
fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> ) -> Self
source§impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where
S: RgbStandard,
Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,
impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(
color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>
) -> Self
fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> ) -> Self
source§impl<S, T> FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where
S: LumaStandard,
Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,
impl<S, T> FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Lch<<S as LumaStandard>::WhitePoint, T>) -> Self
fn from_color_unclamped(color: Lch<<S as LumaStandard>::WhitePoint, T>) -> Self
source§impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsl<T>where
D65: WhitePoint<T>,
Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,
impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,
source§impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsv<T>where
D65: WhitePoint<T>,
Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,
impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,
source§impl<T> FromColorUnclamped<Lch<D65, T>> for Okhwb<T>where
D65: WhitePoint<T>,
Okhsv<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,
impl<T> FromColorUnclamped<Lch<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,
source§impl<T> FromColorUnclamped<Lch<D65, T>> for Oklab<T>where
D65: WhitePoint<T>,
Xyz<D65, T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,
impl<T> FromColorUnclamped<Lch<D65, T>> for Oklab<T>where D65: WhitePoint<T>, Xyz<D65, T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,
source§impl<T> FromColorUnclamped<Lch<D65, T>> for Oklch<T>where
D65: WhitePoint<T>,
Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,
impl<T> FromColorUnclamped<Lch<D65, T>> for Oklch<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,
source§impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where
Wp: WhitePoint<T>,
Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Lch<Wp, T>) -> Self
fn from_color_unclamped(color: Lch<Wp, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where
T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,
impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,
source§fn from_color_unclamped(color: Lch<Wp, T>) -> Self
fn from_color_unclamped(color: Lch<Wp, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lch<Wp, T>
impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lch<Wp, T>
source§fn from_color_unclamped(color: Lch<Wp, T>) -> Self
fn from_color_unclamped(color: Lch<Wp, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where
Wp: WhitePoint<T>,
Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Lch<Wp, T>) -> Self
fn from_color_unclamped(color: Lch<Wp, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where
Wp: WhitePoint<T>,
Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Lch<Wp, T>) -> Self
fn from_color_unclamped(color: Lch<Wp, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Lch<Wp, T>) -> Self
fn from_color_unclamped(color: Lch<Wp, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where
Wp: WhitePoint<T>,
Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Lch<Wp, T>) -> Self
fn from_color_unclamped(color: Lch<Wp, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self
fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self
source§impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lch<Wp, T>where
_S: LumaStandard<WhitePoint = Wp>,
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,
impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lch<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Luma<_S, T>) -> Self
fn from_color_unclamped(color: Luma<_S, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Luv<Wp, T>) -> Self
fn from_color_unclamped(color: Luv<Wp, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Okhsl<T>) -> Self
fn from_color_unclamped(color: Okhsl<T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Okhsv<T>) -> Self
fn from_color_unclamped(color: Okhsv<T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Okhwb<T>) -> Self
fn from_color_unclamped(color: Okhwb<T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Oklab<T>) -> Self
fn from_color_unclamped(color: Oklab<T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Oklch<T>) -> Self
fn from_color_unclamped(color: Oklch<T>) -> Self
source§impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lch<Wp, T>where
_S: RgbStandard,
_S::Space: RgbSpace<WhitePoint = Wp>,
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,
impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Rgb<_S, T>) -> Self
fn from_color_unclamped(color: Rgb<_S, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Xyz<Wp, T>) -> Self
fn from_color_unclamped(color: Xyz<Wp, T>) -> Self
source§impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where
Wp: WhitePoint<T>,
Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,
impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,
source§fn from_color_unclamped(color: Yxy<Wp, T>) -> Self
fn from_color_unclamped(color: Yxy<Wp, T>) -> Self
source§impl<Wp, T, C> FromIterator<Lch<Wp, T>> for Lch<Wp, C>where
Self: Extend<Lch<Wp, T>>,
C: Default,
impl<Wp, T, C> FromIterator<Lch<Wp, T>> for Lch<Wp, C>where Self: Extend<Lch<Wp, T>>, C: Default,
source§impl<Wp, T> HasBoolMask for Lch<Wp, T>where
T: HasBoolMask,
impl<Wp, T> HasBoolMask for Lch<Wp, T>where T: HasBoolMask,
§type Mask = <T as HasBoolMask>::Mask
type Mask = <T as HasBoolMask>::Mask
Self
values.source§impl<'a, Wp, C> IntoIterator for &'a Lch<Wp, C>where
&'a C: IntoIterator + 'a,
impl<'a, Wp, C> IntoIterator for &'a Lch<Wp, C>where &'a C: IntoIterator + 'a,
source§impl<'a, Wp, C> IntoIterator for &'a mut Lch<Wp, C>where
&'a mut C: IntoIterator + 'a,
impl<'a, Wp, C> IntoIterator for &'a mut Lch<Wp, C>where &'a mut C: IntoIterator + 'a,
source§impl<Wp, C> IntoIterator for Lch<Wp, C>where
C: IntoIterator,
impl<Wp, C> IntoIterator for Lch<Wp, C>where C: IntoIterator,
source§impl<Wp, T> IsWithinBounds for Lch<Wp, T>where
T: Zero + Real + PartialCmp + HasBoolMask,
T::Mask: BitAnd<Output = T::Mask>,
impl<Wp, T> IsWithinBounds for Lch<Wp, T>where T: Zero + Real + PartialCmp + HasBoolMask, T::Mask: BitAnd<Output = T::Mask>,
source§fn is_within_bounds(&self) -> T::Mask
fn is_within_bounds(&self) -> T::Mask
source§impl<Wp, T> Lighten for Lch<Wp, T>where
T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone,
T::Mask: LazySelect<T>,
impl<Wp, T> Lighten for Lch<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>,
source§impl<Wp, T> LightenAssign for Lch<Wp, T>where
T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone,
T::Mask: LazySelect<T>,
impl<Wp, T> LightenAssign for Lch<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>,
source§fn lighten_assign(&mut self, factor: T)
fn lighten_assign(&mut self, factor: T)
source§fn lighten_fixed_assign(&mut self, amount: T)
fn lighten_fixed_assign(&mut self, amount: T)
source§impl<Wp, T> Mix for Lch<Wp, T>where
T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,
impl<Wp, T> Mix for Lch<Wp, T>where T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,
source§impl<Wp, T> MixAssign for Lch<Wp, T>where
T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,
impl<Wp, T> MixAssign for Lch<Wp, T>where T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,
source§impl<Wp, T> PartialEq<Lch<Wp, T>> for Lch<Wp, T>where
T: PartialEq,
LabHue<T>: PartialEq,
impl<Wp, T> PartialEq<Lch<Wp, T>> for Lch<Wp, T>where T: PartialEq, LabHue<T>: PartialEq,
source§impl<Wp, T> RelativeContrast for Lch<Wp, T>where
T: Real + Arithmetics + PartialCmp,
T::Mask: LazySelect<T>,
Xyz<Wp, T>: FromColor<Self>,
impl<Wp, T> RelativeContrast for Lch<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, Xyz<Wp, T>: FromColor<Self>,
§type Scalar = T
type Scalar = T
palette::color_difference::Wcag21RelativeContrast
source§fn get_contrast_ratio(self, other: Self) -> T
fn get_contrast_ratio(self, other: Self) -> T
palette::color_difference::Wcag21RelativeContrast
source§fn has_min_contrast_text(
self,
other: Self
) -> <Self::Scalar as HasBoolMask>::Mask
fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
palette::color_difference::Wcag21RelativeContrast
source§fn has_min_contrast_large_text(
self,
other: Self
) -> <Self::Scalar as HasBoolMask>::Mask
fn has_min_contrast_large_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
palette::color_difference::Wcag21RelativeContrast
source§fn has_enhanced_contrast_text(
self,
other: Self
) -> <Self::Scalar as HasBoolMask>::Mask
fn has_enhanced_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
palette::color_difference::Wcag21RelativeContrast
source§fn has_enhanced_contrast_large_text(
self,
other: Self
) -> <Self::Scalar as HasBoolMask>::Mask
fn has_enhanced_contrast_large_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
palette::color_difference::Wcag21RelativeContrast
source§fn has_min_contrast_graphics(
self,
other: Self
) -> <Self::Scalar as HasBoolMask>::Mask
fn has_min_contrast_graphics( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
palette::color_difference::Wcag21RelativeContrast
source§impl<Wp, T> RelativeEq<Lch<Wp, T>> for Lch<Wp, T>where
T: RelativeEq,
T::Epsilon: Clone,
LabHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,
impl<Wp, T> RelativeEq<Lch<Wp, T>> for Lch<Wp, T>where T: RelativeEq, T::Epsilon: Clone, LabHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§fn default_max_relative() -> T::Epsilon
fn default_max_relative() -> T::Epsilon
source§fn relative_eq(
&self,
other: &Self,
epsilon: T::Epsilon,
max_relative: T::Epsilon
) -> bool
fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon ) -> bool
source§fn relative_ne(
&self,
other: &Self,
epsilon: T::Epsilon,
max_relative: T::Epsilon
) -> bool
fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon ) -> bool
RelativeEq::relative_eq
.source§impl<Wp, T> SampleUniform for Lch<Wp, T>where
T: Sqrt + Mul<Output = T> + Clone + SampleUniform,
LabHue<T>: SampleBorrow<LabHue<T>>,
UniformLabHue<T>: UniformSampler<X = LabHue<T>>,
impl<Wp, T> SampleUniform for Lch<Wp, T>where T: Sqrt + Mul<Output = T> + Clone + SampleUniform, LabHue<T>: SampleBorrow<LabHue<T>>, UniformLabHue<T>: UniformSampler<X = LabHue<T>>,
§type Sampler = UniformLch<Wp, T>
type Sampler = UniformLch<Wp, T>
UniformSampler
implementation supporting type X
.source§impl<Wp, T> Saturate for Lch<Wp, T>where
T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone,
T::Mask: LazySelect<T>,
impl<Wp, T> Saturate for Lch<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>,
source§impl<Wp, T> SaturateAssign for Lch<Wp, T>where
T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone,
T::Mask: LazySelect<T>,
impl<Wp, T> SaturateAssign for Lch<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>,
source§fn saturate_assign(&mut self, factor: T)
fn saturate_assign(&mut self, factor: T)
factor
, a value
ranging from 0.0
to 1.0
. Read moresource§fn saturate_fixed_assign(&mut self, amount: T)
fn saturate_fixed_assign(&mut self, amount: T)
source§impl<Wp, T> SaturatingAdd<Lch<Wp, T>> for Lch<Wp, T>where
T: SaturatingAdd<Output = T>,
impl<Wp, T> SaturatingAdd<Lch<Wp, T>> for Lch<Wp, T>where T: SaturatingAdd<Output = T>,
source§impl<Wp, T> SaturatingAdd<T> for Lch<Wp, T>where
T: SaturatingAdd<Output = T> + Clone,
impl<Wp, T> SaturatingAdd<T> for Lch<Wp, T>where T: SaturatingAdd<Output = T> + Clone,
source§impl<Wp, T> SaturatingSub<Lch<Wp, T>> for Lch<Wp, T>where
T: SaturatingSub<Output = T>,
impl<Wp, T> SaturatingSub<Lch<Wp, T>> for Lch<Wp, T>where T: SaturatingSub<Output = T>,
source§impl<Wp, T> SaturatingSub<T> for Lch<Wp, T>where
T: SaturatingSub<Output = T> + Clone,
impl<Wp, T> SaturatingSub<T> for Lch<Wp, T>where T: SaturatingSub<Output = T> + Clone,
source§impl<Wp, T> ShiftHueAssign for Lch<Wp, T>where
T: AddAssign,
impl<Wp, T> ShiftHueAssign for Lch<Wp, T>where T: AddAssign,
source§impl<Wp, T> SubAssign<Lch<Wp, T>> for Lch<Wp, T>where
T: SubAssign,
impl<Wp, T> SubAssign<Lch<Wp, T>> for Lch<Wp, T>where T: SubAssign,
source§fn sub_assign(&mut self, other: Self)
fn sub_assign(&mut self, other: Self)
-=
operation. Read moresource§impl<Wp, T> SubAssign<T> for Lch<Wp, T>where
T: SubAssign + Clone,
impl<Wp, T> SubAssign<T> for Lch<Wp, T>where T: SubAssign + Clone,
source§fn sub_assign(&mut self, c: T)
fn sub_assign(&mut self, c: T)
-=
operation. Read moresource§impl<Wp, T> UlpsEq<Lch<Wp, T>> for Lch<Wp, T>where
T: UlpsEq,
T::Epsilon: Clone,
LabHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
impl<Wp, T> UlpsEq<Lch<Wp, T>> for Lch<Wp, T>where T: UlpsEq, T::Epsilon: Clone, LabHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§impl<Wp, T, _A> WithAlpha<_A> for Lch<Wp, T>where
_A: Stimulus,
impl<Wp, T, _A> WithAlpha<_A> for Lch<Wp, T>where _A: Stimulus,
source§fn with_alpha(self, alpha: _A) -> Self::WithAlpha
fn with_alpha(self, alpha: _A) -> Self::WithAlpha
Self
already has a transparency, it is
overwritten. Read moresource§fn without_alpha(self) -> Self::Color
fn without_alpha(self) -> Self::Color
Self::Color
has
an internal transparency field, that field will be set to
A::max_intensity()
to make it opaque. Read moresource§fn split(self) -> (Self::Color, _A)
fn split(self) -> (Self::Color, _A)
impl<Wp, T> Copy for Lch<Wp, T>where T: Copy,
impl<Wp, T> Eq for Lch<Wp, T>where T: Eq, LabHue<T>: Eq,
impl<Wp: 'static, T> Pod for Lch<Wp, T>where T: Pod,
Auto Trait Implementations§
impl<Wp, T> RefUnwindSafe for Lch<Wp, T>where T: RefUnwindSafe, Wp: RefUnwindSafe,
impl<Wp, T> Send for Lch<Wp, T>where T: Send, Wp: Send,
impl<Wp, T> Sync for Lch<Wp, T>where T: Sync, Wp: Sync,
impl<Wp, T> Unpin for Lch<Wp, T>where T: Unpin, Wp: Unpin,
impl<Wp, T> UnwindSafe for Lch<Wp, T>where T: UnwindSafe, Wp: UnwindSafe,
Blanket Implementations§
source§impl<S, D, Swp, Dwp, T> AdaptFrom<S, Swp, Dwp, T> for Dwhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
S: IntoColorUnclamped<Xyz<Swp, T>>,
D: FromColorUnclamped<Xyz<Dwp, T>>,
impl<S, D, Swp, Dwp, T> AdaptFrom<S, Swp, Dwp, T> for Dwhere T: Real + Zero + Arithmetics + Clone, Swp: WhitePoint<T>, Dwp: WhitePoint<T>, S: IntoColorUnclamped<Xyz<Swp, T>>, D: FromColorUnclamped<Xyz<Dwp, T>>,
source§fn adapt_from_using<M>(color: S, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_from_using<M>(color: S, method: M) -> Dwhere M: TransformMatrix<T>,
source§fn adapt_from(color: S) -> Self
fn adapt_from(color: S) -> Self
source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere T: Real + Zero + Arithmetics + Clone, Swp: WhitePoint<T>, Dwp: WhitePoint<T>, D: AdaptFrom<S, Swp, Dwp, T>,
source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere M: TransformMatrix<T>,
source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere C: IntoArrays<T>,
source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere C: FromArrays<T>,
source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
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> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere T: AnyBitPattern,
§type Bits = T
type Bits = T
Self
must have the same layout as the specified Bits
except for
the possible invalid bit patterns being checked during
is_valid_bit_pattern
.source§fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
bits
as &Self
.source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere C: IntoComponents<T>,
source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle
.source§impl<T, U> FromColor<T> for Uwhere
U: FromColorUnclamped<T> + Clamp,
impl<T, U> FromColor<T> for Uwhere U: FromColorUnclamped<T> + Clamp,
source§fn from_color(t: T) -> U
fn from_color(t: T) -> U
source§impl<T, U> FromColorMut<U> for Twhere
T: FromColor<U> + ArrayCast + Clone,
U: FromColor<T> + ArrayCast<Array = <T as ArrayCast>::Array> + Clone,
impl<T, U> FromColorMut<U> for Twhere T: FromColor<U> + ArrayCast + Clone, U: FromColor<T> + ArrayCast<Array = <T as ArrayCast>::Array> + Clone,
source§fn from_color_mut(color: &mut U) -> FromColorMutGuard<'_, T, U>
fn from_color_mut(color: &mut U) -> FromColorMutGuard<'_, T, U>
source§impl<T, U> FromColorUnclampedMut<U> for Twhere
T: FromColorUnclamped<U> + ArrayCast + Clone,
U: FromColorUnclamped<T> + ArrayCast<Array = <T as ArrayCast>::Array> + Clone,
impl<T, U> FromColorUnclampedMut<U> for Twhere T: FromColorUnclamped<U> + ArrayCast + Clone, U: FromColorUnclamped<T> + ArrayCast<Array = <T as ArrayCast>::Array> + Clone,
source§fn from_color_unclamped_mut(
color: &mut U
) -> FromColorUnclampedMutGuard<'_, T, U>
fn from_color_unclamped_mut( color: &mut U ) -> FromColorUnclampedMutGuard<'_, T, U>
source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere U: IntoStimulus<T>,
source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other
into Self
, while performing the appropriate scaling,
rounding and clamping.source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere U: FromAngle<T>,
source§fn into_angle(self) -> U
fn into_angle(self) -> U
T
.source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere U: FromColor<T>,
source§fn into_color(self) -> U
fn into_color(self) -> U
source§impl<T, U> IntoColorMut<T> for Uwhere
T: FromColorMut<U> + ?Sized,
U: FromColorMut<T> + ?Sized,
impl<T, U> IntoColorMut<T> for Uwhere T: FromColorMut<U> + ?Sized, U: FromColorMut<T> + ?Sized,
source§fn into_color_mut(&mut self) -> FromColorMutGuard<'_, T, U>
fn into_color_mut(&mut self) -> FromColorMutGuard<'_, T, U>
source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere U: FromColorUnclamped<T>,
source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
source§impl<T, U> IntoColorUnclampedMut<T> for Uwhere
T: FromColorUnclampedMut<U> + ?Sized,
U: FromColorUnclampedMut<T> + ?Sized,
impl<T, U> IntoColorUnclampedMut<T> for Uwhere T: FromColorUnclampedMut<U> + ?Sized, U: FromColorUnclampedMut<T> + ?Sized,
source§fn into_color_unclamped_mut(&mut self) -> FromColorUnclampedMutGuard<'_, T, U>
fn into_color_unclamped_mut(&mut self) -> FromColorUnclampedMutGuard<'_, T, U>
source§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self
into T
, while performing the appropriate scaling,
rounding and clamping.source§impl<Borrowed> SampleBorrow<Borrowed> for Borrowedwhere
Borrowed: SampleUniform,
impl<Borrowed> SampleBorrow<Borrowed> for Borrowedwhere Borrowed: SampleUniform,
source§fn borrow(&self) -> &Borrowed
fn borrow(&self) -> &Borrowed
Borrow::borrow
source§impl<'a, T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<'a, T, C> TryComponentsInto<C> for Twhere C: TryFromComponents<T>,
§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors
fails to cast.source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
source§impl<T, U> TryFromColor<T> for Uwhere
U: FromColorUnclamped<T> + IsWithinBounds<Mask = bool>,
impl<T, U> TryFromColor<T> for Uwhere U: FromColorUnclamped<T> + IsWithinBounds<Mask = bool>,
source§fn try_from_color(t: T) -> Result<U, OutOfBounds<U>>
fn try_from_color(t: T) -> Result<U, OutOfBounds<U>>
OutOfBounds
error is returned which contains
the unclamped color. Read moresource§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere U: TryFromColor<T>,
source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds
error is returned which contains
the unclamped color. Read more