Struct nannou::prelude::Vector3
[−]
[src]
#[repr(C)]pub struct Vector3<S> { pub x: S, pub y: S, pub z: S, }
A 3-dimensional vector.
This type is marked as #[repr(C)]
.
Fields
x: S
The x component of the vector.
y: S
The y component of the vector.
z: S
The z component of the vector.
Methods
impl<S> Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
fn unit_x() -> Vector3<S>
[src]
A unit vector in the x
direction.
fn unit_y() -> Vector3<S>
[src]
A unit vector in the y
direction.
fn unit_z() -> Vector3<S>
[src]
A unit vector in the w
direction.
fn cross(self, other: Vector3<S>) -> Vector3<S>
[src]
Returns the cross product of the vector and other
.
fn extend(self, w: S) -> Vector4<S>
[src]
Create a Vector4
, using the x
, y
and z
values from this vector, and the
provided w
.
fn truncate(self) -> Vector2<S>
[src]
Create a Vector2
, dropping the z
value.
impl<S> Vector3<S>
[src]
impl<S> Vector3<S> where
S: Copy + NumCast,
[src]
S: Copy + NumCast,
Trait Implementations
impl<S> Copy for Vector3<S> where
S: Copy,
[src]
S: Copy,
impl<S> Hash for Vector3<S> where
S: Hash,
[src]
S: Hash,
impl<S> Clone for Vector3<S> where
S: Clone,
[src]
S: Clone,
fn clone(&self) -> Vector3<S>
[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<S> MetricSpace for Vector3<S> where
S: BaseFloat,
[src]
S: BaseFloat,
impl<S> From<[S; 3]> for Vector3<S> where
S: Clone,
[src]
S: Clone,
impl<S> From<(S, S, S)> for Vector3<S>
[src]
impl<'a, S> From<&'a (S, S, S)> for &'a Vector3<S>
[src]
impl<'a, S> From<&'a mut (S, S, S)> for &'a mut Vector3<S>
[src]
impl<'a, S> From<&'a mut [S; 3]> for &'a mut Vector3<S>
[src]
impl<'a, S> From<&'a [S; 3]> for &'a Vector3<S>
[src]
impl<S> PartialEq<Vector3<S>> for Vector3<S> where
S: PartialEq<S>,
[src]
S: PartialEq<S>,
fn eq(&self, __arg_0: &Vector3<S>) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &Vector3<S>) -> bool
[src]
This method tests for !=
.
impl<S> ApproxEq for Vector3<S> where
S: BaseFloat,
[src]
S: BaseFloat,
type Epsilon = <S as ApproxEq>::Epsilon
fn default_epsilon() -> <S as ApproxEq>::Epsilon
[src]
fn default_max_relative() -> <S as ApproxEq>::Epsilon
[src]
fn default_max_ulps() -> u32
[src]
fn relative_eq(
&self,
other: &Vector3<S>,
epsilon: <S as ApproxEq>::Epsilon,
max_relative: <S as ApproxEq>::Epsilon
) -> bool
[src]
&self,
other: &Vector3<S>,
epsilon: <S as ApproxEq>::Epsilon,
max_relative: <S as ApproxEq>::Epsilon
) -> bool
fn ulps_eq(
&self,
other: &Vector3<S>,
epsilon: <S as ApproxEq>::Epsilon,
max_ulps: u32
) -> bool
[src]
&self,
other: &Vector3<S>,
epsilon: <S as ApproxEq>::Epsilon,
max_ulps: u32
) -> bool
impl<'a, S> Add<Vector3<S>> for &'a Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
type Output = Vector3<S>
The resulting type after applying the +
operator.
fn add(self, other: Vector3<S>) -> Vector3<S>
[src]
Performs the +
operation.
impl<S> Add<Vector3<S>> for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
type Output = Vector3<S>
The resulting type after applying the +
operator.
fn add(self, other: Vector3<S>) -> Vector3<S>
[src]
Performs the +
operation.
impl<'a, S> Add<&'a Vector3<S>> for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
type Output = Vector3<S>
The resulting type after applying the +
operator.
fn add(self, other: &'a Vector3<S>) -> Vector3<S>
[src]
Performs the +
operation.
impl<'a, 'b, S> Add<&'a Vector3<S>> for &'b Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
type Output = Vector3<S>
The resulting type after applying the +
operator.
fn add(self, other: &'a Vector3<S>) -> Vector3<S>
[src]
Performs the +
operation.
impl<S> Debug for Vector3<S> where
S: Debug,
[src]
S: Debug,
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>
[src]
Formats the value using the given formatter.
impl<S> AddAssign<Vector3<S>> for Vector3<S> where
S: BaseNum + AddAssign<S>,
[src]
S: BaseNum + AddAssign<S>,
fn add_assign(&mut self, other: Vector3<S>)
[src]
impl<S> Rem<S> for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
impl<'a, S> Rem<S> for &'a Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
impl<S> RemAssign<S> for Vector3<S> where
S: BaseNum + RemAssign<S>,
[src]
S: BaseNum + RemAssign<S>,
fn rem_assign(&mut self, scalar: S)
[src]
impl<'de, S> Deserialize<'de> for Vector3<S> where
S: Deserialize<'de>,
[src]
S: Deserialize<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<Vector3<S>, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
[src]
__deserializer: __D
) -> Result<Vector3<S>, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
impl<S> Into<[S; 3]> for Vector3<S>
[src]
impl<S> Into<(S, S, S)> for Vector3<S>
[src]
impl<S> Zero for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
fn zero() -> Vector3<S>
[src]
Returns the additive identity element of Self
, 0
. Read more
fn is_zero(&self) -> bool
[src]
Returns true
if self
is equal to the additive identity.
impl<S> SubAssign<Vector3<S>> for Vector3<S> where
S: BaseNum + SubAssign<S>,
[src]
S: BaseNum + SubAssign<S>,
fn sub_assign(&mut self, other: Vector3<S>)
[src]
impl<'a, S> Sum<&'a Vector3<S>> for Vector3<S> where
S: 'a + BaseNum,
[src]
S: 'a + BaseNum,
impl<S> Sum<Vector3<S>> for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
impl<S> InnerSpace for Vector3<S> where
S: BaseFloat,
[src]
S: BaseFloat,
impl<S> VectorSpace for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
type Scalar = S
impl<S> Rand for Vector3<S> where
S: BaseFloat + Rand,
[src]
S: BaseFloat + Rand,
impl<S> Index<RangeFrom<usize>> for Vector3<S>
[src]
type Output = [S]
The returned type after indexing.
fn index(&'a self, i: RangeFrom<usize>) -> &'a [S]
[src]
Performs the indexing (container[index]
) operation.
impl<S> Index<RangeTo<usize>> for Vector3<S>
[src]
type Output = [S]
The returned type after indexing.
fn index(&'a self, i: RangeTo<usize>) -> &'a [S]
[src]
Performs the indexing (container[index]
) operation.
impl<S> Index<usize> for Vector3<S>
[src]
type Output = S
The returned type after indexing.
fn index(&'a self, i: usize) -> &'a S
[src]
Performs the indexing (container[index]
) operation.
impl<S> Index<RangeFull> for Vector3<S>
[src]
type Output = [S]
The returned type after indexing.
fn index(&'a self, i: RangeFull) -> &'a [S]
[src]
Performs the indexing (container[index]
) operation.
impl<S> Index<Range<usize>> for Vector3<S>
[src]
type Output = [S]
The returned type after indexing.
fn index(&'a self, i: Range<usize>) -> &'a [S]
[src]
Performs the indexing (container[index]
) operation.
impl<'a, S> Div<S> for &'a Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
impl<S> Div<S> for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
impl<S> Eq for Vector3<S> where
S: Eq,
[src]
S: Eq,
impl<S> AsRef<[S; 3]> for Vector3<S>
[src]
impl<S> AsRef<(S, S, S)> for Vector3<S>
[src]
impl<S> AsMut<[S; 3]> for Vector3<S>
[src]
impl<S> AsMut<(S, S, S)> for Vector3<S>
[src]
impl<S> DivAssign<S> for Vector3<S> where
S: BaseNum + DivAssign<S>,
[src]
S: BaseNum + DivAssign<S>,
fn div_assign(&mut self, scalar: S)
[src]
impl<S> Serialize for Vector3<S> where
S: Serialize,
[src]
S: Serialize,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
[src]
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
impl<S> MulAssign<S> for Vector3<S> where
S: BaseNum + MulAssign<S>,
[src]
S: BaseNum + MulAssign<S>,
fn mul_assign(&mut self, scalar: S)
[src]
impl<'a, S> Mul<S> for &'a Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
impl<S> Mul<S> for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
impl<S> ElementWise<Vector3<S>> for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
fn add_element_wise(self, rhs: Vector3<S>) -> Vector3<S>
[src]
fn sub_element_wise(self, rhs: Vector3<S>) -> Vector3<S>
[src]
fn mul_element_wise(self, rhs: Vector3<S>) -> Vector3<S>
[src]
fn div_element_wise(self, rhs: Vector3<S>) -> Vector3<S>
[src]
fn rem_element_wise(self, rhs: Vector3<S>) -> Vector3<S>
[src]
fn add_assign_element_wise(&mut self, rhs: Vector3<S>)
[src]
fn sub_assign_element_wise(&mut self, rhs: Vector3<S>)
[src]
fn mul_assign_element_wise(&mut self, rhs: Vector3<S>)
[src]
fn div_assign_element_wise(&mut self, rhs: Vector3<S>)
[src]
fn rem_assign_element_wise(&mut self, rhs: Vector3<S>)
[src]
impl<S> ElementWise<S> for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
fn add_element_wise(self, rhs: S) -> Vector3<S>
[src]
fn sub_element_wise(self, rhs: S) -> Vector3<S>
[src]
fn mul_element_wise(self, rhs: S) -> Vector3<S>
[src]
fn div_element_wise(self, rhs: S) -> Vector3<S>
[src]
fn rem_element_wise(self, rhs: S) -> Vector3<S>
[src]
fn add_assign_element_wise(&mut self, rhs: S)
[src]
fn sub_assign_element_wise(&mut self, rhs: S)
[src]
fn mul_assign_element_wise(&mut self, rhs: S)
[src]
fn div_assign_element_wise(&mut self, rhs: S)
[src]
fn rem_assign_element_wise(&mut self, rhs: S)
[src]
impl<S> IndexMut<RangeFrom<usize>> for Vector3<S>
[src]
fn index_mut(&'a mut self, i: RangeFrom<usize>) -> &'a mut [S]
[src]
impl<S> IndexMut<usize> for Vector3<S>
[src]
impl<S> IndexMut<RangeFull> for Vector3<S>
[src]
fn index_mut(&'a mut self, i: RangeFull) -> &'a mut [S]
[src]
impl<S> IndexMut<RangeTo<usize>> for Vector3<S>
[src]
fn index_mut(&'a mut self, i: RangeTo<usize>) -> &'a mut [S]
[src]
impl<S> IndexMut<Range<usize>> for Vector3<S>
[src]
fn index_mut(&'a mut self, i: Range<usize>) -> &'a mut [S]
[src]
impl<S> Array for Vector3<S> where
S: Copy,
[src]
S: Copy,
type Element = S
fn from_value(scalar: S) -> Vector3<S>
[src]
fn sum(self) -> S where
S: Add<S, Output = S>,
[src]
S: Add<S, Output = S>,
fn product(self) -> S where
S: Mul<S, Output = S>,
[src]
S: Mul<S, Output = S>,
impl<'a, 'b, S> Sub<&'a Vector3<S>> for &'b Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
impl<'a, S> Sub<&'a Vector3<S>> for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
impl<'a, S> Sub<Vector3<S>> for &'a Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
impl<S> Sub<Vector3<S>> for Vector3<S> where
S: BaseNum,
[src]
S: BaseNum,
impl<S> Neg for Vector3<S> where
S: Neg<Output = S>,
[src]
S: Neg<Output = S>,