sead
Loading...
Searching...
No Matches
sead::Vector2< T > Class Template Reference

#include <seadVector.h>

Inherits sead::Policies< T >::Vec2Base.

Public Types

typedef T ValueType

Public Member Functions

constexpr Vector2 ()
constexpr Vector2 (const Vector2 &other)=default
constexpr Vector2 (T x_, T y_)
template<typename VectorType>
constexpr Vector2 (const VectorType &v)
Self operator* (T t) const
Self operator/ (T t) const
Self operator+ (const Self &v) const
Self operator- (const Self &v) const
Self operator- () const
Selfoperator*= (T t)
Selfoperator/= (T t)
Selfoperator+= (const Self &v)
Selfoperator-= (const Self &v)
Selfoperator= (const Self &v)
template<typename VectorType>
Selfoperator= (const VectorType &v)
bool operator== (const Self &v) const
bool operator!= (const Self &v) const
dot (const Self &t) const
squaredLength () const
length () const
squaredDistance (const Self &v) const
distance (const Self &v) const
void add (const Self &a)
void div (const Self &a)
void multScalar (T t)
void divScalar (T t)
normalize ()
setNormalize (const Self &v)
void set (const Self &v)
void set (T x_, T y_)
void setSub (const Self &a, const Self &b)
void setLerp (const Self &a, const Self &b, f32 ratio)
const Vector2< f32 > zero (0.0f, 0.0f)
const Vector2< f32 > ex (1.0f, 0.0f)
const Vector2< f32 > ey (0.0f, 1.0f)
const Vector2< f32 > ones (1.0f, 1.0f)
template<typename VectorType>
Vector2< T > & operator= (const VectorType &v)

Static Public Attributes

static const Vector2 zero
static const Vector2 ex
static const Vector2 ey
static const Vector2 ones

Private Types

typedef Vector2< T > Self

Additional Inherited Members

Public Attributes inherited from sead::Policies< T >::Vec2Base
x
y

Member Typedef Documentation

◆ Self

template<typename T>
typedef Vector2<T> sead::Vector2< T >::Self
private

◆ ValueType

template<typename T>
typedef T sead::Vector2< T >::ValueType

Constructor & Destructor Documentation

◆ Vector2() [1/4]

template<typename T>
sead::Vector2< T >::Vector2 ( )
inlineconstexpr

◆ Vector2() [2/4]

template<typename T>
sead::Vector2< T >::Vector2 ( const Vector2< T > & other)
constexprdefault

◆ Vector2() [3/4]

template<typename T>
sead::Vector2< T >::Vector2 ( T x_,
T y_ )
inlineconstexpr

◆ Vector2() [4/4]

template<typename T>
template<typename VectorType>
sead::Vector2< T >::Vector2 ( const VectorType & v)
inlineconstexpr

Member Function Documentation

◆ operator*()

template<typename T>
Vector2< T > sead::Vector2< T >::operator* ( T t) const
inline

◆ operator/()

template<typename T>
Vector2< T > sead::Vector2< T >::operator/ ( T t) const
inline

◆ operator+()

template<typename T>
Vector2< T > sead::Vector2< T >::operator+ ( const Self & v) const
inline

◆ operator-() [1/2]

template<typename T>
Vector2< T > sead::Vector2< T >::operator- ( const Self & v) const
inline

◆ operator-() [2/2]

template<typename T>
Vector2< T > sead::Vector2< T >::operator- ( ) const
inline

◆ operator*=()

template<typename T>
Vector2< T > & sead::Vector2< T >::operator*= ( T t)
inline

◆ operator/=()

template<typename T>
Vector2< T > & sead::Vector2< T >::operator/= ( T t)
inline

◆ operator+=()

template<typename T>
Vector2< T > & sead::Vector2< T >::operator+= ( const Self & v)
inline

◆ operator-=()

template<typename T>
Vector2< T > & sead::Vector2< T >::operator-= ( const Self & v)
inline

◆ operator=() [1/3]

template<typename T>
Vector2< T > & sead::Vector2< T >::operator= ( const Self & v)
inline

◆ operator=() [2/3]

template<typename T>
template<typename VectorType>
Self & sead::Vector2< T >::operator= ( const VectorType & v)

◆ operator==()

template<typename T>
bool sead::Vector2< T >::operator== ( const Self & v) const
inline

◆ operator!=()

template<typename T>
bool sead::Vector2< T >::operator!= ( const Self & v) const
inline

◆ dot()

template<typename T>
T sead::Vector2< T >::dot ( const Self & t) const
inline

◆ squaredLength()

template<typename T>
T sead::Vector2< T >::squaredLength ( ) const
inline

◆ length()

template<typename T>
T sead::Vector2< T >::length ( ) const
inline

◆ squaredDistance()

template<typename T>
T sead::Vector2< T >::squaredDistance ( const Self & v) const
inline

◆ distance()

template<typename T>
T sead::Vector2< T >::distance ( const Self & v) const
inline

◆ add()

template<typename T>
void sead::Vector2< T >::add ( const Self & a)
inline

◆ div()

template<typename T>
void sead::Vector2< T >::div ( const Self & a)
inline

◆ multScalar()

template<typename T>
void sead::Vector2< T >::multScalar ( T t)
inline

◆ divScalar()

template<typename T>
void sead::Vector2< T >::divScalar ( T t)

◆ normalize()

template<typename T>
T sead::Vector2< T >::normalize ( )
inline

◆ setNormalize()

template<typename T>
T sead::Vector2< T >::setNormalize ( const Self & v)
inline

◆ set() [1/2]

template<typename T>
void sead::Vector2< T >::set ( const Self & v)
inline

◆ set() [2/2]

template<typename T>
void sead::Vector2< T >::set ( T x_,
T y_ )
inline

◆ setSub()

template<typename T>
void sead::Vector2< T >::setSub ( const Self & a,
const Self & b )
inline

◆ setLerp()

template<typename T>
void sead::Vector2< T >::setLerp ( const Self & a,
const Self & b,
f32 ratio )
inline

◆ zero()

const Vector2< f32 > sead::Vector2< f32 >::zero ( 0. 0f,
0. 0f )

◆ ex()

const Vector2< f32 > sead::Vector2< f32 >::ex ( 1. 0f,
0. 0f )

◆ ey()

const Vector2< f32 > sead::Vector2< f32 >::ey ( 0. 0f,
1. 0f )

◆ ones()

const Vector2< f32 > sead::Vector2< f32 >::ones ( 1. 0f,
1. 0f )

◆ operator=() [3/3]

template<typename T>
template<typename VectorType>
Vector2< T > & sead::Vector2< T >::operator= ( const VectorType & v)
inline

Member Data Documentation

◆ zero

template<typename T>
const Vector2 sead::Vector2< T >::zero
static

◆ ex

template<typename T>
const Vector2 sead::Vector2< T >::ex
static

◆ ey

template<typename T>
const Vector2 sead::Vector2< T >::ey
static

◆ ones

template<typename T>
const Vector2 sead::Vector2< T >::ones
static