pub enum BinaryColor {
Off,
On,
}
Expand description
Binary color.
BinaryColor
is used for displays and images with two possible color states.
The interpretation of active and inactive states can be different for
different types of displays. A BinaryColor::On
might represent a black
pixel on an LCD and a white pixel on an OLED display.
To simplify the conversion from BinaryColor
to RGB and grayscale color
types the default conversions assume that BinaryColor::Off
is black and
BinaryColor::On
is white.
Conversion between BinaryColor and bool
use embedded_graphics::pixelcolor::BinaryColor;
// A BinaryColor can be converted to a bool by using the is_on and is_off methods.
let color = BinaryColor::On;
assert!(color.is_on());
assert!(color.invert().is_off());
// BinaryColor implements From<bool>.
let bool_value = true;
let color: BinaryColor = bool_value.into();
assert_eq!(color, BinaryColor::On);
// this is equivalent to:
let bool_value = true;
let color = if bool_value {
BinaryColor::On
} else {
BinaryColor::Off
};
assert_eq!(color, BinaryColor::On);
Variants§
Implementations§
source§impl BinaryColor
impl BinaryColor
sourcepub const fn invert(self) -> Self
pub const fn invert(self) -> Self
Inverts the color.
Examples
use embedded_graphics::pixelcolor::BinaryColor;
assert_eq!(BinaryColor::Off.invert(), BinaryColor::On);
assert_eq!(BinaryColor::On.invert(), BinaryColor::Off);
Trait Implementations§
source§impl Clone for BinaryColor
impl Clone for BinaryColor
source§fn clone(&self) -> BinaryColor
fn clone(&self) -> BinaryColor
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for BinaryColor
impl Debug for BinaryColor
source§impl Default for BinaryColor
impl Default for BinaryColor
source§impl Format for BinaryColor
impl Format for BinaryColor
source§impl From<Bgr555> for BinaryColor
impl From<Bgr555> for BinaryColor
source§impl From<Bgr565> for BinaryColor
impl From<Bgr565> for BinaryColor
source§impl From<Bgr666> for BinaryColor
impl From<Bgr666> for BinaryColor
source§impl From<Bgr888> for BinaryColor
impl From<Bgr888> for BinaryColor
source§impl From<BinaryColor> for Bgr555
impl From<BinaryColor> for Bgr555
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<BinaryColor> for Bgr565
impl From<BinaryColor> for Bgr565
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<BinaryColor> for Bgr666
impl From<BinaryColor> for Bgr666
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<BinaryColor> for Bgr888
impl From<BinaryColor> for Bgr888
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<BinaryColor> for Gray2
impl From<BinaryColor> for Gray2
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<BinaryColor> for Gray4
impl From<BinaryColor> for Gray4
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<BinaryColor> for Gray8
impl From<BinaryColor> for Gray8
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<BinaryColor> for RawU1
impl From<BinaryColor> for RawU1
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<BinaryColor> for Rgb555
impl From<BinaryColor> for Rgb555
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<BinaryColor> for Rgb565
impl From<BinaryColor> for Rgb565
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<BinaryColor> for Rgb666
impl From<BinaryColor> for Rgb666
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<BinaryColor> for Rgb888
impl From<BinaryColor> for Rgb888
source§fn from(color: BinaryColor) -> Self
fn from(color: BinaryColor) -> Self
Converts to this type from the input type.
source§impl From<Gray2> for BinaryColor
impl From<Gray2> for BinaryColor
source§impl From<Gray4> for BinaryColor
impl From<Gray4> for BinaryColor
source§impl From<Gray8> for BinaryColor
impl From<Gray8> for BinaryColor
source§impl From<RawU1> for BinaryColor
impl From<RawU1> for BinaryColor
source§impl From<Rgb555> for BinaryColor
impl From<Rgb555> for BinaryColor
source§impl From<Rgb565> for BinaryColor
impl From<Rgb565> for BinaryColor
source§impl From<Rgb666> for BinaryColor
impl From<Rgb666> for BinaryColor
source§impl From<Rgb888> for BinaryColor
impl From<Rgb888> for BinaryColor
source§impl From<bool> for BinaryColor
impl From<bool> for BinaryColor
source§impl Hash for BinaryColor
impl Hash for BinaryColor
source§impl Ord for BinaryColor
impl Ord for BinaryColor
source§fn cmp(&self, other: &BinaryColor) -> Ordering
fn cmp(&self, other: &BinaryColor) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq<BinaryColor> for BinaryColor
impl PartialEq<BinaryColor> for BinaryColor
source§fn eq(&self, other: &BinaryColor) -> bool
fn eq(&self, other: &BinaryColor) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<BinaryColor> for BinaryColor
impl PartialOrd<BinaryColor> for BinaryColor
source§fn partial_cmp(&self, other: &BinaryColor) -> Option<Ordering>
fn partial_cmp(&self, other: &BinaryColor) -> Option<Ordering>
1.0.0 · source§fn 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 moresource§impl PixelColor for BinaryColor
impl PixelColor for BinaryColor
impl Copy for BinaryColor
impl Eq for BinaryColor
impl StructuralEq for BinaryColor
impl StructuralPartialEq for BinaryColor
Auto Trait Implementations§
impl RefUnwindSafe for BinaryColor
impl Send for BinaryColor
impl Sync for BinaryColor
impl Unpin for BinaryColor
impl UnwindSafe for BinaryColor
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where T: CheckedCast<Dst>,
Casts the value.
source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere Src: CheckedCast<Dst>,
source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Casts the value.
source§impl<C> IntoStorage for Cwhere
C: PixelColor,
<C as PixelColor>::Raw: From<C>,
impl<C> IntoStorage for Cwhere C: PixelColor, <C as PixelColor>::Raw: From<C>,
§type Storage = <<C as PixelColor>::Raw as RawData>::Storage
type Storage = <<C as PixelColor>::Raw as RawData>::Storage
The underlying storage type for the pixel color
source§fn into_storage(self) -> <C as IntoStorage>::Storage
fn into_storage(self) -> <C as IntoStorage>::Storage
Convert the
PixelColor
into its raw storage formsource§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where T: OverflowingCast<Dst>,
Casts the value.
source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere Src: OverflowingCast<Dst>,
source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Casts the value.
source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere T: SaturatingCast<Dst>,
Casts the value.
source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere Src: SaturatingCast<Dst>,
source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Casts the value.
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.source§impl<C> ToBytes for Cwhere
C: PixelColor + Into<<C as PixelColor>::Raw>,
impl<C> ToBytes for Cwhere C: PixelColor + Into<<C as PixelColor>::Raw>,
source§fn to_le_bytes(self) -> <C as ToBytes>::Bytes
fn to_le_bytes(self) -> <C as ToBytes>::Bytes
Converts a color into a byte array with little endian byte order.
source§fn to_be_bytes(self) -> <C as ToBytes>::Bytes
fn to_be_bytes(self) -> <C as ToBytes>::Bytes
Converts a color into a byte array with big endian byte order.
source§fn to_ne_bytes(self) -> <C as ToBytes>::Bytes
fn to_ne_bytes(self) -> <C as ToBytes>::Bytes
Converts a color into a byte array with native byte order.
source§impl<T> UnwrappedAs for T
impl<T> UnwrappedAs for T
source§fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
fn unwrapped_as<Dst>(self) -> Dstwhere T: UnwrappedCast<Dst>,
Casts the value.
source§impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere Src: UnwrappedCast<Dst>,
source§fn unwrapped_cast_from(src: Src) -> Dst
fn unwrapped_cast_from(src: Src) -> Dst
Casts the value.
source§impl<T> WrappingAs for T
impl<T> WrappingAs for T
source§fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
fn wrapping_as<Dst>(self) -> Dstwhere T: WrappingCast<Dst>,
Casts the value.
source§impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere Src: WrappingCast<Dst>,
source§fn wrapping_cast_from(src: Src) -> Dst
fn wrapping_cast_from(src: Src) -> Dst
Casts the value.