Struct g2d::Canvas

source ·
pub struct Canvas<'a, H: Handle> { /* private fields */ }
Expand description

A view into a Texture used for reading or writing to it.

Implementations§

source§

impl<'a, H: Handle> Canvas<'a, H>

source

pub fn from_raw_parts(handle: &'a H, wgpu_texture: &'a Texture) -> Self

Creates an Canvas from its raw parts.

NOTE: the provided wgpu::Texture should have been created from the provided Handle.

source

pub fn write(&self, data: &[u8]) -> Result<(), Error>

Writes data directly to a Texture.

Fails
  • Fails if the underlying data is too big or small.
  • Fails if the Texture doesn’t have the COPY_DST usage.
source

pub async fn pixels(&self) -> Result<Pixels, Error>

Attempts to get the pixels of this Texture.

Fails
  • Fails if the texture doesn’t have the COPY_SRC usage.
source

pub fn clear(&self, color: Color) -> Result<(), Error>

Clears this Texture, filling it with the provided color.

Fails
  • Fails if this Texture does not have the RENDER_ATTACHMENT usage.

Trait Implementations§

source§

impl<'a, H: Debug + Handle> Debug for Canvas<'a, H>

source§

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

Formats the value using the given formatter. Read more
source§

impl<'a, H: Handle> Texture<H> for Canvas<'a, H>

source§

fn handle(&self) -> &H

Returns the Handle used to create this Texture.
source§

fn wgpu_texture(&self) -> &Texture

Returns the wgpu::Texture that this Texture wraps.
source§

fn wgpu_texture_usage(&self) -> TextureUsages

Returns the usages of this Texture allowed for the GPU. Any operations on this Texture not contained in this set will fail.
source§

fn size(&self) -> Dimension

Returns the size of this Texture, in pixels.
source§

fn canvas(&self) -> Canvas<'_, H>

Creates a Canvas for drawing to this Texture.

Auto Trait Implementations§

§

impl<'a, H> !RefUnwindSafe for Canvas<'a, H>

§

impl<'a, H> Send for Canvas<'a, H>where H: Sync,

§

impl<'a, H> Sync for Canvas<'a, H>where H: Sync,

§

impl<'a, H> Unpin for Canvas<'a, H>

§

impl<'a, H> !UnwindSafe for Canvas<'a, H>

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere 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, U> TryFrom<U> for Twhere U: Into<T>,

§

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 Twhere U: TryFrom<T>,

§

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.
§

impl<T> Upcast<T> for T

§

fn upcast(&self) -> Option<&T>

§

impl<T> WasmNotSend for Twhere T: Send,

§

impl<T> WasmNotSync for Twhere T: Sync,