#[repr(C)]pub struct Vector2i {
pub x: i32,
pub y: i32,
}Expand description
An owning representation of an integral 2-component Euclidean vector.
Like Vec2i, the Vector2i object represents a Euclidean vector in
2D. Unlike the Vec2i, this is an owning representation that stores the
actual content of the vector.
Fields§
§x: i32The X-component of the vector.
y: i32The Y-component of the vector.
Implementations§
source§impl Vector2i
impl Vector2i
sourcepub const ZERO: Vector2i = _
pub const ZERO: Vector2i = _
A constant for a Null vector, which has magnitude 0 and exists at the origin.
sourcepub const UNIT_X: Vector2i = _
pub const UNIT_X: Vector2i = _
A constant for a unit vector in the positive X-direction.
sourcepub const UNIT_Y: Vector2i = _
pub const UNIT_Y: Vector2i = _
A constant for a unit vector in the positive Y-direction.
sourcepub const NEG_UNIT_X: Vector2i = _
pub const NEG_UNIT_X: Vector2i = _
A constant for a unit vector in the negative X-direction.
sourcepub const NEG_UNIT_Y: Vector2i = _
pub const NEG_UNIT_Y: Vector2i = _
A constant for a unit vector in the negative Y-direction.
sourcepub const fn new(x: i32, y: i32) -> Self
pub const fn new(x: i32, y: i32) -> Self
Constructs this vector from an x and y coordinate.
§Parameters
x- the x-componenty- the y-component
sourcepub const fn from_array(array: &[i32; 2]) -> Self
pub const fn from_array(array: &[i32; 2]) -> Self
sourcepub const fn from_slice(slice: &[i32]) -> Result<Self, VecError>
pub const fn from_slice(slice: &[i32]) -> Result<Self, VecError>
sourcepub const unsafe fn from_slice_unchecked(slice: &[i32]) -> Self
pub const unsafe fn from_slice_unchecked(slice: &[i32]) -> Self
sourcepub const fn from_vec2i(other: &Vec2i) -> Self
pub const fn from_vec2i(other: &Vec2i) -> Self
sourcepub fn as_mut_vec2i(&mut self) -> &mut Vec2i
pub fn as_mut_vec2i(&mut self) -> &mut Vec2i
Returns this vector as a mutable [Vec2].
sourcepub fn as_mut_slice(&mut self) -> &mut [i32]
pub fn as_mut_slice(&mut self) -> &mut [i32]
Returns this vector as a mutable slice of i32.
Methods from Deref<Target = Vec2i>§
sourcepub fn as_mut_slice(&mut self) -> &mut [i32]
pub fn as_mut_slice(&mut self) -> &mut [i32]
Returns this [Vec2] as a mutable slice of i32.
sourcepub fn as_mut_ptr(&mut self) -> *mut i32
pub fn as_mut_ptr(&mut self) -> *mut i32
Returns a mutable raw pointer to i32 of the vector’s buffer.
sourcepub fn iter_mut(&mut self) -> impl Iterator<Item = &mut i32>
pub fn iter_mut(&mut self) -> impl Iterator<Item = &mut i32>
Returns a mutable iterator over the vector.
sourcepub fn x_mut(&mut self) -> &mut i32
pub fn x_mut(&mut self) -> &mut i32
Returns a mutable reference to the X-coordinate of this 2-component vector.
sourcepub fn y_mut(&mut self) -> &mut i32
pub fn y_mut(&mut self) -> &mut i32
Returns a mutable reference to the Y-coordinate of this 2-component vector.
sourcepub fn set(&mut self, other: &Vec2i)
pub fn set(&mut self, other: &Vec2i)
Sets all the components of this vector the values from other.
§Parameters
other- the other [Vec2] to set.
Trait Implementations§
source§impl AddAssign<&Vec2i> for Vector2i
impl AddAssign<&Vec2i> for Vector2i
source§fn add_assign(&mut self, rhs: &Vec2i)
fn add_assign(&mut self, rhs: &Vec2i)
+= operation. Read moresource§impl AddAssign<&Vector2i> for Vector2i
impl AddAssign<&Vector2i> for Vector2i
source§fn add_assign(&mut self, rhs: &Self)
fn add_assign(&mut self, rhs: &Self)
+= operation. Read moresource§impl AddAssign for Vector2i
impl AddAssign for Vector2i
source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
+= operation. Read moresource§impl BorrowMut<Vec2i> for Vector2i
impl BorrowMut<Vec2i> for Vector2i
source§fn borrow_mut(&mut self) -> &mut Vec2i
fn borrow_mut(&mut self) -> &mut Vec2i
source§impl DivAssign<i32> for Vector2i
impl DivAssign<i32> for Vector2i
source§fn div_assign(&mut self, rhs: i32)
fn div_assign(&mut self, rhs: i32)
/= operation. Read moresource§impl MulAssign<i32> for Vector2i
impl MulAssign<i32> for Vector2i
source§fn mul_assign(&mut self, rhs: i32)
fn mul_assign(&mut self, rhs: i32)
*= operation. Read moresource§impl Ord for Vector2i
impl Ord for Vector2i
source§impl PartialOrd for Vector2i
impl PartialOrd for Vector2i
source§impl RemAssign<i32> for Vector2i
impl RemAssign<i32> for Vector2i
source§fn rem_assign(&mut self, rhs: i32)
fn rem_assign(&mut self, rhs: i32)
%= operation. Read moresource§impl SubAssign<&Vec2i> for Vector2i
impl SubAssign<&Vec2i> for Vector2i
source§fn sub_assign(&mut self, rhs: &Vec2i)
fn sub_assign(&mut self, rhs: &Vec2i)
-= operation. Read moresource§impl SubAssign<&Vector2i> for Vector2i
impl SubAssign<&Vector2i> for Vector2i
source§fn sub_assign(&mut self, rhs: &Self)
fn sub_assign(&mut self, rhs: &Self)
-= operation. Read moresource§impl SubAssign for Vector2i
impl SubAssign for Vector2i
source§fn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
-= operation. Read moreimpl Copy for Vector2i
impl Eq for Vector2i
impl StructuralPartialEq for Vector2i
Auto Trait Implementations§
impl Freeze for Vector2i
impl RefUnwindSafe for Vector2i
impl Send for Vector2i
impl Sync for Vector2i
impl Unpin for Vector2i
impl UnwindSafe for Vector2i
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)