Struct nbez::Vector4d [] [src]

pub struct Vector4d<F: Float> {
    pub x: F,
    pub y: F,
    pub z: F,
    pub w: F,
}

4-dimensional vector

Fields

x: F y: F z: F w: F

Methods

impl<F: Float> Vector4d<F>
[src]

fn new(x: F, y: F, z: F, w: F) -> Vector4d<F>

Convenience method for creating a new instance of this struct. Fields of this function correspond to fields of the struct.

impl<F: Float> Vector4d<F>
[src]

fn len(self) -> F

Get the length of this vector, with the Pythagorean theorem

fn normalize(self) -> Vector4d<F>

Return a vector that points in the same direction as self, but has a length of one.

Trait Implementations

impl<F: Hash + Float> Hash for Vector4d<F>
[src]

fn hash<__HF: Hasher>(&self, __arg_0: &mut __HF)

Feeds this value into the state given, updating the hasher as necessary.

fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0

Feeds a slice of this type into the state provided.

impl<F: Ord + Float> Ord for Vector4d<F>
[src]

fn cmp(&self, __arg_0: &Vector4d<F>) -> Ordering

This method returns an Ordering between self and other. Read more

impl<F: PartialOrd + Float> PartialOrd for Vector4d<F>
[src]

fn partial_cmp(&self, __arg_0: &Vector4d<F>) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more

fn lt(&self, __arg_0: &Vector4d<F>) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more

fn le(&self, __arg_0: &Vector4d<F>) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

fn gt(&self, __arg_0: &Vector4d<F>) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more

fn ge(&self, __arg_0: &Vector4d<F>) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl<F: Eq + Float> Eq for Vector4d<F>
[src]

impl<F: PartialEq + Float> PartialEq for Vector4d<F>
[src]

fn eq(&self, __arg_0: &Vector4d<F>) -> bool

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, __arg_0: &Vector4d<F>) -> bool

This method tests for !=.

impl<F: Copy + Float> Copy for Vector4d<F>
[src]

impl<F: Clone + Float> Clone for Vector4d<F>
[src]

fn clone(&self) -> Vector4d<F>

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)
1.0.0

Performs copy-assignment from source. Read more

impl<F: Debug + Float> Debug for Vector4d<F>
[src]

fn fmt(&self, __arg_0: &mut Formatter) -> Result

Formats the value using the given formatter.

impl<F: Default + Float> Default for Vector4d<F>
[src]

fn default() -> Vector4d<F>

Returns the "default value" for a type. Read more

impl<F: Float> From<[F; 4]> for Vector4d<F>
[src]

fn from(array: [F; 4]) -> Vector4d<F>

Performs the conversion.

impl<F: Float> Into<[F; 4]> for Vector4d<F>
[src]

fn into(self) -> [F; 4]

Performs the conversion.

impl<F: Float> Into<(F, F, F, F)> for Vector4d<F>
[src]

fn into(self) -> (F, F, F, F)

Performs the conversion.

impl<F: Float> From<Point4d<F>> for Vector4d<F>
[src]

fn from(sib: Point4d<F>) -> Vector4d<F>

Performs the conversion.

impl<F: Float> AsRef<[F]> for Vector4d<F>
[src]

fn as_ref(&self) -> &[F]

Performs the conversion.

impl<F: Float> AsMut<[F]> for Vector4d<F>
[src]

fn as_mut(&mut self) -> &mut [F]

Performs the conversion.

impl<F: Float> Zero for Vector4d<F>
[src]

fn zero() -> Vector4d<F>

Returns the additive identity element of Self, 0. Read more

fn is_zero(&self) -> bool

Returns true if self is equal to the additive identity.

impl<F: Float> One for Vector4d<F>
[src]

fn one() -> Vector4d<F>

Returns the multiplicative identity element of Self, 1. Read more

impl<F: Float> Add<Point4d<F>> for Vector4d<F>
[src]

type Output = Vector4d<F>

The resulting type after applying the + operator

fn add(self, rhs: Point4d<F>) -> Vector4d<F>

The method for the + operator

impl<F: Float> Sub<Point4d<F>> for Vector4d<F>
[src]

type Output = Vector4d<F>

The resulting type after applying the - operator

fn sub(self, rhs: Point4d<F>) -> Vector4d<F>

The method for the - operator

impl<F: Float> Mul<Point4d<F>> for Vector4d<F>
[src]

type Output = Vector4d<F>

The resulting type after applying the * operator

fn mul(self, rhs: Point4d<F>) -> Vector4d<F>

The method for the * operator

impl<F: Float> Div<Point4d<F>> for Vector4d<F>
[src]

type Output = Vector4d<F>

The resulting type after applying the / operator

fn div(self, rhs: Point4d<F>) -> Vector4d<F>

The method for the / operator

impl<F: Float> Add<Vector4d<F>> for Vector4d<F>
[src]

type Output = Vector4d<F>

The resulting type after applying the + operator

fn add(self, rhs: Vector4d<F>) -> Vector4d<F>

The method for the + operator

impl<F: Float> Sub<Vector4d<F>> for Vector4d<F>
[src]

type Output = Vector4d<F>

The resulting type after applying the - operator

fn sub(self, rhs: Vector4d<F>) -> Vector4d<F>

The method for the - operator

impl<F: Float> Mul<Vector4d<F>> for Vector4d<F>
[src]

type Output = Vector4d<F>

The resulting type after applying the * operator

fn mul(self, rhs: Vector4d<F>) -> Vector4d<F>

The method for the * operator

impl<F: Float> Div<Vector4d<F>> for Vector4d<F>
[src]

type Output = Vector4d<F>

The resulting type after applying the / operator

fn div(self, rhs: Vector4d<F>) -> Vector4d<F>

The method for the / operator

impl<F: Float> Mul<F> for Vector4d<F>
[src]

type Output = Vector4d<F>

The resulting type after applying the * operator

fn mul(self, rhs: F) -> Vector4d<F>

The method for the * operator

impl<F: Float> Div<F> for Vector4d<F>
[src]

type Output = Vector4d<F>

The resulting type after applying the / operator

fn div(self, rhs: F) -> Vector4d<F>

The method for the / operator

impl<F: Float> Neg for Vector4d<F>
[src]

type Output = Vector4d<F>

The resulting type after applying the - operator

fn neg(self) -> Vector4d<F>

The method for the unary - operator

impl<F: Float> PVOps<F> for Vector4d<F>
[src]

impl<F: Float> Vector<F> for Vector4d<F>
[src]