EHS
Loading...
Searching...
No Matches
ehs::Vec3< T > Class Template Reference

#include <Vec3.h>

Public Member Functions

 Vec3 (const T scalar=0)
 
 Vec3 (const T x, const T y, const T z)
 
template<typename C>
 Vec3 (const Vec2< C > &vec, const T z=0)
 
template<typename C>
 Vec3 (const Vec3< C > &vec)
 
template<typename C>
Vec3< T > & operator= (const Vec2< C > &vec)
 
template<typename C>
Vec3< T > & operator= (const Vec3< C > &vec)
 
bool operator== (const Vec3< T > &vec) const
 
bool operator!= (const Vec3< T > &vec) const
 
Vec3< T > operator+ (const Vec3< T > &vec) const
 
Vec3< T > & operator+= (const Vec3< T > &vec)
 
Vec3< T > operator+ (const T scalar) const
 
Vec3< T > & operator+= (const T scalar)
 
Vec3< T > operator- (const Vec3< T > &vec) const
 
Vec3< T > & operator-= (const Vec3< T > &vec)
 
Vec3< T > operator- (const T scalar) const
 
Vec3< T > & operator-= (const T scalar)
 
Vec3< T > operator* (const Vec3< T > &vec) const
 
Vec3< T > & operator*= (const Vec3< T > &vec)
 
Vec3< T > operator* (const T scalar) const
 
Vec3< T > & operator*= (const T scalar)
 
Vec3< T > operator/ (const Vec3< T > &vec) const
 
Vec3< T > & operator/= (const Vec3< T > &vec)
 
Vec3< T > operator/ (const T scalar) const
 
Vec3< T > & operator/= (const T scalar)
 
bool operator<= (const Vec3< T > &other) const
 
bool operator< (const Vec3< T > &other) const
 
bool operator>= (const Vec3< T > &other) const
 
bool operator> (const Vec3< T > &other) const
 
Vec3 operator- ()
 
operator[] (const UInt_64 index) const
 
T & operator[] (const UInt_64 index)
 
 operator Vec2< T > ()
 
Vec3< T > GetAbs () const
 
void Abs ()
 
Vec3< T > GetNorm () const
 
void Norm ()
 
Vec3< T > GetCross (const Vec3< T > &vec) const
 
GetDot (const Vec3< T > &vec) const
 
GetAngle (const Vec2< T > &vec) const
 
Vec2< T > GetProjection (const Vec2< T > &length) const
 
Vec2< T > GetPerpendicular (const Vec2< T > &length) const
 
Vec2< T > GetReflection (const Vec2< T > &normal) const
 
GetMagnitude () const
 
GetMagnitude2 () const
 
GetDistance (const Vec3< T > &vec) const
 
GetDistance2 (const Vec3< T > &vec) const
 
Vec3< T > GetRads () const
 
void ToRads ()
 
Vec3< T > GetDegr () const
 
void ToDegr ()
 

Static Public Member Functions

static Vec3 Lerp (const Vec3 &start, const Vec3 &finish, const T t)
 

Public Attributes

x
 
y
 
z
 

Constructor & Destructor Documentation

◆ Vec3() [1/4]

template<typename T>
ehs::Vec3< T >::Vec3 ( const T scalar = 0)
inline

◆ Vec3() [2/4]

template<typename T>
ehs::Vec3< T >::Vec3 ( const T x,
const T y,
const T z )
inline

◆ Vec3() [3/4]

template<typename T>
template<typename C>
ehs::Vec3< T >::Vec3 ( const Vec2< C > & vec,
const T z = 0 )
inline

◆ Vec3() [4/4]

template<typename T>
template<typename C>
ehs::Vec3< T >::Vec3 ( const Vec3< C > & vec)
inline

Member Function Documentation

◆ Abs()

template<typename T>
void ehs::Vec3< T >::Abs ( )
inline

◆ GetAbs()

template<typename T>
Vec3< T > ehs::Vec3< T >::GetAbs ( ) const
inline

◆ GetAngle()

template<typename T>
T ehs::Vec3< T >::GetAngle ( const Vec2< T > & vec) const
inline

◆ GetCross()

template<typename T>
Vec3< T > ehs::Vec3< T >::GetCross ( const Vec3< T > & vec) const
inline

◆ GetDegr()

template<typename T>
Vec3< T > ehs::Vec3< T >::GetDegr ( ) const
inline

◆ GetDistance()

template<typename T>
T ehs::Vec3< T >::GetDistance ( const Vec3< T > & vec) const
inline

◆ GetDistance2()

template<typename T>
T ehs::Vec3< T >::GetDistance2 ( const Vec3< T > & vec) const
inline

◆ GetDot()

template<typename T>
T ehs::Vec3< T >::GetDot ( const Vec3< T > & vec) const
inline

◆ GetMagnitude()

template<typename T>
T ehs::Vec3< T >::GetMagnitude ( ) const
inline

◆ GetMagnitude2()

template<typename T>
T ehs::Vec3< T >::GetMagnitude2 ( ) const
inline

◆ GetNorm()

template<typename T>
Vec3< T > ehs::Vec3< T >::GetNorm ( ) const
inline

◆ GetPerpendicular()

