#[repr(C)]pub struct RGB<ComponentType> {
pub r: ComponentType,
pub g: ComponentType,
pub b: ComponentType,
}
Expand description
The RGB pixel
The component type can be u8
(aliased as RGB8
), u16
(aliased as RGB16
),
or any other type (but simple copyable types are recommended.)
Fields
r: ComponentType
Red
g: ComponentType
Green
b: ComponentType
Blue
Implementations
Trait Implementations
sourceimpl<T> AddAssign<RGB<T>> for RGB<T> where
T: Add<T, Output = T> + Copy,
impl<T> AddAssign<RGB<T>> for RGB<T> where
T: Add<T, Output = T> + Copy,
px + px
sourcefn add_assign(&mut self, other: RGB<T>)
fn add_assign(&mut self, other: RGB<T>)
Performs the +=
operation. Read more
sourceimpl<T> AddAssign<T> for RGB<T> where
T: Copy + Add<T, Output = T>,
impl<T> AddAssign<T> for RGB<T> where
T: Copy + Add<T, 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<RGB<T>> for [T]
impl<T> AsPixels<RGB<T>> for [T]
sourcefn as_pixels(&self) -> &[RGB<T>]
fn as_pixels(&self) -> &[RGB<T>]
Reinterpret the slice as a read-only/shared slice of pixels. Multiple consecutive elements in the slice are intepreted as a single pixel (depending on format, e.g. 3 for RGB, 4 for RGBA). Read more
sourcefn as_pixels_mut(&mut self) -> &mut [RGB<T>]
fn as_pixels_mut(&mut self) -> &mut [RGB<T>]
Reinterpret the slice as a mutable/exclusive slice of pixels. Multiple consecutive elements in the slice are intepreted as a single pixel (depending on format, e.g. 3 for RGB, 4 for RGBA). Read more
sourceimpl<T, B> ColorComponentMap<RGB<B>, T, B> for RGB<T> where
T: Copy,
impl<T, B> ColorComponentMap<RGB<B>, T, B> for RGB<T> where
T: Copy,
sourceimpl<T, B> ComponentMap<RGB<B>, T, B> for RGB<T> where
T: Copy,
impl<T, B> ComponentMap<RGB<B>, T, B> for RGB<T> where
T: Copy,
sourceimpl<T> ComponentSlice<T> for RGB<T>
impl<T> ComponentSlice<T> for RGB<T>
sourceimpl<T> DivAssign<T> for RGB<T> where
T: Copy + Div<T, Output = T>,
impl<T> DivAssign<T> for RGB<T> where
T: Copy + Div<T, 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 RGB<T>
impl<T> FromIterator<T> for RGB<T>
sourcefn from_iter<I>(into_iter: I) -> RGB<T> where
I: IntoIterator<Item = T>,
fn from_iter<I>(into_iter: I) -> RGB<T> where
I: IntoIterator<Item = T>,
Takes exactly 3 elements from the iterator and creates a new instance. Panics if there are fewer elements in the iterator.
sourceimpl<T> MulAssign<RGB<T>> for RGB<T> where
T: Mul<T, Output = T> + Copy,
impl<T> MulAssign<RGB<T>> for RGB<T> where
T: Mul<T, Output = T> + Copy,
px * px
sourcefn mul_assign(&mut self, other: RGB<T>)
fn mul_assign(&mut self, other: RGB<T>)
Performs the *=
operation. Read more
sourceimpl<T> MulAssign<T> for RGB<T> where
T: Copy + Mul<T, Output = T>,
impl<T> MulAssign<T> for RGB<T> where
T: Copy + Mul<T, 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 for RGB<ComponentType> where
ComponentType: Ord,
impl<ComponentType> Ord for RGB<ComponentType> where
ComponentType: Ord,
sourceimpl<ComponentType> PartialEq<RGB<ComponentType>> for RGB<ComponentType> where
ComponentType: PartialEq<ComponentType>,
impl<ComponentType> PartialEq<RGB<ComponentType>> for RGB<ComponentType> where
ComponentType: PartialEq<ComponentType>,
sourceimpl<ComponentType> PartialOrd<RGB<ComponentType>> for RGB<ComponentType> where
ComponentType: PartialOrd<ComponentType>,
impl<ComponentType> PartialOrd<RGB<ComponentType>> for RGB<ComponentType> where
ComponentType: PartialOrd<ComponentType>,
sourcefn partial_cmp(&self, other: &RGB<ComponentType>) -> Option<Ordering>
fn partial_cmp(&self, other: &RGB<ComponentType>) -> 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> SubAssign<RGB<T>> for RGB<T> where
T: Sub<T, Output = T> + Copy,
impl<T> SubAssign<RGB<T>> for RGB<T> where
T: Sub<T, Output = T> + Copy,
px - px
sourcefn sub_assign(&mut self, other: RGB<T>)
fn sub_assign(&mut self, other: RGB<T>)
Performs the -=
operation. Read more
sourceimpl<T> SubAssign<T> for RGB<T> where
T: Copy + Sub<T, Output = T>,
impl<T> SubAssign<T> for RGB<T> where
T: Copy + Sub<T, Output = T>,
px - 1
sourcefn sub_assign(&mut self, r: T)
fn sub_assign(&mut self, r: T)
Performs the -=
operation. Read more
impl<ComponentType> Copy for RGB<ComponentType> where
ComponentType: Copy,
impl<ComponentType> Eq for RGB<ComponentType> where
ComponentType: Eq,
impl<T> Pod for RGB<T> where
T: Pod,
impl<ComponentType> StructuralEq for RGB<ComponentType>
impl<ComponentType> StructuralPartialEq for RGB<ComponentType>
Auto Trait Implementations
impl<ComponentType> RefUnwindSafe for RGB<ComponentType> where
ComponentType: RefUnwindSafe,
impl<ComponentType> Send for RGB<ComponentType> where
ComponentType: Send,
impl<ComponentType> Sync for RGB<ComponentType> where
ComponentType: Sync,
impl<ComponentType> Unpin for RGB<ComponentType> where
ComponentType: Unpin,
impl<ComponentType> UnwindSafe for RGB<ComponentType> where
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
impl<T> CheckedBitPattern for T where
T: AnyBitPattern,
impl<T> CheckedBitPattern for T where
T: AnyBitPattern,
type Bits = T
type Bits = T
Self
must have the same layout as the specified Bits
except for
the possible invalid bit patterns being checked during is_valid_bit_pattern
. Read more
fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
If this function returns true, then it must be valid to reinterpret bits
as &Self
.