[−][src]Trait nannou::prelude::InnerSpace
Vectors that also have a dot (or inner) product.
The dot product allows for the definition of other useful operations, like finding the magnitude of a vector or normalizing it.
Examples include vectors and quaternions.
Required methods
Loading content...Provided methods
fn is_perpendicular(self, other: Self) -> bool
Returns true
if the vector is perpendicular (at right angles) to the
other vector.
fn magnitude2(self) -> Self::Scalar
Returns the squared magnitude.
This does not perform an expensive square root operation like in
InnerSpace::magnitude
method, and so can be used to compare magnitudes
more efficiently.
fn magnitude(self) -> Self::Scalar
The distance from the tail to the tip of the vector.
fn angle(self, other: Self) -> Rad<Self::Scalar>
Returns the angle between two vectors in radians.
fn normalize(self) -> Self
Returns a vector with the same direction, but with a magnitude of 1
.
fn normalize_to(self, magnitude: Self::Scalar) -> Self
Returns a vector with the same direction and a given magnitude.
fn project_on(self, other: Self) -> Self
Returns the vector projection of the current inner space projected onto the supplied argument.
Implementations on Foreign Types
impl<S> InnerSpace for Vector2<S> where
S: BaseFloat,
[src]
S: BaseFloat,
impl<S> InnerSpace for Vector3<S> where
S: BaseFloat,
[src]
S: BaseFloat,
impl<S> InnerSpace for Vector4<S> where
S: BaseFloat,
[src]
S: BaseFloat,
impl<S> InnerSpace for Vector1<S> where
S: BaseFloat,
[src]
Loading content...
S: BaseFloat,
Implementors
impl<S> InnerSpace for nannou::geom::vector::Vector2<S> where
S: BaseFloat,
[src]
S: BaseFloat,
impl<S> InnerSpace for nannou::geom::vector::Vector3<S> where
S: BaseFloat,
[src]
S: BaseFloat,
impl<S> InnerSpace for nannou::geom::vector::Vector4<S> where
S: BaseFloat,
[src]
S: BaseFloat,
impl<S> InnerSpace for Quaternion<S> where
S: BaseFloat,
[src]
S: BaseFloat,