#[repr(C)]pub struct Vector<T = f32> {
pub dx: T,
pub dy: T,
}Fieldsยง
ยงdx: Tยงdy: TImplementationsยง
Sourceยงimpl<T: Num> Vector<T>
impl<T: Num> Vector<T>
pub fn new(dx: T, dy: T) -> Self
pub fn uniform(d: T) -> Self
pub fn from_dx(dx: T) -> Self
pub fn from_dy(dy: T) -> Self
pub fn zero() -> Self
pub fn one() -> Self
pub fn from_array([dx, dy]: [T; 2]) -> Self
pub fn from_tuple((dx, dy): (T, T)) -> Self
pub fn with_dx(self, dx: T) -> Self
pub fn with_dy(self, dy: T) -> Self
pub fn dot_product(self, rhs: Self) -> T
pub fn magnitude_squared(self) -> T
pub fn magnitude(self) -> Twhere
T: Float,
pub fn normalize(self) -> Selfwhere
T: Float,
pub fn angle(self) -> Angle<T>where
T: Float,
pub fn scaled(self, rhs: Size<T>) -> Self
pub fn perpendicular(self) -> Selfwhere
T: Neg<Output = T>,
pub fn yx(self) -> Self
pub fn transform(&self, transform: Transform<T>) -> Self
pub fn map<U: Num>(&self, f: impl FnMut(T) -> U) -> Vector<U>
pub fn map_dx(&self, f: impl FnMut(T) -> T) -> Self
pub fn map_dy(&self, f: impl FnMut(T) -> T) -> Self
pub fn round(self) -> Selfwhere
T: Float,
pub fn cast<U: Num>(self) -> Vector<U>
pub fn to_i8(self) -> Vector<i8>
pub fn to_i16(self) -> Vector<i16>
pub fn to_i32(self) -> Vector<i32>
pub fn to_i64(self) -> Vector<i64>
pub fn to_i128(self) -> Vector<i128>
pub fn to_isize(self) -> Vector<isize>
pub fn to_u8(self) -> Vector<u8>
pub fn to_u16(self) -> Vector<u16>
pub fn to_u32(self) -> Vector<u32>
pub fn to_u64(self) -> Vector<u64>
pub fn to_u128(self) -> Vector<u128>
pub fn to_usize(self) -> Vector<usize>
pub fn to_f32(self) -> Vector<f32>
pub fn to_f64(self) -> Vector<f64>
pub fn to_array(self) -> [T; 2]
pub fn to_tuple(self) -> (T, T)
pub fn to_point(self) -> Point<T>
pub fn to_size(self) -> Size<T>
Trait Implementationsยง
Sourceยงimpl<T: Num> AddAssign<Vector<T>> for Circle<T>
impl<T: Num> AddAssign<Vector<T>> for Circle<T>
Sourceยงfn add_assign(&mut self, rhs: Vector<T>)
fn add_assign(&mut self, rhs: Vector<T>)
Performs the
+= operation. Read moreSourceยงimpl<T: Num> AddAssign<Vector<T>> for Point<T>
impl<T: Num> AddAssign<Vector<T>> for Point<T>
Sourceยงfn add_assign(&mut self, rhs: Vector<T>)
fn add_assign(&mut self, rhs: Vector<T>)
Performs the
+= operation. Read moreSourceยงimpl<T: Num> AddAssign<Vector<T>> for Rect<T>
impl<T: Num> AddAssign<Vector<T>> for Rect<T>
Sourceยงfn add_assign(&mut self, rhs: Vector<T>)
fn add_assign(&mut self, rhs: Vector<T>)
Performs the
+= operation. Read moreSourceยงimpl<T: Num> AddAssign<Vector<T>> for RectPosition<T>
impl<T: Num> AddAssign<Vector<T>> for RectPosition<T>
Sourceยงfn add_assign(&mut self, rhs: Vector<T>)
fn add_assign(&mut self, rhs: Vector<T>)
Performs the
+= operation. Read moreSourceยงimpl<T: Num> AddAssign<Vector<T>> for Size<T>
impl<T: Num> AddAssign<Vector<T>> for Size<T>
Sourceยงfn add_assign(&mut self, rhs: Vector<T>)
fn add_assign(&mut self, rhs: Vector<T>)
Performs the
+= operation. Read moreSourceยงimpl<T: Num> AddAssign for Vector<T>
impl<T: Num> AddAssign for Vector<T>
Sourceยงfn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
Performs the
+= operation. Read moreSourceยงimpl<T: Num> DivAssign<T> for Vector<T>
impl<T: Num> DivAssign<T> for Vector<T>
Sourceยงfn div_assign(&mut self, rhs: T)
fn div_assign(&mut self, rhs: T)
Performs the
/= operation. Read moreSourceยงimpl<T: Num> DivAssign<Vector<T>> for Point<T>
impl<T: Num> DivAssign<Vector<T>> for Point<T>
Sourceยงfn div_assign(&mut self, rhs: Vector<T>)
fn div_assign(&mut self, rhs: Vector<T>)
Performs the
/= operation. Read moreSourceยงimpl<T: Num> DivAssign<Vector<T>> for Rect<T>
impl<T: Num> DivAssign<Vector<T>> for Rect<T>
Sourceยงfn div_assign(&mut self, rhs: Vector<T>)
fn div_assign(&mut self, rhs: Vector<T>)
Performs the
/= operation. Read moreSourceยงimpl<T: Num> DivAssign<Vector<T>> for Size<T>
impl<T: Num> DivAssign<Vector<T>> for Size<T>
Sourceยงfn div_assign(&mut self, rhs: Vector<T>)
fn div_assign(&mut self, rhs: Vector<T>)
Performs the
/= operation. Read moreSourceยงimpl<T: Num> DivAssign for Vector<T>
impl<T: Num> DivAssign for Vector<T>
Sourceยงfn div_assign(&mut self, rhs: Self)
fn div_assign(&mut self, rhs: Self)
Performs the
/= operation. Read moreSourceยงimpl<T: Num> MulAssign<T> for Vector<T>
impl<T: Num> MulAssign<T> for Vector<T>
Sourceยงfn mul_assign(&mut self, rhs: T)
fn mul_assign(&mut self, rhs: T)
Performs the
*= operation. Read moreSourceยงimpl<T: Num> MulAssign<Vector<T>> for Point<T>
impl<T: Num> MulAssign<Vector<T>> for Point<T>
Sourceยงfn mul_assign(&mut self, rhs: Vector<T>)
fn mul_assign(&mut self, rhs: Vector<T>)
Performs the
*= operation. Read moreSourceยงimpl<T: Num> MulAssign<Vector<T>> for Rect<T>
impl<T: Num> MulAssign<Vector<T>> for Rect<T>
Sourceยงfn mul_assign(&mut self, rhs: Vector<T>)
fn mul_assign(&mut self, rhs: Vector<T>)
Performs the
*= operation. Read moreSourceยงimpl<T: Num> MulAssign<Vector<T>> for Size<T>
impl<T: Num> MulAssign<Vector<T>> for Size<T>
Sourceยงfn mul_assign(&mut self, rhs: Vector<T>)
fn mul_assign(&mut self, rhs: Vector<T>)
Performs the
*= operation. Read moreSourceยงimpl<T: Num> MulAssign for Vector<T>
impl<T: Num> MulAssign for Vector<T>
Sourceยงfn mul_assign(&mut self, rhs: Self)
fn mul_assign(&mut self, rhs: Self)
Performs the
*= operation. Read moreSourceยงimpl<T: Ord> Ord for Vector<T>
impl<T: Ord> Ord for Vector<T>
1.21.0 ยท Sourceยงfn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Sourceยงimpl<T: PartialOrd> PartialOrd for Vector<T>
impl<T: PartialOrd> PartialOrd for Vector<T>
Sourceยงimpl<T: Num> RemAssign<T> for Vector<T>
impl<T: Num> RemAssign<T> for Vector<T>
Sourceยงfn rem_assign(&mut self, rhs: T)
fn rem_assign(&mut self, rhs: T)
Performs the
%= operation. Read moreSourceยงimpl<T: Num> RemAssign<Vector<T>> for Point<T>
impl<T: Num> RemAssign<Vector<T>> for Point<T>
Sourceยงfn rem_assign(&mut self, rhs: Vector<T>)
fn rem_assign(&mut self, rhs: Vector<T>)
Performs the
%= operation. Read moreSourceยงimpl<T: Num> RemAssign<Vector<T>> for Rect<T>
impl<T: Num> RemAssign<Vector<T>> for Rect<T>
Sourceยงfn rem_assign(&mut self, rhs: Vector<T>)
fn rem_assign(&mut self, rhs: Vector<T>)
Performs the
%= operation. Read moreSourceยงimpl<T: Num> RemAssign<Vector<T>> for Size<T>
impl<T: Num> RemAssign<Vector<T>> for Size<T>
Sourceยงfn rem_assign(&mut self, rhs: Vector<T>)
fn rem_assign(&mut self, rhs: Vector<T>)
Performs the
%= operation. Read moreSourceยงimpl<T: Num> RemAssign for Vector<T>
impl<T: Num> RemAssign for Vector<T>
Sourceยงfn rem_assign(&mut self, rhs: Self)
fn rem_assign(&mut self, rhs: Self)
Performs the
%= operation. Read moreSourceยงimpl<T: Num> SubAssign<Vector<T>> for Circle<T>
impl<T: Num> SubAssign<Vector<T>> for Circle<T>
Sourceยงfn sub_assign(&mut self, rhs: Vector<T>)
fn sub_assign(&mut self, rhs: Vector<T>)
Performs the
-= operation. Read moreSourceยงimpl<T: Num> SubAssign<Vector<T>> for Point<T>
impl<T: Num> SubAssign<Vector<T>> for Point<T>
Sourceยงfn sub_assign(&mut self, rhs: Vector<T>)
fn sub_assign(&mut self, rhs: Vector<T>)
Performs the
-= operation. Read moreSourceยงimpl<T: Num> SubAssign<Vector<T>> for Rect<T>
impl<T: Num> SubAssign<Vector<T>> for Rect<T>
Sourceยงfn sub_assign(&mut self, rhs: Vector<T>)
fn sub_assign(&mut self, rhs: Vector<T>)
Performs the
-= operation. Read moreSourceยงimpl<T: Num> SubAssign<Vector<T>> for RectPosition<T>
impl<T: Num> SubAssign<Vector<T>> for RectPosition<T>
Sourceยงfn sub_assign(&mut self, rhs: Vector<T>)
fn sub_assign(&mut self, rhs: Vector<T>)
Performs the
-= operation. Read moreSourceยงimpl<T: Num> SubAssign<Vector<T>> for Size<T>
impl<T: Num> SubAssign<Vector<T>> for Size<T>
Sourceยงfn sub_assign(&mut self, rhs: Vector<T>)
fn sub_assign(&mut self, rhs: Vector<T>)
Performs the
-= operation. Read moreSourceยงimpl<T: Num> SubAssign for Vector<T>
impl<T: Num> SubAssign for Vector<T>
Sourceยงfn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
Performs the
-= operation. Read moreimpl<T: Copy> Copy for Vector<T>
impl<T: Eq> Eq for Vector<T>
impl<T> StructuralPartialEq for Vector<T>
Auto Trait Implementationsยง
impl<T> Freeze for Vector<T>where
T: Freeze,
impl<T> RefUnwindSafe for Vector<T>where
T: RefUnwindSafe,
impl<T> Send for Vector<T>where
T: Send,
impl<T> Sync for Vector<T>where
T: Sync,
impl<T> Unpin for Vector<T>where
T: Unpin,
impl<T> UnwindSafe for Vector<T>where
T: UnwindSafe,
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
Mutably borrows from an owned value. Read more