template<typename T>
Vec2< T > ehs::Vec3< T >::GetPerpendicular ( const Vec2< T > & length) const
inline

◆ GetProjection()

template<typename T>
Vec2< T > ehs::Vec3< T >::GetProjection ( const Vec2< T > & length) const
inline

◆ GetRads()

template<typename T>
Vec3< T > ehs::Vec3< T >::GetRads ( ) const
inline

◆ GetReflection()

template<typename T>
Vec2< T > ehs::Vec3< T >::GetReflection ( const Vec2< T > & normal) const
inline

◆ Lerp()

template<typename T>
static Vec3 ehs::Vec3< T >::Lerp ( const Vec3< T > & start,
const Vec3< T > & finish,
const T t )
inlinestatic

◆ Norm()

template<typename T>
void ehs::Vec3< T >::Norm ( )
inline

◆ operator Vec2< T >()

template<typename T>
ehs::Vec3< T >::operator Vec2< T > ( )
inline

◆ operator!=()

template<typename T>
bool ehs::Vec3< T >::operator!= ( const Vec3< T > & vec) const
inline

◆ operator*() [1/2]

template<typename T>
Vec3< T > ehs::Vec3< T >::operator* ( const T scalar) const
inline

◆ operator*() [2/2]

template<typename T>
Vec3< T > ehs::Vec3< T >::operator* ( const Vec3< T > & vec) const
inline

◆ operator*=() [1/2]

template<typename T>
Vec3< T > & ehs::Vec3< T >::operator*= ( const T scalar)
inline

◆ operator*=() [2/2]

template<typename T>
Vec3< T > & ehs::Vec3< T >::operator*= ( const Vec3< T > & vec)
inline

◆ operator+() [1/2]

template<typename T>
Vec3< T > ehs::Vec3< T >::operator+ ( const T scalar) const
inline

◆ operator+() [2/2]

template<typename T>
Vec3< T > ehs::Vec3< T >::operator+ ( const Vec3< T > & vec) const
inline

◆ operator+=() [1/2]

template<typename T>
Vec3< T > & ehs::Vec3< T >::operator+= ( const T scalar)
inline

◆ operator+=() [2/2]

template<typename T>
Vec3< T > & ehs::Vec3< T >::operator+= ( const Vec3< T > & vec)
inline

◆ operator-() [1/3]

template<typename T>
Vec3 ehs::Vec3< T >::operator- ( )
inline

◆ operator-() [2/3]

template<typename T>
Vec3< T > ehs::Vec3< T >::operator- ( const T scalar) const
inline

◆ operator-() [3/3]

template<typename T>
Vec3< T > ehs::Vec3< T >::operator- ( const Vec3< T > & vec) const
inline

◆ operator-=() [1/2]

template<typename T>
Vec3< T > & ehs::Vec3< T >::operator-= ( const T scalar)
inline

◆ operator-=() [2/2]

template<typename T>
Vec3< T > & ehs::Vec3< T >::operator-= ( const Vec3< T > & vec)
inline

◆ operator/() [1/2]

template<typename T>
Vec3< T > ehs::Vec3< T >::operator/ ( const T scalar) const
inline

◆ operator/() [2/2]

template<typename T>
Vec3< T > ehs::Vec3< T >::operator/ ( const Vec3< T > & vec) const
inline

◆ operator/=() [1/2]

template<typename T>
Vec3< T > & ehs::Vec3< T >::operator/= ( const T scalar)
inline

◆ operator/=() [2/2]

template<typename T>
Vec3< T > & ehs::Vec3< T >::operator/= ( const Vec3< T > & vec)
inline

◆ operator<()

template<typename T>
bool ehs::Vec3< T >::operator< ( const Vec3< T > & other) const
inline

◆ operator<=()

template<typename T>
bool ehs::Vec3< T >::operator<= ( const Vec3< T > & other) const
inline

◆ operator=() [1/2]

template<typename T>
template<typename C>
Vec3< T > & ehs::Vec3< T >::operator= ( const Vec2< C > & vec)
inline

◆ operator=() [2/2]

template<typename T>
template<typename C>
Vec3< T > & ehs::Vec3< T >::operator= ( const Vec3< C > & vec)
inline

◆ operator==()

template<typename T>
bool ehs::Vec3< T >::operator== ( const Vec3< T > & vec) const
inline

◆ operator>()

template<typename T>
bool ehs::Vec3< T >::operator> ( const Vec3< T > & other) const
inline

◆ operator>=()

template<typename T>
bool ehs::Vec3< T >::operator>= ( const Vec3< T > & other) const
inline

◆ operator[]() [1/2]

template<typename T>
T & ehs::Vec3< T >::operator[] ( const UInt_64 index)
inline

◆ operator[]() [2/2]

template<typename T>
T ehs::Vec3< T >::operator[] ( const UInt_64 index) const
inline

◆ ToDegr()

template<typename T>
void ehs::Vec3< T >::ToDegr ( )
inline

◆ ToRads()

template<typename T>
void ehs::Vec3< T >::ToRads ( )
inline

Member Data Documentation

◆ x

template<typename T>
T ehs::Vec3< T >::x

◆ y

template<typename T>
T ehs::Vec3< T >::y

◆ z

template<typename T>
T ehs::Vec3< T >::z

The documentation for this class was generated from the following file: