Oficina Framework  1.3
Games Framework
vec2t< T > Class Template Reference

A class representing a point in 2D space, using a given data type. Only works with predefined types. See the vec2t Types module for more details. More...

#include <OficinaTypes.hpp>

Public Member Functions

 vec2t ()
 Constructs class with null values. More...
 
 vec2t (T n)
 Constructs class with two equal values. More...
 
 vec2t (T X, T Y)
 Constructs class with two values. More...
 
vec2t< T > & operator= (const vec2t< T >)
 
vec2t< T > & operator= (const T)
 
const vec2t< T > operator+ (const vec2t< T >)
 
const vec2t< T > operator+ (const T)
 
vec2t< T > & operator+= (const vec2t< T >)
 
vec2t< T > & operator+= (const T)
 
const vec2t< T > operator- (const vec2t< T >)
 
const vec2t< T > operator- (const T)
 
vec2t< T > & operator-= (const vec2t< T >)
 
vec2t< T > & operator-= (const T)
 
const vec2t< T > operator* (const vec2t< T >)
 
const vec2t< T > operator* (const T)
 
vec2t< T > & operator*= (const vec2t< T >)
 
vec2t< T > & operator*= (const T)
 
const vec2t< T > operator/ (const vec2t< T >)
 
const vec2t< T > operator/ (const T)
 
vec2t< T > & operator/= (const vec2t< T >)
 
vec2t< T > & operator/= (const T)
 
bool operator> (const vec2t< T >)
 
bool operator> (const T)
 
bool operator< (const vec2t< T >)
 
bool operator< (const T)
 
bool operator>= (const vec2t< T >)
 
bool operator>= (const T)
 
bool operator<= (const vec2t< T >)
 
bool operator<= (const T)
 
bool operator== (const vec2t< T >)
 
bool operator== (const T)
 
bool operator!= (const vec2t< T >)
 
bool operator!= (const T)
 
vec2 toVec2 ()
 Converts this class to a vec2. More...
 

Static Public Member Functions

static vec2t< T > Zero ()
 Returns a vec2t with both coordinates having the value 0. More...
 
static vec2t< T > One ()
 Returns a vec2t with both coordinates having the value 1. More...
 
static vec2t< T > Up ()
 Returns a vec2t with coordinates indicating the Up direction. More...
 
static vec2t< T > Down ()
 Returns a vec2t with coordinates indicating the Down direction. More...
 
static vec2t< T > Left ()
 Returns a vec2t with coordinates indicating the Left direction. More...
 
static vec2t< T > Right ()
 Returns a vec2t with coordinates indicating the Right direction. More...
 

Public Attributes

union {
   struct {
      T   x
 X coordinate of point. More...
 
      T   y
 Y coordinate of point. More...
 
   } 
 
   struct {
      T   v [2]
 Array of coordinates of the point. More...
 
   } 
 
}; 
 

Detailed Description

template<typename T>
class vec2t< T >

A class representing a point in 2D space, using a given data type. Only works with predefined types. See the vec2t Types module for more details.

See also
vec2t Types

Constructor & Destructor Documentation

◆ vec2t() [1/3]

template<typename T>
vec2t< T >::vec2t ( )

Constructs class with null values.

◆ vec2t() [2/3]

template<typename T>
vec2t< T >::vec2t ( n)

Constructs class with two equal values.

Parameters
nValue to be given to coordinates.

◆ vec2t() [3/3]

template<typename T>
vec2t< T >::vec2t ( X,
Y 
)

Constructs class with two values.

Parameters
XValue to be given to x coordinate.
YValue to be given to y coordinate.

Member Function Documentation

◆ Down()

template<typename T>
static vec2t<T> vec2t< T >::Down ( )
static

Returns a vec2t with coordinates indicating the Down direction.

Returns
A down-facing vec2t.

◆ Left()

template<typename T>
static vec2t<T> vec2t< T >::Left ( )
static

Returns a vec2t with coordinates indicating the Left direction.

Returns
A left-facing vec2t.

◆ One()

template<typename T>
static vec2t<T> vec2t< T >::One ( )
static

Returns a vec2t with both coordinates having the value 1.

Returns
An unitary-value vec2t.

◆ operator!=() [1/2]

template<typename T>
bool vec2t< T >::operator!= ( const vec2t< T >  )

◆ operator!=() [2/2]

template<typename T>
bool vec2t< T >::operator!= ( const T  )

