pub type Cam16Jmha<T> = Alpha<Cam16Jmh<T>, T>;
Expand description
Partial CIE CAM16 with lightness, colorfulness, and an alpha component.
See the Cam16Jmha
implementation in Alpha
.
Aliased Type§
struct Cam16Jmha<T> {
pub color: Cam16Jmh<T>,
pub alpha: T,
}
Fields§
§color: Cam16Jmh<T>
The color.
alpha: T
The transparency component. 0.0 (or 0u8) is fully transparent and 1.0 (or 255u8) is fully opaque.
Implementations
Source§impl<C: Premultiply> Alpha<C, C::Scalar>
impl<C: Premultiply> Alpha<C, C::Scalar>
Sourcepub fn premultiply(self) -> PreAlpha<C>
pub fn premultiply(self) -> PreAlpha<C>
Alpha mask the color by its transparency.
Source§impl<C, A> Alpha<C, A>
impl<C, A> Alpha<C, A>
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.
Source§impl<T, A> Alpha<Cam16Jmh<&mut T>, &mut A>
impl<T, A> Alpha<Cam16Jmh<&mut T>, &mut A>
Source§impl<Ct, Ca> Alpha<Cam16Jmh<Ct>, Ca>
impl<Ct, Ca> Alpha<Cam16Jmh<Ct>, Ca>
Sourcepub fn get<'a, I, T, A>(
&'a self,
index: I,
) -> Option<Alpha<Cam16Jmh<&<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>
pub fn get<'a, I, T, A>( &'a self, index: I, ) -> Option<Alpha<Cam16Jmh<&<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>
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>(
&'a mut self,
index: I,
) -> Option<Alpha<Cam16Jmh<&mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>
pub fn get_mut<'a, I, T, A>( &'a mut self, index: I, ) -> Option<Alpha<Cam16Jmh<&mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>
Get a color, or slice of colors, that allows modifying the components at index
. See slice::get_mut
for details.
Source§impl<T, A> Alpha<Cam16Jmh<T>, A>
“Cam16Jmha
implementations.
impl<T, A> Alpha<Cam16Jmh<T>, A>
“Cam16Jmha
implementations.
Sourcepub fn new<H: Into<Cam16Hue<T>>>(
lightness: T,
colorfulness: T,
hue: H,
alpha: A,
) -> Self
pub fn new<H: Into<Cam16Hue<T>>>( lightness: T, colorfulness: T, hue: H, alpha: A, ) -> Self
Create a partial CIE CAM16 color with transparency.
Sourcepub const fn new_const(
lightness: T,
colorfulness: T,
hue: Cam16Hue<T>,
alpha: A,
) -> Self
pub const fn new_const( lightness: T, colorfulness: T, hue: Cam16Hue<T>, alpha: A, ) -> Self
Create a partial CIE CAM16 color with transparency. This is the
same as Cam16Jmh::new
without the generic hue type. It’s temporary until
const fn
supports traits.
Sourcepub fn into_components(self) -> (T, T, Cam16Hue<T>, A)
pub fn into_components(self) -> (T, T, Cam16Hue<T>, A)
Convert to a (lightness, colorfulness, hue, alpha)
tuple.
Sourcepub fn from_components<H: Into<Cam16Hue<T>>>(
(lightness, colorfulness, hue, alpha): (T, T, H, A),
) -> Self
pub fn from_components<H: Into<Cam16Hue<T>>>( (lightness, colorfulness, hue, alpha): (T, T, H, A), ) -> Self
Convert from a (lightness, colorfulness, hue, alpha)
tuple.
Sourcepub fn from_xyz<WpParam>(
color: Alpha<Xyz<WpParam::StaticWp, T>, A>,
parameters: impl Into<BakedParameters<WpParam, T::Scalar>>,
) -> Selfwhere
Xyz<WpParam::StaticWp, T>: IntoCam16Unclamped<WpParam, Cam16Jmh<T>, Scalar = T::Scalar>,
T: FromScalar,
WpParam: WhitePointParameter<T::Scalar>,
pub fn from_xyz<WpParam>(
color: Alpha<Xyz<WpParam::StaticWp, T>, A>,
parameters: impl Into<BakedParameters<WpParam, T::Scalar>>,
) -> Selfwhere
Xyz<WpParam::StaticWp, T>: IntoCam16Unclamped<WpParam, Cam16Jmh<T>, Scalar = T::Scalar>,
T: FromScalar,
WpParam: WhitePointParameter<T::Scalar>,
Derive partial CIE CAM16 attributes with transparency, for the provided color, under the provided viewing conditions.
use palette::{Srgba, IntoColor, cam16::{Cam16Jmha, Parameters}};
// Customize these according to the viewing conditions:
let mut example_parameters = Parameters::default_static_wp(40.0);
let rgba = Srgba::new(0.3f32, 0.8, 0.1, 0.9);
let partial = Cam16Jmha::from_xyz(rgba.into_color(), example_parameters);
It’s also possible to “pre-bake” the parameters, to avoid recalculate some of the derived values when converting multiple color value.
use palette::{Srgba, IntoColor, cam16::{Cam16Jmha, Parameters}};
// Customize these according to the viewing conditions:
let mut example_parameters = Parameters::default_static_wp(40.0);
let baked_parameters = example_parameters.bake();
let rgba = Srgba::new(0.3f32, 0.8, 0.1, 0.9);
let partial = Cam16Jmha::from_xyz(rgba.into_color(), baked_parameters);
Sourcepub fn into_xyz<WpParam>(
self,
parameters: impl Into<BakedParameters<WpParam, T::Scalar>>,
) -> Alpha<Xyz<WpParam::StaticWp, T>, A>where
Cam16Jmh<T>: Cam16IntoUnclamped<WpParam, Xyz<WpParam::StaticWp, T>, Scalar = T::Scalar>,
WpParam: WhitePointParameter<T>,
T: FromScalar,
pub fn into_xyz<WpParam>(
self,
parameters: impl Into<BakedParameters<WpParam, T::Scalar>>,
) -> Alpha<Xyz<WpParam::StaticWp, T>, A>where
Cam16Jmh<T>: Cam16IntoUnclamped<WpParam, Xyz<WpParam::StaticWp, T>, Scalar = T::Scalar>,
WpParam: WhitePointParameter<T>,
T: FromScalar,
Construct an XYZ color with transparency, from these CIE CAM16 attributes, under the provided viewing conditions.
use palette::{Srgba, FromColor, cam16::{Cam16Jmha, Parameters}};
// Customize these according to the viewing conditions:
let mut example_parameters = Parameters::default_static_wp(40.0);
let partial = Cam16Jmha::new(50.0f32, 80.0, 120.0, 0.9);
let rgba = Srgba::from_color(partial.into_xyz(example_parameters));
It’s also possible to “pre-bake” the parameters, to avoid recalculate some of the derived values when converting multiple color value.
use palette::{Srgba, FromColor, cam16::{Cam16Jmha, Parameters}};
// Customize these according to the viewing conditions:
let mut example_parameters = Parameters::default_static_wp(40.0);
let baked_parameters = example_parameters.bake();
let partial = Cam16Jmha::new(50.0f32, 80.0, 120.0, 0.9);
let rgba = Srgba::from_color(partial.into_xyz(baked_parameters));
Sourcepub fn from_full(full: Alpha<Cam16<T>, A>) -> Self
pub fn from_full(full: Alpha<Cam16<T>, A>) -> Self
Create a partial set of CIE CAM16 attributes with transparency.
It’s also possible to use Cam16Jmha::from
or Cam16a::into
.
Sourcepub fn into_full<WpParam>(
self,
parameters: impl Into<BakedParameters<WpParam, T::Scalar>>,
) -> Alpha<Cam16<T>, A>where
Cam16Jmh<T>: IntoCam16Unclamped<WpParam, Cam16<T>, Scalar = T::Scalar>,
WpParam: WhitePointParameter<T>,
T: FromScalar,
pub fn into_full<WpParam>(
self,
parameters: impl Into<BakedParameters<WpParam, T::Scalar>>,
) -> Alpha<Cam16<T>, A>where
Cam16Jmh<T>: IntoCam16Unclamped<WpParam, Cam16<T>, Scalar = T::Scalar>,
WpParam: WhitePointParameter<T>,
T: FromScalar,
Reconstruct a full set of CIE CAM16 attributes with transparency, using the original viewing conditions.
use palette::{Srgba, IntoColor, cam16::{Cam16a, Cam16Jmha, Parameters}};
use approx::assert_relative_eq;
// Customize these according to the viewing conditions:
let mut example_parameters = Parameters::default_static_wp(40.0);
// Optional, but saves some work:
let baked_parameters = example_parameters.bake();
let rgba = Srgba::new(0.3f64, 0.8, 0.1, 0.9);
let cam16a = Cam16a::from_xyz(rgba.into_color(), baked_parameters);
let partial = Cam16Jmha::from(cam16a);
let reconstructed = partial.into_full(baked_parameters);
assert_relative_eq!(cam16a, reconstructed, epsilon = 0.0000000000001);
Source§impl<T, A> Alpha<Cam16Jmh<Vec<T>>, Vec<A>>
impl<T, A> Alpha<Cam16Jmh<Vec<T>>, Vec<A>>
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: Alpha<Cam16Jmh<T>, A>)
pub fn push(&mut self, value: Alpha<Cam16Jmh<T>, A>)
Push an additional color’s components onto the component vectors. See Vec::push
for details.
Sourcepub fn pop(&mut self) -> Option<Alpha<Cam16Jmh<T>, A>>
pub fn pop(&mut self) -> Option<Alpha<Cam16Jmh<T>, A>>
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<C, T> AbsDiffEq for Alpha<C, T>
impl<C, T> AbsDiffEq for Alpha<C, T>
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: &Rhs, epsilon: Self::Epsilon) -> bool
fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
AbsDiffEq::abs_diff_eq
.Source§impl<T, C> AddAssign<T> for Alpha<C, T>
impl<T, C> AddAssign<T> for Alpha<C, T>
Source§fn add_assign(&mut self, c: T)
fn add_assign(&mut self, c: T)
+=
operation. Read moreSource§impl<C, T> AddAssign for Alpha<C, T>
impl<C, T> AddAssign for Alpha<C, T>
Source§fn add_assign(&mut self, other: Alpha<C, T>)
fn add_assign(&mut self, other: Alpha<C, T>)
+=
operation. Read moreSource§impl<C, T, const N: usize> Blend for Alpha<C, T>where
C: Premultiply<Scalar = T> + StimulusColor + ArrayCast<Array = [T; N]> + Clone,
T: Real + Zero + One + MinMax + Clamp + Sqrt + Abs + Arithmetics + PartialCmp + Clone,
T::Mask: LazySelect<T>,
impl<C, T, const N: usize> Blend for Alpha<C, T>where
C: Premultiply<Scalar = T> + StimulusColor + ArrayCast<Array = [T; N]> + Clone,
T: Real + Zero + One + MinMax + Clamp + Sqrt + Abs + Arithmetics + PartialCmp + Clone,
T::Mask: LazySelect<T>,
Source§fn multiply(self, other: Self) -> Self
fn multiply(self, other: Self) -> Self
self
with other
. This uses the alpha component to regulate
the effect, so it’s not just plain component wise multiplication.Source§fn screen(self, other: Self) -> Self
fn screen(self, other: Self) -> Self
self
or other
.Source§fn overlay(self, other: Self) -> Self
fn overlay(self, other: Self) -> Self
self
or other
if other is dark, or screen them if other
is light. This results in an S curve.Source§fn dodge(self, other: Self) -> Self
fn dodge(self, other: Self) -> Self
other
to reflect self
. Results in other
if self
is
black.Source§fn burn(self, other: Self) -> Self
fn burn(self, other: Self) -> Self
other
to reflect self
. Results in other
if self
is
white.Source§fn hard_light(self, other: Self) -> Self
fn hard_light(self, other: Self) -> Self
self
or other
if other is dark, or screen them if self
is light. This is similar to overlay
, but depends on self
instead
of other
.Source§fn soft_light(self, other: Self) -> Self
fn soft_light(self, other: Self) -> Self
other
if self
is light, or darken other
as if it’s burned
if self
is dark. The effect is increased if the components of self
is further from 0.5.Source§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
self
and other
. It’s
basically abs(self - other)
, but regulated by the alpha component.Source§impl<C> BlendWith for Alpha<C, C::Scalar>where
C: Premultiply,
impl<C> BlendWith for Alpha<C, C::Scalar>where
C: Premultiply,
Source§fn blend_with<F>(self, destination: Self, blend_function: F) -> Selfwhere
F: BlendFunction<Self::Color>,
fn blend_with<F>(self, destination: Self, blend_function: F) -> Selfwhere
F: BlendFunction<Self::Color>,
destination
, using
blend_function
. Anything that implements BlendFunction
is
acceptable, including functions and closures. Read moreSource§impl<C, T> ClampAssign for Alpha<C, T>
impl<C, T> ClampAssign for Alpha<C, T>
Source§fn clamp_assign(&mut self)
fn clamp_assign(&mut self)
Source§impl<C> Compose for Alpha<C, C::Scalar>
impl<C> Compose for Alpha<C, C::Scalar>
Source§fn over(self, other: Self) -> Self
fn over(self, other: Self) -> Self
self
over other
. This is the good old common alpha composition
equation.Source§fn inside(self, other: Self) -> Self
fn inside(self, other: Self) -> Self
self
that overlaps the visible parts of
other
.Source§impl<'de, C, T> Deserialize<'de> for Alpha<C, T>where
C: Deserialize<'de>,
T: Deserialize<'de>,
impl<'de, C, T> Deserialize<'de> for Alpha<C, T>where
C: Deserialize<'de>,
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<T, C> DivAssign<T> for Alpha<C, T>
impl<T, C> DivAssign<T> for Alpha<C, T>
Source§fn div_assign(&mut self, c: T)
fn div_assign(&mut self, c: T)
/=
operation. Read moreSource§impl<C, T> DivAssign for Alpha<C, T>
impl<C, T> DivAssign for Alpha<C, T>
Source§fn div_assign(&mut self, other: Alpha<C, T>)
fn div_assign(&mut self, other: Alpha<C, T>)
/=
operation. Read moreSource§impl<Tc, Ta, C, A> Extend<Alpha<Tc, Ta>> for Alpha<C, A>
impl<Tc, Ta, C, A> Extend<Alpha<Tc, Ta>> for Alpha<C, A>
Source§fn extend<T: IntoIterator<Item = Alpha<Tc, Ta>>>(&mut self, iter: T)
fn extend<T: IntoIterator<Item = Alpha<Tc, Ta>>>(&mut self, iter: T)
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<T, H: Into<Cam16Hue<T>>, A> From<(T, T, H, A)> for Alpha<Cam16Jmh<T>, A>
impl<T, H: Into<Cam16Hue<T>>, A> From<(T, T, H, A)> for Alpha<Cam16Jmh<T>, A>
Source§fn from(components: (T, T, H, A)) -> Self
fn from(components: (T, T, H, A)) -> Self
Source§impl<C1: WithAlpha<T>, C2, T> FromColorUnclamped<C1> for Alpha<C2, T>where
C1::Color: IntoColorUnclamped<C2>,
impl<C1: WithAlpha<T>, C2, T> FromColorUnclamped<C1> for Alpha<C2, T>where
C1::Color: IntoColorUnclamped<C2>,
Source§fn from_color_unclamped(other: C1) -> Self
fn from_color_unclamped(other: C1) -> Self
Source§impl<Tc, Ta, C, A> FromIterator<Alpha<Tc, Ta>> for Alpha<C, A>
impl<Tc, Ta, C, A> FromIterator<Alpha<Tc, Ta>> for Alpha<C, A>
Source§impl<C, T> HasBoolMask for Alpha<C, T>
impl<C, T> HasBoolMask for Alpha<C, T>
Source§type Mask = <C as HasBoolMask>::Mask
type Mask = <C as HasBoolMask>::Mask
Self
values.Source§impl<'a, T> IntoIterator for Alpha<Cam16Jmh<&'a mut [T]>, &'a mut [T]>
impl<'a, T> IntoIterator for Alpha<Cam16Jmh<&'a mut [T]>, &'a mut [T]>
Source§impl<C, T> IsWithinBounds for Alpha<C, T>where
C: IsWithinBounds,
T: Stimulus + PartialCmp + IsWithinBounds<Mask = C::Mask>,
C::Mask: BitAnd<Output = C::Mask>,
impl<C, T> IsWithinBounds for Alpha<C, T>where
C: IsWithinBounds,
T: Stimulus + PartialCmp + IsWithinBounds<Mask = C::Mask>,
C::Mask: BitAnd<Output = C::Mask>,
Source§fn is_within_bounds(&self) -> C::Mask
fn is_within_bounds(&self) -> C::Mask
Source§impl<C: Lighten> Lighten for Alpha<C, C::Scalar>
impl<C: Lighten> Lighten for Alpha<C, C::Scalar>
Source§impl<C: LightenAssign> LightenAssign for Alpha<C, C::Scalar>
impl<C: LightenAssign> LightenAssign for Alpha<C, C::Scalar>
Source§type Scalar = <C as LightenAssign>::Scalar
type Scalar = <C as LightenAssign>::Scalar
Source§fn lighten_assign(&mut self, factor: C::Scalar)
fn lighten_assign(&mut self, factor: C::Scalar)
Source§fn lighten_fixed_assign(&mut self, amount: C::Scalar)
fn lighten_fixed_assign(&mut self, amount: C::Scalar)
Source§impl<T, C> MulAssign<T> for Alpha<C, T>
impl<T, C> MulAssign<T> for Alpha<C, T>
Source§fn mul_assign(&mut self, c: T)
fn mul_assign(&mut self, c: T)
*=
operation. Read moreSource§impl<C, T> MulAssign for Alpha<C, T>
impl<C, T> MulAssign for Alpha<C, T>
Source§fn mul_assign(&mut self, other: Alpha<C, T>)
fn mul_assign(&mut self, other: Alpha<C, T>)
*=
operation. Read moreSource§impl<C, T> RelativeEq for Alpha<C, T>
impl<C, T> RelativeEq for Alpha<C, T>
Source§fn default_max_relative() -> Self::Epsilon
fn default_max_relative() -> Self::Epsilon
Source§fn relative_eq(
&self,
other: &Alpha<C, T>,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon,
) -> bool
fn relative_eq( &self, other: &Alpha<C, T>, epsilon: Self::Epsilon, max_relative: Self::Epsilon, ) -> bool
Source§fn relative_ne(
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon,
) -> bool
fn relative_ne( &self, other: &Rhs, epsilon: Self::Epsilon, max_relative: Self::Epsilon, ) -> bool
RelativeEq::relative_eq
.Source§impl<C: Saturate> Saturate for Alpha<C, C::Scalar>
impl<C: Saturate> Saturate for Alpha<C, C::Scalar>
Source§impl<C: SaturateAssign> SaturateAssign for Alpha<C, C::Scalar>
impl<C: SaturateAssign> SaturateAssign for Alpha<C, C::Scalar>
Source§type Scalar = <C as SaturateAssign>::Scalar
type Scalar = <C as SaturateAssign>::Scalar
Source§fn saturate_assign(&mut self, factor: C::Scalar)
fn saturate_assign(&mut self, factor: C::Scalar)
factor
, a value
ranging from 0.0
to 1.0
. Read moreSource§fn saturate_fixed_assign(&mut self, amount: C::Scalar)
fn saturate_fixed_assign(&mut self, amount: C::Scalar)
Source§impl<T, C> SaturatingAdd<T> for Alpha<C, T>
impl<T, C> SaturatingAdd<T> for Alpha<C, T>
Source§type Output = Alpha<<C as SaturatingAdd<T>>::Output, <T as SaturatingAdd>::Output>
type Output = Alpha<<C as SaturatingAdd<T>>::Output, <T as SaturatingAdd>::Output>
Source§fn saturating_add(self, c: T) -> Self::Output
fn saturating_add(self, c: T) -> Self::Output
self
and other
, but saturates instead of overflowing.Source§impl<C, T> SaturatingAdd for Alpha<C, T>where
C: SaturatingAdd,
T: SaturatingAdd,
impl<C, T> SaturatingAdd for Alpha<C, T>where
C: SaturatingAdd,
T: SaturatingAdd,
Source§type Output = Alpha<<C as SaturatingAdd>::Output, <T as SaturatingAdd>::Output>
type Output = Alpha<<C as SaturatingAdd>::Output, <T as SaturatingAdd>::Output>
Source§fn saturating_add(self, other: Alpha<C, T>) -> Self::Output
fn saturating_add(self, other: Alpha<C, T>) -> Self::Output
self
and other
, but saturates instead of overflowing.Source§impl<T, C> SaturatingSub<T> for Alpha<C, T>
impl<T, C> SaturatingSub<T> for Alpha<C, T>
Source§type Output = Alpha<<C as SaturatingSub<T>>::Output, <T as SaturatingSub>::Output>
type Output = Alpha<<C as SaturatingSub<T>>::Output, <T as SaturatingSub>::Output>
Source§fn saturating_sub(self, c: T) -> Self::Output
fn saturating_sub(self, c: T) -> Self::Output
self
and other
, but saturates instead of overflowing.Source§impl<C, T> SaturatingSub for Alpha<C, T>where
C: SaturatingSub,
T: SaturatingSub,
impl<C, T> SaturatingSub for Alpha<C, T>where
C: SaturatingSub,
T: SaturatingSub,
Source§type Output = Alpha<<C as SaturatingSub>::Output, <T as SaturatingSub>::Output>
type Output = Alpha<<C as SaturatingSub>::Output, <T as SaturatingSub>::Output>
Source§fn saturating_sub(self, other: Alpha<C, T>) -> Self::Output
fn saturating_sub(self, other: Alpha<C, T>) -> Self::Output
self
and other
, but saturates instead of overflowing.Source§impl<C, T> ShiftHueAssign for Alpha<C, T>where
C: ShiftHueAssign,
impl<C, T> ShiftHueAssign for Alpha<C, T>where
C: ShiftHueAssign,
Source§type Scalar = <C as ShiftHueAssign>::Scalar
type Scalar = <C as ShiftHueAssign>::Scalar
Source§fn shift_hue_assign(&mut self, amount: Self::Scalar)
fn shift_hue_assign(&mut self, amount: Self::Scalar)
amount
.Source§impl<T, C> SubAssign<T> for Alpha<C, T>
impl<T, C> SubAssign<T> for Alpha<C, T>
Source§fn sub_assign(&mut self, c: T)
fn sub_assign(&mut self, c: T)
-=
operation. Read moreSource§impl<C, T> SubAssign for Alpha<C, T>
impl<C, T> SubAssign for Alpha<C, T>
Source§fn sub_assign(&mut self, other: Alpha<C, T>)
fn sub_assign(&mut self, other: Alpha<C, T>)
-=
operation. Read moreSource§impl<C, T> UlpsEq for Alpha<C, T>
impl<C, T> UlpsEq for Alpha<C, T>
Source§impl<C, A> WithAlpha<A> for Alpha<C, A>
impl<C, A> WithAlpha<A> for Alpha<C, A>
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 more