[][src]Struct embedded_graphics::geometry::Size

pub struct Size {
    pub width: u32,
    pub height: u32,
}

2D size.

Size is used to define the width and height of an object.

Nalgebra support can be enabled with the nalgebra_support feature. This implements From<Vector2<N>> and From<&Vector2<N>> where N is Scalar + Into<u32>. This allows use of Nalgebra's Vector2 with embedded-graphics where u32, u16 or u8 is used for value storage.

Examples

Create a Size from two integers

use embedded_graphics::geometry::Size;

// Create a size using the `new` constructor method
let s = Size::new(10, 20);

Create a Size from a Nalgebra Vector2

Be sure to enable the nalgebra_support feature to get Nalgebra integration.

Any Vector2<N> can be used where N: Into<u32> + nalgebra::Scalar. This includes the primitive types u32, u16 and u8.

use nalgebra::Vector2;
use embedded_graphics::geometry::Size;

assert_eq!(Size::from(Vector2::new(10u32, 20)), Size::new(10u32, 20));
assert_eq!(Size::from(Vector2::new(10u16, 20)), Size::new(10u32, 20));
assert_eq!(Size::from(Vector2::new(10u8, 20)), Size::new(10u32, 20));

.into() can also be used, but may require more type annotations:

use nalgebra::Vector2;
use embedded_graphics::geometry::Size;

let c: Size = Vector2::new(10u32, 20).into();

assert_eq!(c, Size::new(10u32, 20));

Fields

width: u32

The width.

height: u32

The height.

Methods

impl Size[src]

pub const fn new(width: u32, height: u32) -> Self[src]

Creates a size from a width and a height.

pub const fn zero() -> Self[src]

Creates a size with width and height equal to zero.

Trait Implementations

impl Debug for Size[src]

impl PartialEq<Size> for Size[src]

impl Eq for Size[src]

impl Add<Size> for Point[src]

type Output = Point

The resulting type after applying the + operator.

fn add(self, other: Size) -> Point[src]

Offsets a point by adding a size.

Panics

This function will panic if width or height are too large to be represented as an i32 and debug assertions are enabled.

impl Add<Size> for Size[src]

type Output = Size

The resulting type after applying the + operator.

impl Sub<Size> for Point[src]

type Output = Point

The resulting type after applying the - operator.

fn sub(self, other: Size) -> Point[src]

Offsets a point by subtracting a size.

Panics

This function will panic if width or height are too large to be represented as an i32 and debug assertions are enabled.

impl Sub<Size> for Size[src]

type Output = Size

The resulting type after applying the - operator.

impl AddAssign<Size> for Point[src]

fn add_assign(&mut self, other: Size)[src]

Offsets a point by adding a size.

Panics

This function will panic if width or height are too large to be represented as an i32 and debug assertions are enabled.

impl AddAssign<Size> for Size[src]

impl SubAssign<Size> for Point[src]

fn sub_assign(&mut self, other: Size)[src]

Offsets a point by subtracting a size.

Panics

This function will panic if width or height are too large to be represented as an i32 and debug assertions are enabled.

impl SubAssign<Size> for Size[src]

impl Index<usize> for Size[src]

type Output = u32

The returned type after indexing.

impl Copy for Size[src]

impl From<(u32, u32)> for Size[src]

impl From<[u32; 2]> for Size[src]

impl<'_> From<&'_ [u32; 2]> for Size[src]

impl From<Size> for (u32, u32)[src]

impl<'_> From<&'_ Size> for (u32, u32)[src]

impl<N> From<Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>> for Size where
    N: Into<u32> + Scalar
[src]

impl<'_, N> From<&'_ Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>> for Size where
    N: Into<u32> + Scalar
[src]

impl Clone for Size[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Default for Size[src]

Auto Trait Implementations

impl Unpin for Size

impl Sync for Size

impl Send for Size

Blanket Implementations

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Scalar for T where
    T: Copy + PartialEq<T> + Any + Debug
[src]

fn is<T>() -> bool where
    T: Scalar
[src]

Tests if Self the same as the type T Read more

impl<T, Right> ClosedAdd<Right> for T where
    T: Add<Right, Output = T> + AddAssign<Right>, 

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, Right> ClosedSub<Right> for T where
    T: Sub<Right, Output = T> + SubAssign<Right>, 

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>,