◆ operator*() [1/2]

template<typename T>
const vec2t<T> vec2t< T >::operator* ( const vec2t< T >  )

◆ operator*() [2/2]

template<typename T>
const vec2t<T> vec2t< T >::operator* ( const T  )

◆ operator*=() [1/2]

template<typename T>
vec2t<T>& vec2t< T >::operator*= ( const vec2t< T >  )

◆ operator*=() [2/2]

template<typename T>
vec2t<T>& vec2t< T >::operator*= ( const T  )

◆ operator+() [1/2]

template<typename T>
const vec2t<T> vec2t< T >::operator+ ( const vec2t< T >  )

◆ operator+() [2/2]

template<typename T>
const vec2t<T> vec2t< T >::operator+ ( const T  )

◆ operator+=() [1/2]

template<typename T>
vec2t<T>& vec2t< T >::operator+= ( const vec2t< T >  )

◆ operator+=() [2/2]

template<typename T>
vec2t<T>& vec2t< T >::operator+= ( const T  )

◆ operator-() [1/2]

template<typename T>
const vec2t<T> vec2t< T >::operator- ( const vec2t< T >  )

◆ operator-() [2/2]

template<typename T>
const vec2t<T> vec2t< T >::operator- ( const T  )

◆ operator-=() [1/2]

template<typename T>
vec2t<T>& vec2t< T >::operator-= ( const vec2t< T >  )

◆ operator-=() [2/2]

template<typename T>
vec2t<T>& vec2t< T >::operator-= ( const T  )

◆ operator/() [1/2]

template<typename T>
const vec2t<T> vec2t< T >::operator/ ( const vec2t< T >  )

◆ operator/() [2/2]

template<typename T>
const vec2t<T> vec2t< T >::operator/ ( const T  )

◆ operator/=() [1/2]

template<typename T>
vec2t<T>& vec2t< T >::operator/= ( const vec2t< T >  )

◆ operator/=() [2/2]

template<typename T>
vec2t<T>& vec2t< T >::operator/= ( const T  )

◆ operator<() [1/2]

template<typename T>
bool vec2t< T >::operator< ( const vec2t< T >  )

◆ operator<() [2/2]

template<typename T>
bool vec2t< T >::operator< ( const T  )

◆ operator<=() [1/2]

template<typename T>
bool vec2t< T >::operator<= ( const vec2t< T >  )

◆ operator<=() [2/2]

template<typename T>
bool vec2t< T >::operator<= ( const T  )

◆ operator=() [1/2]

template<typename T>
vec2t<T>& vec2t< T >::operator= ( const vec2t< T >  )

◆ operator=() [2/2]

template<typename T>
vec2t<T>& vec2t< T >::operator= ( const T  )

◆ operator==() [1/2]

template<typename T>
bool vec2t< T >::operator== ( const vec2t< T >  )

◆ operator==() [2/2]

template<typename T>
bool vec2t< T >::operator== ( const T  )

◆ operator>() [1/2]

template<typename T>
bool vec2t< T >::operator> ( const vec2t< T >  )

◆ operator>() [2/2]

template<typename T>
bool vec2t< T >::operator> ( const T  )

◆ operator>=() [1/2]

template<typename T>
bool vec2t< T >::operator>= ( const vec2t< T >  )

◆ operator>=() [2/2]

template<typename T>
bool vec2t< T >::operator>= ( const T  )

◆ Right()

template<typename T>
static vec2t<T> vec2t< T >::Right ( )
static

Returns a vec2t with coordinates indicating the Right direction.

Returns
A right-facing vec2t.

◆ toVec2()

template<typename T>
vec2 vec2t< T >::toVec2 ( )

Converts this class to a vec2.

Returns
A vec2 equivalent of this class.

◆ Up()

template<typename T>
static vec2t<T> vec2t< T >::Up ( )
static

Returns a vec2t with coordinates indicating the Up direction.

Returns
An up-facing vec2t.

◆ Zero()

template<typename T>
static vec2t<T> vec2t< T >::Zero ( )
static

Returns a vec2t with both coordinates having the value 0.

Returns
A null-values vec2t.

Member Data Documentation

◆ @7

union { ... }

◆ v

template<typename T>
T vec2t< T >::v[2]

Array of coordinates of the point.

◆ x

template<typename T>
T vec2t< T >::x

X coordinate of point.

◆ y

template<typename T>
T vec2t< T >::y

Y coordinate of point.


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