[][src]Struct math2d::Vector2i

#[repr(C)]
pub struct Vector2i { pub x: i32, pub y: i32, }

Mathematical vector on the 2D (x, y) plane.

Fields

x: i32

Horizontal component.

y: i32

Vertical component.

Methods

impl Vector2i[src]

pub const ZERO: Vector2i[src]

The zero vector. Addition with the zero vector is the identity function.

pub fn new(x: i32, y: i32) -> Self[src]

Construct a vector from the components

pub fn to_f32(self) -> Vector2f[src]

Converts this vector to floating point components.

pub fn as_size(self) -> Sizeu[src]

Converts this vector to a size. Ensure the values are positive or you will experience casting underflow.

pub fn abs(self) -> Vector2i[src]

Returns the absolute values of the components.

Trait Implementations

impl PartialEq<Vector2i> for Vector2i[src]

impl Default for Vector2i[src]

impl Clone for Vector2i[src]

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

Performs copy-assignment from source. Read more

impl From<[i32; 2]> for Vector2i[src]

impl From<Vector2i> for [i32; 2][src]

impl From<Vector2i> for Vector2<i32>[src]

impl From<Vector2<i32>> for Vector2i[src]

impl Eq for Vector2i[src]

impl Copy for Vector2i[src]

impl Add<Point2i> for Vector2i[src]

type Output = Point2i

The resulting type after applying the + operator.

impl Add<(i32, i32)> for Vector2i[src]

type Output = Point2i

The resulting type after applying the + operator.

impl<V> Add<V> for Vector2i where
    V: Into<Vector2i>, 
[src]

type Output = Vector2i

The resulting type after applying the + operator.

impl<V> Sub<V> for Vector2i where
    V: Into<Vector2i>, 
[src]

type Output = Vector2i

The resulting type after applying the - operator.

impl Mul<i32> for Vector2i[src]

type Output = Vector2i

The resulting type after applying the * operator.

impl Mul<Vector2i> for i32[src]

type Output = Vector2i

The resulting type after applying the * operator.

impl Div<i32> for Vector2i[src]

type Output = Vector2i

The resulting type after applying the / operator.

impl Div<Vector2i> for i32[src]

type Output = Vector2i

The resulting type after applying the / operator.

impl Neg for Vector2i[src]

type Output = Vector2i

The resulting type after applying the - operator.

impl<V> AddAssign<V> for Vector2i where
    Vector2i: Add<V, Output = Vector2i>, 
[src]

impl<V> SubAssign<V> for Vector2i where
    Vector2i: Sub<V, Output = Vector2i>, 
[src]

impl<V> MulAssign<V> for Vector2i where
    Vector2i: Mul<V, Output = Vector2i>, 
[src]

impl<V> DivAssign<V> for Vector2i where
    Vector2i: Div<V, Output = Vector2i>, 
[src]

impl Debug for Vector2i[src]

impl Serialize for Vector2i[src]

impl<'de> Deserialize<'de> for Vector2i[src]

Auto Trait Implementations

impl Send for Vector2i

impl Sync for Vector2i

Blanket Implementations

impl<T> From for T[src]

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

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

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

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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

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

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

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]