Struct XyzD50
pub struct XyzD50;Expand description
🌌 The CIE XYZ color space with a 2° observer and a reference white of D50.
Its components are [X, Y, Z]. The components are unbounded, but are usually positive.
Reference white has a luminance Y of 1.
This corresponds to the color space in CSS Color Module Level 4 § 10.8. It is defined in CIE 015:2018. Following CSS Color Module Level 4 § 11, the conversion between D50 and D65 white points is done with the standard Bradford linear chromatic adaptation transform.
See the XYZ-D65 color space documentation for some background information on color spaces.
Trait Implementations§
§impl ColorSpace for XyzD50
impl ColorSpace for XyzD50
§const TAG: Option<ColorSpaceTag>
const TAG: Option<ColorSpaceTag>
The tag corresponding to this color space, if a matching tag exists.
§const WHITE_POINT: Chromaticity = Chromaticity::D50
const WHITE_POINT: Chromaticity = Chromaticity::D50
The white point of the color space. Read more
§const WHITE_COMPONENTS: [f32; 3]
const WHITE_COMPONENTS: [f32; 3]
The component values for the color white within this color space.
§fn clip(_: [f32; 3]) -> [f32; 3]
fn clip(_: [f32; 3]) -> [f32; 3]
Clip the color’s components to fit within the natural gamut of the color space. Read more
§const LAYOUT: ColorSpaceLayout = ColorSpaceLayout::Rectangular
const LAYOUT: ColorSpaceLayout = ColorSpaceLayout::Rectangular
The layout of the color space. Read more
§fn convert<TargetCS>(src: [f32; 3]) -> [f32; 3]where
TargetCS: ColorSpace,
fn convert<TargetCS>(src: [f32; 3]) -> [f32; 3]where
TargetCS: ColorSpace,
Convert to a different color space. Read more
§fn to_linear_srgb_absolute(src: [f32; 3]) -> [f32; 3]
fn to_linear_srgb_absolute(src: [f32; 3]) -> [f32; 3]
Convert an opaque color to linear sRGB, without chromatic adaptation. Read more
§fn from_linear_srgb_absolute(src: [f32; 3]) -> [f32; 3]
fn from_linear_srgb_absolute(src: [f32; 3]) -> [f32; 3]
Convert an opaque color from linear sRGB, without chromatic adaptation. Read more
§fn convert_absolute<TargetCS>(src: [f32; 3]) -> [f32; 3]where
TargetCS: ColorSpace,
fn convert_absolute<TargetCS>(src: [f32; 3]) -> [f32; 3]where
TargetCS: ColorSpace,
Convert to a different color space, without chromatic adaptation. Read more
§fn chromatically_adapt(
src: [f32; 3],
from: Chromaticity,
to: Chromaticity,
) -> [f32; 3]
fn chromatically_adapt( src: [f32; 3], from: Chromaticity, to: Chromaticity, ) -> [f32; 3]
Chromatically adapt the color between the given white point chromaticities. Read more
§impl From<XyzD50> for ColorSpaceTag
impl From<XyzD50> for ColorSpaceTag
§fn from(_: XyzD50) -> ColorSpaceTag
fn from(_: XyzD50) -> ColorSpaceTag
Converts to this type from the input type.
impl Copy for XyzD50
Auto Trait Implementations§
impl Freeze for XyzD50
impl RefUnwindSafe for XyzD50
impl Send for XyzD50
impl Sync for XyzD50
impl Unpin for XyzD50
impl UnwindSafe for XyzD50
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
Converts
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>
Converts
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 moreSource§impl<T> StaticAnim for Twhere
T: StaticAnimRequirement + 'static,
impl<T> StaticAnim for Twhere
T: StaticAnimRequirement + 'static,
Source§fn show(&self) -> AnimationCell<T>
fn show(&self) -> AnimationCell<T>
Show the item
Source§fn hide(&self) -> AnimationCell<T>
fn hide(&self) -> AnimationCell<T>
Hide the item