All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
kanzi::Vector2 Class Reference

Vector with 2 floating point components: (x, y). More...

#include <kanzi/math/vector2.hpp>

Public Member Functions

 Vector2 ()
 Default constructor, initializes the vector to (0.0, 0.0). More...
 
 Vector2 (float x, float y)
 Constructor, initializes the vector to (x, y). More...
 
const float & operator[] (size_t index) const
 Access to individual elements of the vector. More...
 
float & operator[] (size_t index)
 Access to individual elements of the vector. More...
 
Vector2operator*= (float scalar)
 Multiplies each vector element with a scalar. More...
 
Vector2operator/= (float scalar)
 Divides each vector element with a scalar. More...
 
Vector2operator+= (const Vector2 &v)
 Modifies this vector by adding another vector. More...
 
Vector2operator-= (const Vector2 &v)
 Modifies this vector by subtracting another vector from this vector. More...
 
float getX () const
 Returns the x element of the vector. More...
 
float getY () const
 Returns the y element of the vector. More...
 
void setX (float value)
 Sets the x element of the vector. More...
 
void setY (float value)
 Sets the y element of the vector. More...
 
float length () const
 Calculates the length a vectors. More...
 
float squaredLength () const
 Calculates the squared length a vectors. More...
 
Vector2 normalized () const
 Normalizes the vector and returns the resulting vector. More...
 
bool isNaN () const
 Returns true if and only if at least one of the vector values is NaN. More...
 

Static Public Member Functions

static Vector2 lowestValue ()
 Returns the vector with each element having the most negative float value. More...
 
static Vector2 highestValue ()
 Returns the vector with each element having the most positive float value. More...
 
static Vector2 nan ()
 Returns the vector with each element being NaN. More...
 
static Vector2 positiveInfinity ()
 Returns the vector with each element being the positive infinity. More...
 
static Vector2 negativeInfinity ()
 Returns the vector with each element being the negative infinity. More...
 
static Vector2 createFromVector3 (Vector3 v)
 Creates a Vector2 from Vector3 by dropping the z-coordinate. More...
 

Detailed Description

Vector with 2 floating point components: (x, y).

Constructor & Destructor Documentation

kanzi::Vector2::Vector2 ( )
inlineexplicit

Default constructor, initializes the vector to (0.0, 0.0).

kanzi::Vector2::Vector2 ( float  x,
float  y 
)
inlineexplicit

Constructor, initializes the vector to (x, y).

Parameters
xx component of the vector.
yy component of the vector.

Member Function Documentation

const float& kanzi::Vector2::operator[] ( size_t  index) const
inline

Access to individual elements of the vector.

Parameters
indexIndex of the accessed element. Should be either 0 or 1.
Returns
If index is 0, x element. If index is 1, y element.
float& kanzi::Vector2::operator[] ( size_t  index)
inline

Access to individual elements of the vector.

Parameters
indexIndex of the accessed element. Should be either 0 or 1.
Returns
If index is 0, reference to x element. If index is 1, reference to y element.
Vector2& kanzi::Vector2::operator*= ( float  scalar)
inline

Multiplies each vector element with a scalar.

Parameters
scalarMultiplier for each vector element.
Returns
This vector.
Vector2& kanzi::Vector2::operator/= ( float  scalar)
inline

Divides each vector element with a scalar.

Parameters
scalarDivider for each vector element.
Returns
This vector.
Vector2& kanzi::Vector2::operator+= ( const Vector2 v)
inline

Modifies this vector by adding another vector.

Parameters
vAnother vector.
Returns
This vector.
Vector2& kanzi::Vector2::operator-= ( const Vector2 v)
inline

Modifies this vector by subtracting another vector from this vector.

Parameters
vAnother vector.
Returns
This vector.
float kanzi::Vector2::getX ( ) const
inline

Returns the x element of the vector.

Returns
The x element.
float kanzi::Vector2::getY ( ) const
inline

Returns the y element of the vector.

Returns
The y element.
void kanzi::Vector2::setX ( float  value)
inline

Sets the x element of the vector.

Parameters
valueThe new value of the x element.
void kanzi::Vector2::setY ( float  value)
inline

Sets the y element of the vector.

Parameters
valueThe new value of the y element.
float kanzi::Vector2::length ( ) const

Calculates the length a vectors.

Returns
sqrt(x*x + y*y)
float kanzi::Vector2::squaredLength ( ) const
inline

Calculates the squared length a vectors.

Returns
x*x + y*y
Vector2 kanzi::Vector2::normalized ( ) const
inline

Normalizes the vector and returns the resulting vector.

Returns
The normalized vector.
Vector2 kanzi::Vector2::lowestValue ( )
inlinestatic

Returns the vector with each element having the most negative float value.

Returns
Vector with the lowest possible value.
Vector2 kanzi::Vector2::highestValue ( )
inlinestatic

Returns the vector with each element having the most positive float value.

Returns
Vector with the highest possible value.
Vector2 kanzi::Vector2::nan ( )
inlinestatic

Returns the vector with each element being NaN.

Returns
Vector with NaN elements.
bool kanzi::Vector2::isNaN ( ) const
inline

Returns true if and only if at least one of the vector values is NaN.

Vector2 kanzi::Vector2::positiveInfinity ( )
inlinestatic

Returns the vector with each element being the positive infinity.

Returns
Vector with positive infinity elements.
Vector2 kanzi::Vector2::negativeInfinity ( )
inlinestatic

Returns the vector with each element being the negative infinity.

Returns
Vector with negative infinity elements.
static Vector2 kanzi::Vector2::createFromVector3 ( Vector3  v)
inlinestatic

Creates a Vector2 from Vector3 by dropping the z-coordinate.

Parameters
vInput vector.
Returns
The input vector without z-coordinate.

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