Rgb

Struct Rgb 

Source
pub struct Rgb {
    pub r: u8,
    pub g: u8,
    pub b: u8,
}

Fields§

§r: u8§g: u8§b: u8

Implementations§

Source§

impl Rgb

Source

pub const fn as_floats(self) -> (f64, f64, f64)

Source

pub const fn to_array(self) -> [f32; 3]

Returns [r, g, b] as f32 values in 0.0-1.0 range.

Useful for GPU APIs like wgpu that expect f32 colors.

Source

pub const fn to_array_with_alpha(self) -> [f32; 4]

Returns [r, g, b, a] as f32 values with alpha = 1.0.

Useful for GPU APIs like wgpu that expect f32 RGBA colors.

Source

pub fn to_array_string(self) -> String

Source

pub fn lighten(self, factor: f64) -> Self

Lighten the color by increasing lightness in HSL space.

factor of 0.0 returns the original color, 1.0 returns white. The lightness is increased proportionally to the remaining headroom.

Source

pub fn darken(self, factor: f64) -> Self

Darken the color by decreasing lightness in HSL space.

factor of 0.0 returns the original color, 1.0 returns black. The lightness is decreased proportionally to the current lightness.

Source

pub fn brighten(self, amount: f64) -> Self

Adjust lightness by an absolute amount in HSL space.

Positive values brighten, negative values dim. The amount is added directly to lightness (0.0 to 1.0 scale).

Source

pub fn mix(self, other: Self, factor: f64) -> Self

Mix two colors together.

factor of 0.0 returns self, 1.0 returns other.

Trait Implementations§

Source§

impl Clone for Rgb

Source§

fn clone(&self) -> Rgb

Returns a duplicate 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 Debug for Rgb

Source§

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

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

impl Display for Rgb

Source§

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

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

impl FromStr for Rgb

Source§

type Err = Error

The associated error which can be returned from parsing.
Source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
Source§

impl PartialEq for Rgb

Source§

fn eq(&self, other: &Rgb) -> 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 Rgb

Source§

impl Eq for Rgb

Source§

impl StructuralPartialEq for Rgb

Auto Trait Implementations§

§

impl Freeze for Rgb

§

impl RefUnwindSafe for Rgb

§

impl Send for Rgb

§

impl Sync for Rgb

§

impl Unpin for Rgb

§

impl UnwindSafe for Rgb

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<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.