Struct Image

Source
pub struct Image<'a, C: PixelColor> { /* private fields */ }
Expand description

Store image data.

Image can be constructed using the include_image macro at compile time. To draw an image it must be put inside a Sprite.

Implementations§

Source§

impl<'a, C: PixelColor> Image<'a, C>

Source

pub const fn new( colors: &'a [C], transparenty: &'a [u8], width: u16, height: u16, ) -> Result<Self, Error>

create a new Image from a array of PixelColors, a transparenty map.

Return an error, if the length of colors does not fit to the widht and height. You can unwrap the error in a const contexts, by using the konst crate see konst::result::unwrap_ctx for more informations.

transparency can be created by using the transparency! macro. It’s length doesn’t have to match the image length, missing data will be interpreted as fully opaque.

use embedded_graphics::pixelcolor::Bgr565;
use embedded_sprites::{image::Image, transparency};
use konst::result::unwrap_ctx;

type Color = Bgr565;
const IMAGE_DATA: [Color; 6] = [
	Color::new(255, 0, 0),
	Color::new(0, 255, 0),
	Color::new(0, 0, 255),
	Color::new(255, 0, 255),
	Color::new(255, 255, 255),
	Color::new(255, 255, 255),
];
const IMAGE: Image<Color> =
	unwrap_ctx!(Image::new(&IMAGE_DATA, &transparency![0, 0, 0, 1, 0], 3, 2));

Trait Implementations§

Source§

impl<'a, C: Debug + PixelColor> Debug for Image<'a, C>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'a, C> Freeze for Image<'a, C>

§

impl<'a, C> RefUnwindSafe for Image<'a, C>
where C: RefUnwindSafe,

§

impl<'a, C> Send for Image<'a, C>
where C: Sync,

§

impl<'a, C> Sync for Image<'a, C>
where C: Sync,

§

impl<'a, C> Unpin for Image<'a, C>

§

impl<'a, C> UnwindSafe for Image<'a, C>
where C: RefUnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Az for T

Source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

Source§

fn cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> CheckedAs for T

Source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

Source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> OverflowingAs for T

Source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

Source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
Source§

impl<T> SaturatingAs for T

Source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

Source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> UnwrappedAs for T

Source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

Source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> WrappingAs for T

Source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

Source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.