Struct siege_math::vector::Vec2
[−]
[src]
#[repr(C)]pub struct Vec2<F> { pub x: F, pub y: F, }
A 2-element vector
Fields
x: F
y: F
Methods
impl<F: FullFloat> Vec2<F>
[src]
impl<F: FullFloat> Vec2<F>
[src]
impl<F: FullFloat> Vec2<F>
[src]
pub fn squared_magnitude(&self) -> F
[src]
impl<F: FullFloat> Vec2<F>
[src]
impl<F: FullFloat> Vec2<F>
[src]
impl<F: FullFloat> Vec2<F>
[src]
impl<F: FullFloat> Vec2<F>
[src]
pub fn project_onto(&self, axis: Vec2<F>) -> Vec2<F>
[src]
impl<F: FullFloat> Vec2<F>
[src]
pub fn reject_onto(&self, axis: Vec2<F>) -> Vec2<F>
[src]
impl<F: FullFloat> Vec2<F>
[src]
Trait Implementations
impl<F: FullFloat> From<Point2<F>> for Vec2<F>
[src]
impl<F: FullFloat> From<Vec2<F>> for Point2<F>
[src]
impl<F: FullFloat> Add<Vec2<F>> for Point2<F>
[src]
type Output = Point2<F>
The resulting type after applying the +
operator.
fn add(self, other: Vec2<F>) -> Point2<F>
[src]
Performs the +
operation.
impl<F: FullFloat> Sub<Vec2<F>> for Point2<F>
[src]
type Output = Point2<F>
The resulting type after applying the -
operator.
fn sub(self, other: Vec2<F>) -> Point2<F>
[src]
Performs the -
operation.
impl<F: FullFloat> From<Direction2<F>> for Vec2<F>
[src]
fn from(v: Direction2<F>) -> Vec2<F>
[src]
Performs the conversion.
impl<F: FullFloat> From<Vec2<F>> for Direction2<F>
[src]
fn from(v: Vec2<F>) -> Direction2<F>
[src]
Performs the conversion.
impl<F: Debug> Debug for Vec2<F>
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
impl<F: Clone> Clone for Vec2<F>
[src]
fn clone(&self) -> Vec2<F>
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<F: Copy> Copy for Vec2<F>
[src]
impl<F: PartialEq> PartialEq for Vec2<F>
[src]
fn eq(&self, __arg_0: &Vec2<F>) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &Vec2<F>) -> bool
[src]
This method tests for !=
.
impl<F: Eq> Eq for Vec2<F>
[src]
impl<F: Hash> Hash for Vec2<F>
[src]
fn hash<__HF: Hasher>(&self, __arg_0: &mut __HF)
[src]
Feeds this value into the given [Hasher
]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl<F: FullFloat> Index<usize> for Vec2<F>
[src]
type Output = F
The returned type after indexing.
fn index(&self, i: usize) -> &F
[src]
Performs the indexing (container[index]
) operation.
impl<F: FullFloat> IndexMut<usize> for Vec2<F>
[src]
fn index_mut(&mut self, i: usize) -> &mut F
[src]
Performs the mutable indexing (container[index]
) operation.
impl<F: FullFloat> Default for Vec2<F>
[src]
impl<F: FullFloat> Mul<F> for Vec2<F>
[src]
type Output = Vec2<F>
The resulting type after applying the *
operator.
fn mul(self, rhs: F) -> Vec2<F>
[src]
Performs the *
operation.
impl<F: FullFloat> Mul<Vec2<F>> for Vec2<F>
[src]
type Output = Vec2<F>
The resulting type after applying the *
operator.
fn mul(self, rhs: Vec2<F>) -> Vec2<F>
[src]
Performs the *
operation.
impl<F: FullFloat> MulAssign<F> for Vec2<F>
[src]
fn mul_assign(&mut self, rhs: F)
[src]
Performs the *=
operation.
impl<F: FullFloat> Div<F> for Vec2<F>
[src]
type Output = Vec2<F>
The resulting type after applying the /
operator.
fn div(self, rhs: F) -> Vec2<F>
[src]
Performs the /
operation.
impl<F: FullFloat> DivAssign<F> for Vec2<F>
[src]
fn div_assign(&mut self, rhs: F)
[src]
Performs the /=
operation.
impl<F: FullFloat> Neg for Vec2<F>
[src]
type Output = Vec2<F>
The resulting type after applying the -
operator.
fn neg(self) -> Vec2<F>
[src]
Performs the unary -
operation.
impl<F: FullFloat> Add for Vec2<F>
[src]
type Output = Vec2<F>
The resulting type after applying the +
operator.
fn add(self, other: Vec2<F>) -> Vec2<F>
[src]
Performs the +
operation.
impl<F: FullFloat> AddAssign<Vec2<F>> for Vec2<F>
[src]
fn add_assign(&mut self, other: Vec2<F>)
[src]
Performs the +=
operation.
impl<F: FullFloat> Sub for Vec2<F>
[src]
type Output = Vec2<F>
The resulting type after applying the -
operator.
fn sub(self, other: Vec2<F>) -> Vec2<F>
[src]
Performs the -
operation.
impl<F: FullFloat> SubAssign<Vec2<F>> for Vec2<F>
[src]
fn sub_assign(&mut self, other: Vec2<F>)
[src]
Performs the -=
operation.
impl<F: FullFloat> From<Vec3<F>> for Vec2<F>
[src]
impl From<Vec2<f64>> for Vec2<f32>
[src]
impl From<Vec2<f32>> for Vec2<f64>
[src]
impl<F: FullFloat> ApproxEq for Vec2<F>
[src]
type Flt = F
fn approx_eq(
&self,
other: &Self,
epsilon: <F as ApproxEq>::Flt,
ulps: <<F as ApproxEq>::Flt as Ulps>::U
) -> bool
[src]
&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 more
fn approx_ne(
&self,
other: &Self,
epsilon: Self::Flt,
ulps: <Self::Flt as Ulps>::U
) -> bool
[src]
&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 more
impl<'a, 'b, F: FullFloat> Mul<&'a Vec2<F>> for &'b Mat2<F>
[src]
type Output = Vec2<F>
The resulting type after applying the *
operator.
fn mul(self, rhs: &Vec2<F>) -> Vec2<F>
[src]
Performs the *
operation.