#[repr(C)]pub struct RGBA<ComponentType, AlphaComponentType = ComponentType> {
pub r: ComponentType,
pub g: ComponentType,
pub b: ComponentType,
pub a: AlphaComponentType,
}
Expand description
The RGBA pixel
The component type can be u8
(aliased as RGBA8
), u16
(aliased as RGBA16
),
or any other type (but simple copyable types are recommended.)
You can specify a different type for alpha, but it’s only for special cases
(e.g. if you use a newtype like RGBA<LinearLight<u16>, u16>
).
Fields
r: ComponentType
Red
g: ComponentType
Green
b: ComponentType
Blue
a: AlphaComponentType
Alpha
Implementations
sourceimpl<T: Copy, A: Clone> RGBA<T, A>
impl<T: Copy, A: Clone> RGBA<T, A>
Trait Implementations
sourceimpl<T, A> AddAssign<RGBA<T, A>> for RGBA<T, A> where
T: Add<Output = T> + Copy,
A: Add<Output = A> + Copy,
impl<T, A> AddAssign<RGBA<T, A>> for RGBA<T, A> where
T: Add<Output = T> + Copy,
A: Add<Output = A> + Copy,
px + px
sourcefn add_assign(&mut self, other: RGBA<T, A>)
fn add_assign(&mut self, other: RGBA<T, A>)
Performs the +=
operation. Read more
sourceimpl<T> AddAssign<T> for RGBA<T> where
T: Copy + Add<Output = T>,
impl<T> AddAssign<T> for RGBA<T> where
T: Copy + Add<Output = T>,
px + 1
sourcefn add_assign(&mut self, r: T)
fn add_assign(&mut self, r: T)
Performs the +=
operation. Read more
sourceimpl<T> AsPixels<RGBA<T, T>> for [T]
impl<T> AsPixels<RGBA<T, T>> for [T]
sourceimpl<ComponentType: Clone, AlphaComponentType: Clone> Clone for RGBA<ComponentType, AlphaComponentType>
impl<ComponentType: Clone, AlphaComponentType: Clone> Clone for RGBA<ComponentType, AlphaComponentType>
sourceimpl<T: Copy, B> ComponentMap<RGBA<B, B>, T, B> for RGBA<T>
impl<T: Copy, B> ComponentMap<RGBA<B, B>, T, B> for RGBA<T>
sourceimpl<T> ComponentSlice<T> for RGBA<T>
impl<T> ComponentSlice<T> for RGBA<T>
sourceimpl<ComponentType: Debug, AlphaComponentType: Debug> Debug for RGBA<ComponentType, AlphaComponentType>
impl<ComponentType: Debug, AlphaComponentType: Debug> Debug for RGBA<ComponentType, AlphaComponentType>
sourceimpl<ComponentType: Default, AlphaComponentType: Default> Default for RGBA<ComponentType, AlphaComponentType>
impl<ComponentType: Default, AlphaComponentType: Default> Default for RGBA<ComponentType, AlphaComponentType>
sourceimpl<T> DivAssign<T> for RGBA<T> where
T: Copy + Div<Output = T>,
impl<T> DivAssign<T> for RGBA<T> where
T: Copy + Div<Output = T>,
px * 1
sourcefn div_assign(&mut self, r: T)
fn div_assign(&mut self, r: T)
Performs the /=
operation. Read more
sourceimpl<T> FromIterator<T> for RGBA<T>
impl<T> FromIterator<T> for RGBA<T>
sourcefn from_iter<I: IntoIterator<Item = T>>(into_iter: I) -> Self
fn from_iter<I: IntoIterator<Item = T>>(into_iter: I) -> Self
Takes exactly 4 elements from the iterator and creates a new instance. Panics if there are fewer elements in the iterator.
sourceimpl<ComponentType: Hash, AlphaComponentType: Hash> Hash for RGBA<ComponentType, AlphaComponentType>
impl<ComponentType: Hash, AlphaComponentType: Hash> Hash for RGBA<ComponentType, AlphaComponentType>
sourceimpl<T> MulAssign<T> for RGBA<T> where
T: Copy + Mul<Output = T>,
impl<T> MulAssign<T> for RGBA<T> where
T: Copy + Mul<Output = T>,
px * 1
sourcefn mul_assign(&mut self, r: T)
fn mul_assign(&mut self, r: T)
Performs the *=
operation. Read more
sourceimpl<ComponentType: Ord, AlphaComponentType: Ord> Ord for RGBA<ComponentType, AlphaComponentType>
impl<ComponentType: Ord, AlphaComponentType: Ord> Ord for RGBA<ComponentType, AlphaComponentType>
sourceimpl<ComponentType: PartialEq, AlphaComponentType: PartialEq> PartialEq<RGBA<ComponentType, AlphaComponentType>> for RGBA<ComponentType, AlphaComponentType>
impl<ComponentType: PartialEq, AlphaComponentType: PartialEq> PartialEq<RGBA<ComponentType, AlphaComponentType>> for RGBA<ComponentType, AlphaComponentType>
sourceimpl<ComponentType: PartialOrd, AlphaComponentType: PartialOrd> PartialOrd<RGBA<ComponentType, AlphaComponentType>> for RGBA<ComponentType, AlphaComponentType>
impl<ComponentType: PartialOrd, AlphaComponentType: PartialOrd> PartialOrd<RGBA<ComponentType, AlphaComponentType>> for RGBA<ComponentType, AlphaComponentType>
sourcefn partial_cmp(
&self,
other: &RGBA<ComponentType, AlphaComponentType>
) -> Option<Ordering>
fn partial_cmp(
&self,
other: &RGBA<ComponentType, AlphaComponentType>
) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
sourceimpl<T, A> SubAssign<RGBA<T, A>> for RGBA<T, A> where
T: Sub<Output = T> + Copy,
A: Sub<Output = A> + Copy,
impl<T, A> SubAssign<RGBA<T, A>> for RGBA<T, A> where
T: Sub<Output = T> + Copy,
A: Sub<Output = A> + Copy,
px - px
sourcefn sub_assign(&mut self, other: RGBA<T, A>)
fn sub_assign(&mut self, other: RGBA<T, A>)
Performs the -=
operation. Read more
sourceimpl<T> SubAssign<T> for RGBA<T> where
T: Copy + Sub<Output = T>,
impl<T> SubAssign<T> for RGBA<T> where
T: Copy + Sub<Output = T>,
px - 1
sourcefn sub_assign(&mut self, r: T)
fn sub_assign(&mut self, r: T)
Performs the -=
operation. Read more
sourceimpl<T, A> Sum<RGBA<T, A>> for RGBA<T, A> where
T: Default + Add<Output = T>,
A: Default + Add<Output = A>,
impl<T, A> Sum<RGBA<T, A>> for RGBA<T, A> where
T: Default + Add<Output = T>,
A: Default + Add<Output = A>,
impl<ComponentType: Copy, AlphaComponentType: Copy> Copy for RGBA<ComponentType, AlphaComponentType>
impl<ComponentType: Eq, AlphaComponentType: Eq> Eq for RGBA<ComponentType, AlphaComponentType>
impl<ComponentType, AlphaComponentType> StructuralEq for RGBA<ComponentType, AlphaComponentType>
impl<ComponentType, AlphaComponentType> StructuralPartialEq for RGBA<ComponentType, AlphaComponentType>
Auto Trait Implementations
impl<ComponentType, AlphaComponentType> RefUnwindSafe for RGBA<ComponentType, AlphaComponentType> where
AlphaComponentType: RefUnwindSafe,
ComponentType: RefUnwindSafe,
impl<ComponentType, AlphaComponentType> Send for RGBA<ComponentType, AlphaComponentType> where
AlphaComponentType: Send,
ComponentType: Send,
impl<ComponentType, AlphaComponentType> Sync for RGBA<ComponentType, AlphaComponentType> where
AlphaComponentType: Sync,
ComponentType: Sync,
impl<ComponentType, AlphaComponentType> Unpin for RGBA<ComponentType, AlphaComponentType> where
AlphaComponentType: Unpin,
ComponentType: Unpin,
impl<ComponentType, AlphaComponentType> UnwindSafe for RGBA<ComponentType, AlphaComponentType> where
AlphaComponentType: UnwindSafe,
ComponentType: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more