pub struct Color {
r: NormalizedF32,
g: NormalizedF32,
b: NormalizedF32,
a: NormalizedF32,
}
Expand description
An RGBA color value, holding four floating point components.
§Guarantees
- All values are in 0..=1 range.
Fields§
§r: NormalizedF32
§g: NormalizedF32
§b: NormalizedF32
§a: NormalizedF32
Implementations§
Source§impl Color
impl Color
Sourcepub const TRANSPARENT: Color
pub const TRANSPARENT: Color
A transparent color.
Sourcepub fn from_rgba(r: f32, g: f32, b: f32, a: f32) -> Option<Self>
pub fn from_rgba(r: f32, g: f32, b: f32, a: f32) -> Option<Self>
Creates a new color from 4 components.
All values must be in 0..=1 range.
Sourcepub fn from_rgba8(r: u8, g: u8, b: u8, a: u8) -> Self
pub fn from_rgba8(r: u8, g: u8, b: u8, a: u8) -> Self
Creates a new color from 4 components.
u8 will be divided by 255 to get the float component.
Sourcepub fn red(&self) -> f32
pub fn red(&self) -> f32
Returns color’s red component.
The value is guarantee to be in a 0..=1 range.
Sourcepub fn green(&self) -> f32
pub fn green(&self) -> f32
Returns color’s green component.
The value is guarantee to be in a 0..=1 range.
Sourcepub fn blue(&self) -> f32
pub fn blue(&self) -> f32
Returns color’s blue component.
The value is guarantee to be in a 0..=1 range.
Sourcepub fn alpha(&self) -> f32
pub fn alpha(&self) -> f32
Returns color’s alpha component.
The value is guarantee to be in a 0..=1 range.
Sourcepub fn set_red(&mut self, c: f32)
pub fn set_red(&mut self, c: f32)
Sets the red component value.
The new value will be clipped to the 0..=1 range.
Sourcepub fn set_green(&mut self, c: f32)
pub fn set_green(&mut self, c: f32)
Sets the green component value.
The new value will be clipped to the 0..=1 range.
Sourcepub fn set_blue(&mut self, c: f32)
pub fn set_blue(&mut self, c: f32)
Sets the blue component value.
The new value will be clipped to the 0..=1 range.
Sourcepub fn set_alpha(&mut self, c: f32)
pub fn set_alpha(&mut self, c: f32)
Sets the alpha component value.
The new value will be clipped to the 0..=1 range.
Sourcepub fn apply_opacity(&mut self, opacity: f32)
pub fn apply_opacity(&mut self, opacity: f32)
Shifts color’s opacity.
Essentially, multiplies color’s alpha by opacity.
opacity
will be clamped to the 0..=1 range first.
The final alpha will also be clamped.
Sourcepub fn premultiply(&self) -> PremultipliedColor
pub fn premultiply(&self) -> PremultipliedColor
Converts into a premultiplied color.
Sourcepub fn to_color_u8(&self) -> ColorU8
pub fn to_color_u8(&self) -> ColorU8
Converts into ColorU8
.