#[repr(C)]pub struct Vec2<F> {
pub x: F,
pub y: F,
}
Expand description
A 2-element vector
Fields§
§x: F
§y: F
Implementations§
Trait Implementations§
Source§impl<F: FullFloat> AddAssign for Vec2<F>
impl<F: FullFloat> AddAssign for Vec2<F>
Source§fn add_assign(&mut self, other: Vec2<F>)
fn add_assign(&mut self, other: Vec2<F>)
Performs the
+=
operation. Read moreSource§impl<F: FullFloat> ApproxEq for Vec2<F>
impl<F: FullFloat> ApproxEq for Vec2<F>
type Flt = F
Source§fn approx_eq(
&self,
other: &Self,
epsilon: <F as ApproxEq>::Flt,
ulps: <<F as ApproxEq>::Flt as Ulps>::U,
) -> bool
fn approx_eq( &self, other: &Self, epsilon: <F as ApproxEq>::Flt, ulps: <<F as ApproxEq>::Flt as Ulps>::U, ) -> bool
This method tests for
self
and other
values to be approximately equal
using two methods: epsilon and ulps. If the values differ by less than the
given epsilon, they will be considered equal. If the values differ by more
than epsilon, but by less than the given ulps, they will also be considered
equal. Otherwise they are unequal. Read moreSource§fn approx_ne(
&self,
other: &Self,
epsilon: Self::Flt,
ulps: <Self::Flt as Ulps>::U,
) -> bool
fn approx_ne( &self, other: &Self, epsilon: Self::Flt, ulps: <Self::Flt as Ulps>::U, ) -> bool
This method tests for
self
and other
values to be not approximately equal
using two methods: epsilon and ulps. If the values differ by less than the
given epsilon, they will be considered equal. If the values differ by more
than epsilon, but by less than the given ulps, they will also be considered
equal. Otherwise they are unequal. Read moreSource§impl<'de, F> Deserialize<'de> for Vec2<F>where
F: Deserialize<'de>,
impl<'de, F> Deserialize<'de> for Vec2<F>where
F: Deserialize<'de>,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<F: FullFloat> DivAssign<F> for Vec2<F>
impl<F: FullFloat> DivAssign<F> for Vec2<F>
Source§fn div_assign(&mut self, rhs: F)
fn div_assign(&mut self, rhs: F)
Performs the
/=
operation. Read moreSource§impl<F: FullFloat> From<Direction2<F>> for Vec2<F>
impl<F: FullFloat> From<Direction2<F>> for Vec2<F>
Source§fn from(v: Direction2<F>) -> Vec2<F>
fn from(v: Direction2<F>) -> Vec2<F>
Converts to this type from the input type.
Source§impl<F: FullFloat> From<Vec2<F>> for Direction2<F>
impl<F: FullFloat> From<Vec2<F>> for Direction2<F>
Source§fn from(v: Vec2<F>) -> Direction2<F>
fn from(v: Vec2<F>) -> Direction2<F>
Converts to this type from the input type.
Source§impl<F: FullFloat> MulAssign<F> for Vec2<F>
impl<F: FullFloat> MulAssign<F> for Vec2<F>
Source§fn mul_assign(&mut self, rhs: F)
fn mul_assign(&mut self, rhs: F)
Performs the
*=
operation. Read moreSource§impl<F: FullFloat> SubAssign for Vec2<F>
impl<F: FullFloat> SubAssign for Vec2<F>
Source§fn sub_assign(&mut self, other: Vec2<F>)
fn sub_assign(&mut self, other: Vec2<F>)
Performs the
-=
operation. Read moreimpl<F: Copy> Copy for Vec2<F>
impl<F: Eq> Eq for Vec2<F>
impl<F> StructuralPartialEq for Vec2<F>
Auto Trait Implementations§
impl<F> Freeze for Vec2<F>where
F: Freeze,
impl<F> RefUnwindSafe for Vec2<F>where
F: RefUnwindSafe,
impl<F> Send for Vec2<F>where
F: Send,
impl<F> Sync for Vec2<F>where
F: Sync,
impl<F> Unpin for Vec2<F>where
F: Unpin,
impl<F> UnwindSafe for Vec2<F>where
F: 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