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

#include <Vec2.h>

Public Member Functions

 Vec2 (const T x, const T y)
 
template<typename C>
 Vec2 (const Vec2< C > &vec)
 
 Vec2 (const T scalar=0)
 
template<typename C>
Vec2< T > & operator= (const Vec2< C > &vec)
 
bool operator== (const Vec2< T > &vec) const
 
bool operator!= (const Vec2< T > &vec) const
 
Vec2< T > & operator+= (const Vec2< T > &vec)
 
Vec2< T > operator+ (const Vec2< T > &vec) const
 
Vec2< T > & operator+= (const T scalar)
 
Vec2< T > operator+ (const T scalar) const
 
Vec2< T > & operator-= (const Vec2< T > &vec)
 
Vec2< T > operator- (const Vec2< T > &vec) const
 
Vec2< T > & operator-= (const T scalar)
 
Vec2< T > operator- (const T scalar) const
 
Vec2< T > & operator/= (const Vec2< T > &vec)
 
Vec2< T > operator/ (const Vec2< T > &vec) const
 
Vec2< T > & operator/= (const T scalar)
 
Vec2< T > operator/ (const T scalar) const
 
Vec2< T > & operator*= (const Vec2< T > &vec)
 
Vec2< T > operator* (const Vec2< T > &vec) const
 
Vec2< T > & operator*= (const T scalar)
 
Vec2< T > operator* (const T scalar) const
 
bool operator<= (const Vec2< T > &other) const
 
bool operator< (const Vec2< T > &other) const
 
bool operator>= (const Vec2< T > &other) const
 
bool operator> (const Vec2< T > &other) const
 
Vec2 operator- ()
 
operator[] (const UInt_64 index) const
 
T & operator[] (const UInt_64 index)
 
Vec2< T > GetAbs () const
 
void Abs ()
 
GetDot (const Vec2< 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 Vec2< T > &vec) const
 
GetDistance2 (const Vec2< T > &vec) const
 
Vec2< T > GetNorm () const
 
void Norm ()
 
Vec2< T > GetRads () const
 
void ToRads ()
 
Vec2< T > GetDegr () const
 
void ToDegr ()
 

Static Public Member Functions

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

Public Attributes

x
 
y
 

Constructor & Destructor Documentation

◆ Vec2() [1/3]

template<typename T = float>
ehs::Vec2< T >::Vec2 ( const T x,
const T y )
inline

◆ Vec2() [2/3]

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

◆ Vec2() [3/3]

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

Member Function Documentation

◆ Abs()

template<typename T = float>
void ehs::Vec2< T >::Abs ( )
inline

◆ GetAbs()

template<typename T = float>
Vec2< T > ehs::Vec2< T >::GetAbs ( ) const
inline

◆ GetAngle()

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

◆ GetDegr()

template<typename T = float>
Vec2< T > ehs::Vec2< T >::GetDegr ( ) const
inline

◆ GetDistance()

template<typename T = float>
T ehs::Vec2< T >::GetDistance ( const Vec2< T > & vec) const
inline

◆ GetDistance2()

template<typename T = float>
T ehs::Vec2< T >::GetDistance2 ( const Vec2< T > & vec) const
inline

◆ GetDot()

template<typename T = float>
T ehs::Vec2< T >::GetDot ( const Vec2< T > & vec) const
inline

If positive, the vectors are pointing in the same direction. If negative, the vectors are pointing in opposing directions. If zero, the vectors are perpendicular.

◆ GetMagnitude()

template<typename T = float>
T ehs::Vec2< T >::GetMagnitude ( ) const
inline

◆ GetMagnitude2()

template<typename T = float>
T ehs::Vec2< T >::GetMagnitude2 ( ) const
inline

◆ GetNorm()

template<typename T = float>
Vec2< T > ehs::Vec2< T >::GetNorm ( ) const
inline

◆ GetPerpendicular()

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

◆ GetProjection()

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

◆ GetRads()

template<typename T = float>
Vec2< T > ehs::Vec2< T >::GetRads ( ) const
inline

◆ GetReflection()

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

◆ Lerp()

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

◆ Norm()

template<typename T = float>
void ehs::Vec2< T >::Norm ( )
inline

◆ operator!=()

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

◆ operator*() [1/2]

template<typename T = float>
Vec2< T > ehs::Vec2< T >::operator* ( const T scalar) const
inline

◆ operator*() [2/2]

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

◆ operator*=() [1/2]

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

◆ operator*=() [2/2]

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

◆ operator+() [1/2]

template<typename T = float>
Vec2< T > ehs::Vec2< T >::operator+ ( const T scalar) const
inline

◆ operator+() [2/2]

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

◆ operator+=() [1/2]

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

◆ operator+=() [2/2]

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

◆ operator-() [1/3]

template<typename T = float>
Vec2 ehs::Vec2< T >::operator- ( )
inline

◆ operator-() [2/3]

template<typename T = float>
Vec2< T > ehs::Vec2< T >::operator- ( const T scalar) const
inline

◆ operator-() [3/3]

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

◆ operator-=() [1/2]

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

◆ operator-=() [2/2]

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

◆ operator/() [1/2]

template<typename T = float>
Vec2< T > ehs::Vec2< T >::operator/ ( const T scalar) const
inline

◆ operator/() [2/2]

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

◆ operator/=() [1/2]

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

◆ operator/=() [2/2]

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

◆ operator<()

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

◆ operator<=()

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

◆ operator=()

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

◆ operator==()

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

◆ operator>()

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

◆ operator>=()

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

◆ operator[]() [1/2]

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

◆ operator[]() [2/2]

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

◆ ToDegr()

template<typename T = float>
void ehs::Vec2< T >::ToDegr ( )
inline

◆ ToRads()

template<typename T = float>
void ehs::Vec2< T >::ToRads ( )
inline

Member Data Documentation

◆ x

template<typename T = float>
T ehs::Vec2< T >::x

◆ y

template<typename T = float>
T ehs::Vec2< T >::y

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