[][src]Struct hassium_navigation::resource::NavVec3

#[repr(C)]
pub struct NavVec3 {
    pub x: Scalar,
    pub y: Scalar,
    pub z: Scalar,
}

Fields

x: Scalary: Scalarz: Scalar

Methods

impl NavVec3[src]

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

pub fn sqr_magnitude(self) -> Scalar[src]

pub fn magnitude(self) -> Scalar[src]

pub fn cross(self, other: Self) -> Self[src]

pub fn dot(self, other: Self) -> Scalar[src]

pub fn normalize(self) -> Self[src]

pub fn project(self, from: Self, to: Self) -> Scalar[src]

pub fn unproject(from: Self, to: Self, t: Scalar) -> Self[src]

pub fn is_above_plane(self, origin: Self, normal: Self) -> bool[src]

pub fn project_on_plane(self, origin: Self, normal: Self) -> Self[src]

pub fn raycast_plane(
    from: Self,
    to: Self,
    origin: Self,
    normal: Self
) -> Option<Self>
[src]

pub fn raycast_line(
    from: Self,
    to: Self,
    a: Self,
    b: Self,
    normal: Self
) -> Option<Self>
[src]

pub fn is_line_between_points(
    from: Self,
    to: Self,
    a: Self,
    b: Self,
    normal: Self
) -> bool
[src]

Trait Implementations

impl Default for NavVec3[src]

impl Clone for NavVec3[src]

impl PartialEq<NavVec3> for NavVec3[src]

impl From<(f64, f64, f64)> for NavVec3[src]

impl From<(f64, f64)> for NavVec3[src]

impl Copy for NavVec3[src]

impl Add<NavVec3> for NavVec3[src]

type Output = Self

The resulting type after applying the + operator.

impl Add<f64> for NavVec3[src]

type Output = Self

The resulting type after applying the + operator.

impl Sub<NavVec3> for NavVec3[src]

type Output = Self

The resulting type after applying the - operator.

impl Sub<f64> for NavVec3[src]

type Output = Self

The resulting type after applying the - operator.

impl Mul<NavVec3> for NavVec3[src]

type Output = Self

The resulting type after applying the * operator.

impl Mul<f64> for NavVec3[src]

type Output = Self

The resulting type after applying the * operator.

impl Div<NavVec3> for NavVec3[src]

type Output = Self

The resulting type after applying the / operator.

impl Div<f64> for NavVec3[src]

type Output = Self

The resulting type after applying the / operator.

impl Debug for NavVec3[src]

impl Serialize for NavVec3[src]

impl<'de> Deserialize<'de> for NavVec3[src]

impl PointN for NavVec3[src]

type Scalar = Scalar

The points's internal scalar type.

Auto Trait Implementations

impl Unpin for NavVec3

impl Sync for NavVec3

impl Send for NavVec3

impl UnwindSafe for NavVec3

impl RefUnwindSafe for NavVec3

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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

impl<T> From<T> for 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.

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

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

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

impl<T> TryDefault for T where
    T: Default

impl<T> Any for T where
    T: Any

impl<T> Resource for T where
    T: Any + Send + Sync

impl<T> Erased for T

impl<T> Event for T where
    T: Send + Sync + 'static, 

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]

impl<T> Scalar for T where
    T: Copy + PartialEq<T> + Any + Debug
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 

impl<S> SpatialObject for S where
    S: HasPosition
[src]

type Point = <S as HasPosition>::Point

The object's point type.

impl<V> HasPosition for V where
    V: PointN
[src]

type Point = V

The object's point type