[−][src]Struct tetra::graphics::Color
An RGBA color.
The components are stored as f32
values in the range of 0.0
to 1.0
.
If your data is made up of bytes or hex values, this type provides
constructors that will carry out the conversion for you.
The std
arithmetic traits are implemented for this type, which allows you to
add/subtract/multiply/divide colors. These are implemented as saturating
operations (i.e. the values will always remain between 0.0
and 1.0
).
Serde
Serialization and deserialization of this type (via Serde)
can be enabled via the serde_support
feature.
Fields
r: f32
The red component of the color.
g: f32
The green component of the color.
b: f32
The blue component of the color.
a: f32
The alpha component of the color.
Implementations
impl Color
[src]
pub const fn rgb(r: f32, g: f32, b: f32) -> Color
[src]
Creates a new Color
, with the specified RGB values and the alpha set to 1.0.
pub const fn rgba(r: f32, g: f32, b: f32, a: f32) -> Color
[src]
Creates a new Color
, with the specified RGBA values.
pub fn rgb8(r: u8, g: u8, b: u8) -> Color
[src]
Creates a new Color
, with the specified RGB integer (0-255) values and the alpha set to 255.
pub fn rgba8(r: u8, g: u8, b: u8, a: u8) -> Color
[src]
Creates a new Color
, with the specified RGBA (0-255) integer values.
pub fn hex(hex: &str) -> Color
[src]
Creates a new Color
using a hexidecimal color code, panicking if the input is
invalid.
Six and eight digit codes can be used - the former will be interpreted as RGB, and
the latter as RGBA. The #
prefix (commonly used on the web) will be stripped if present.
pub fn try_hex(hex: &str) -> Result<Color>
[src]
Creates a new Color
using a hexidecimal color code, returning an error if the
input is invalid.
Six and eight digit codes can be used - the former will be interpreted as RGB, and
the latter as RGBA. The #
prefix (commonly used on the web) will be stripped if present.
Errors
TetraError::InvalidColor
will be returned if the specified color is invalid.
pub const BLACK: Color
[src]
Shortcut for Color::rgb(0.0, 0.0, 0.0)
.
pub const WHITE: Color
[src]
Shortcut for Color::rgb(1.0, 1.0, 1.0)
.
pub const RED: Color
[src]
Shortcut for Color::rgb(1.0, 0.0, 0.0)
.
pub const GREEN: Color
[src]
Shortcut for Color::rgb(0.0, 1.0, 0.0)
.
pub const BLUE: Color
[src]
Shortcut for Color::rgb(0.0, 0.0, 1.0)
.
Trait Implementations
impl Add<Color> for Color
[src]
type Output = Color
The resulting type after applying the +
operator.
fn add(self, rhs: Self) -> Self::Output
[src]
impl AddAssign<Color> for Color
[src]
fn add_assign(&mut self, rhs: Self)
[src]
impl Clone for Color
[src]
impl Copy for Color
[src]
impl Debug for Color
[src]
impl Div<Color> for Color
[src]
type Output = Color
The resulting type after applying the /
operator.
fn div(self, rhs: Self) -> Self::Output
[src]
impl DivAssign<Color> for Color
[src]
fn div_assign(&mut self, rhs: Self)
[src]
impl From<Color> for Vec4<f32>
[src]
impl From<Vec4<f32>> for Color
[src]
impl Mul<Color> for Color
[src]
type Output = Color
The resulting type after applying the *
operator.
fn mul(self, rhs: Self) -> Self::Output
[src]
impl MulAssign<Color> for Color
[src]
fn mul_assign(&mut self, rhs: Self)
[src]
impl PartialEq<Color> for Color
[src]
impl StructuralPartialEq for Color
[src]
impl Sub<Color> for Color
[src]
type Output = Color
The resulting type after applying the -
operator.
fn sub(self, rhs: Self) -> Self::Output
[src]
impl SubAssign<Color> for Color
[src]
fn sub_assign(&mut self, rhs: Self)
[src]
impl UniformValue for Color
[src]
Auto Trait Implementations
impl RefUnwindSafe for Color
impl Send for Color
impl Sync for Color
impl Unpin for Color
impl UnwindSafe for Color
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> SetParameter for T
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
T: Parameter<Self>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,