[][src]Struct rs_math3d::vector::Vector3

#[repr(C)]pub struct Vector3<T> {
    pub x: T,
    pub y: T,
    pub z: T,
}

Fields

x: Ty: Tz: T

Implementations

impl<T: Scalar> Vector3<T>[src]

pub fn new(x: T, y: T, z: T) -> Self[src]

Trait Implementations

impl<T> Add<Vector3<T>> for Vector3<T> where
    T: Scalar
[src]

type Output = Vector3<T>

The resulting type after applying the + operator.

impl<T: Clone> Clone for Vector3<T>[src]

impl<T: Copy> Copy for Vector3<T>[src]

impl<T> CrossProduct for Vector3<T> where
    T: Scalar
[src]

impl<T: Debug> Debug for Vector3<T>[src]

impl<T: FloatScalar> Distance<T, Vector3<T>> for Plane<T>[src]

Distance Queries

impl<T: FloatScalar> Distance<T, Vector3<T>> for Segment<T, Vector3<T>>[src]

impl<T> Div<T> for Vector3<T> where
    T: Scalar
[src]

type Output = Vector3<T>

The resulting type after applying the / operator.

impl<T> Div<Vector3<T>> for Vector3<T> where
    T: Scalar
[src]

type Output = Vector3<T>

The resulting type after applying the / operator.

impl<T: FloatScalar> Intersection<Vector3<T>, Tri3<T>> for Ray<T, Vector3<T>>[src]

Ray-Triangle Intersection Test Routines Different optimizations of my and Ben Trumbore's code from journals of graphics tools (JGT) http://www.acm.org/jgt/ by Tomas Moller, May 2000

impl<T: Scalar> Mul<Matrix3<T>> for Vector3<T>[src]

type Output = Vector3<T>

The resulting type after applying the * operator.

impl<T> Mul<T> for Vector3<T> where
    T: Scalar
[src]

type Output = Vector3<T>

The resulting type after applying the * operator.

impl<T> Mul<Vector3<T>> for Vector3<T> where
    T: Scalar
[src]

type Output = Vector3<T>

The resulting type after applying the * operator.

impl<T: Scalar> Mul<Vector3<T>> for Matrix3<T>[src]

type Output = Vector3<T>

The resulting type after applying the * operator.

impl Mul<Vector3<f32>> for f32[src]

type Output = Vector3<f32>

The resulting type after applying the * operator.

impl Mul<Vector3<f64>> for f64[src]

type Output = Vector3<f64>

The resulting type after applying the * operator.

impl Mul<Vector3<i32>> for i32[src]

type Output = Vector3<i32>

The resulting type after applying the * operator.

impl Mul<Vector3<i64>> for i64[src]

type Output = Vector3<i64>

The resulting type after applying the * operator.

impl<T: Scalar> Neg for Vector3<T>[src]

type Output = Vector3<T>

The resulting type after applying the - operator.

impl<T> Rem<T> for Vector3<T> where
    T: Scalar
[src]

type Output = Vector3<T>

The resulting type after applying the % operator.

impl<T> Rem<Vector3<T>> for Vector3<T> where
    T: Scalar
[src]

type Output = Vector3<T>

The resulting type after applying the % operator.

impl<T> Sub<Vector3<T>> for Vector3<T> where
    T: Scalar
[src]

type Output = Vector3<T>

The resulting type after applying the - operator.

impl<T: Scalar> Vector<T, Vector3<T>, Vector3<T>> for Vector3<T>[src]

Auto Trait Implementations

impl<T> Send for Vector3<T> where
    T: Send

impl<T> Sync for Vector3<T> where
    T: Sync

impl<T> Unpin for Vector3<T> where
    T: Unpin

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.