
 vector2d () 
 Default constructor (null vector)


 vector2d (T nx, T ny) 
 Constructor with two different values.


 vector2d (T n) 
 Constructor with the same value for both members.


 vector2d (const dimension2d< T > &other) 

vector2d< T >  operator () const 

vector2d< T > &  operator= (const dimension2d< T > &other) 

vector2d< T >  operator+ (const vector2d< T > &other) const 

vector2d< T >  operator+ (const dimension2d< T > &other) const 

vector2d< T > &  operator+= (const vector2d< T > &other) 

vector2d< T >  operator+ (const T v) const 

vector2d< T > &  operator+= (const T v) 

vector2d< T > &  operator+= (const dimension2d< T > &other) 

vector2d< T >  operator (const vector2d< T > &other) const 

vector2d< T >  operator (const dimension2d< T > &other) const 

vector2d< T > &  operator= (const vector2d< T > &other) 

vector2d< T >  operator (const T v) const 

vector2d< T > &  operator= (const T v) 

vector2d< T > &  operator= (const dimension2d< T > &other) 

vector2d< T >  operator* (const vector2d< T > &other) const 

vector2d< T > &  operator*= (const vector2d< T > &other) 

vector2d< T >  operator* (const T v) const 

vector2d< T > &  operator*= (const T v) 

vector2d< T >  operator/ (const vector2d< T > &other) const 

vector2d< T > &  operator/= (const vector2d< T > &other) 

vector2d< T >  operator/ (const T v) const 

vector2d< T > &  operator/= (const T v) 

T &  operator[] (u32 index) 

const T &  operator[] (u32 index) const 

bool  operator<= (const vector2d< T > &other) const 
 sort in order X, Y. Equality with rounding tolerance.


bool  operator>= (const vector2d< T > &other) const 
 sort in order X, Y. Equality with rounding tolerance.


bool  operator< (const vector2d< T > &other) const 
 sort in order X, Y. Difference must be above rounding tolerance.


bool  operator> (const vector2d< T > &other) const 
 sort in order X, Y. Difference must be above rounding tolerance.


bool  operator== (const vector2d< T > &other) const 

bool  operator!= (const vector2d< T > &other) const 

bool  equals (const vector2d< T > &other, const T tolerance=(T) ROUNDING_ERROR_f32) const 
 Checks if this vector equals the other one. More...


vector2d< T > &  set (T nx, T ny) 

vector2d< T > &  set (const vector2d< T > &p) 

T  getLength () const 
 Gets the length of the vector. More...


T  getLengthSQ () const 
 Get the squared length of this vector. More...


T  dotProduct (const vector2d< T > &other) const 
 Get the dot product of this vector with another. More...


bool  nearlyParallel (const vector2d< T > &other, const T factor=relativeErrorFactor< T >()) const 
 check if this vector is parallel to another vector


T  getDistanceFrom (const vector2d< T > &other) const 
 Gets distance from another point. More...


T  getDistanceFromSQ (const vector2d< T > &other) const 
 Returns squared distance from another point. More...


vector2d< T > &  rotateBy (f64 degrees, const vector2d< T > ¢er=vector2d< T >()) 
 rotates the point anticlockwise around a center by an amount of degrees. More...


vector2d< T > &  normalize () 
 Normalize the vector. More...


f64  getAngleTrig () const 
 Calculates the angle of this vector in degrees in the trigonometric sense. More...


f64  getAngle () const 
 Calculates the angle of this vector in degrees in the counter trigonometric sense. More...


f64  getAngleWith (const vector2d< T > &b) const 
 Calculates the angle between this vector and another one in degree. More...


bool  isBetweenPoints (const vector2d< T > &begin, const vector2d< T > &end) const 
 Returns if this vector interpreted as a point is on a line between two other points. More...


vector2d< T >  getInterpolated (const vector2d< T > &other, f64 d) const 
 Creates an interpolated vector between this vector and another vector. More...


vector2d< T >  getInterpolated_quadratic (const vector2d< T > &v2, const vector2d< T > &v3, f64 d) const 
 Creates a quadratically interpolated vector between this and two other vectors. More...


s32  checkOrientation (const vector2d< T > &b, const vector2d< T > &c) const 

bool  areClockwise (const vector2d< T > &b, const vector2d< T > &c) const 

bool  areCounterClockwise (const vector2d< T > &b, const vector2d< T > &c) const 

vector2d< T > &  interpolate (const vector2d< T > &a, const vector2d< T > &b, f64 d) 
 Sets this vector to the linearly interpolated vector between a and b. More...

