9 #ifndef _LIBALMATH_ALMATH_TYPES_ALPOSITION2D_H_
10 #define _LIBALMATH_ALMATH_TYPES_ALPOSITION2D_H_
237 const float& pEpsilon=0.0001f)
const;
286 void toVector(std::vector<float>& pReturnVector)
const;
287 std::vector<float>
toVector(
void)
const;
306 const Position2D& pPos1);
320 const Position2D& pPos1,
321 const Position2D& pPos2);
335 const Position2D& pPos1,
336 const Position2D& pPos2);
348 float norm(
const Position2D& pPos);
360 Position2D
normalize(
const Position2D& pPos);
373 const Position2D& pPos1,
374 const Position2D& pPos2);
388 const Position2D& pPos1,
389 const Position2D& pPos2);
402 const Position2D& pPos1,
403 const Position2D& pPos2,
408 #endif // _LIBALMATH_ALMATH_TYPES_ALPOSITION2D_H_
Position2D operator-() const
Overloading of operator - for Position2D.
bool isNear(const Position2D &pPos2, const float &pEpsilon=0.0001f) const
Check if the actual Position2D is near the one give in argument.
float getAngle() const
Return the angular direction of a Position2D.
float crossProduct(const Position2D &pPos1, const Position2D &pPos2)
Compute the cross Product of two Position2D.
float distanceSquared(const Position2D &pPos2) const
Compute the squared distance between the actual Position2D and the one give in argument.
Position2D & operator/=(float pVal)
Overloading of operator /= for Position2D.
float norm(const Position2D &pPos)
Compute the norm of a Position2D.
std::vector< float > toVector(void) const
Position2D normalize() const
Normalize the actual Position2D.
bool operator!=(const Position2D &pPos2) const
Overloading of operator != for Position2D.
Create and play with a Position2D.
bool operator==(const Position2D &pPos2) const
Overloading of operator == for Position2D.
Position2D & operator*=(float pVal)
Overloading of operator *= for Position2D.
Position2D & operator-=(const Position2D &pPos2)
Overloading of operator -= for Position2D.
float distanceSquared(const Pose2D &pPos1, const Pose2D &pPos2)
Compute the squared distance between two Pose2D.
float dotProduct(const Position2D &pPos1, const Position2D &pPos2)
Compute the dot Product between two Position2D:
void writeToVector(std::vector< float >::iterator &pIt) const
Write [x, y] in the vector and update the iterator. It is assumed the vector has enough space...
float distance(const Position2D &pPos2) const
Compute the distance between the actual Position2D and the one give in argument.
float norm() const
Compute the norm of the actual Position2D.
float distance(const Pose2D &pPos1, const Pose2D &pPos2)
Compute the distance between two Pose2D.
Position2D normalize(const Position2D &pPos)
Normalize a Position2D.
float dotProduct(const Position2D &pPos2) const
Compute the dot Product between the actual Position2D and the one give in argument.
static Position2D fromPolarCoordinates(const float pRadius, const float pAngle)
Build a Position2D from polar coordinates.
Position2D operator/(float pVal) const
Overloading of operator / for Position2D.
Position2D & operator+=(const Position2D &pPos2)
Overloading of operator += for Position2D.
Position2D operator+(void) const
Overloading of operator + for Position2D.
Position2D()
Create a Position2D initialized with 0.0f.
Position2D operator*(float pVal) const
Overloading of operator * for Position2D.
float crossProduct(const Position2D &pPos2) const
Compute the cross Product between the actual Position2D and the one give in argument.