Public Member Functions | Static Public Member Functions | Public Attributes | Friends | List of all members
KDL::Vector Class Reference

A concrete implementation of a 3 dimensional vector class. More...

#include <frames.hpp>

Public Member Functions

double Norm (double eps=epsilon) const
 
double Normalize (double eps=epsilon)
 
double operator() (int index) const
 Access to elements, range checked when NDEBUG is not set, from 0..2. More...
 
double & operator() (int index)
 Access to elements, range checked when NDEBUG is not set, from 0..2. More...
 
Vectoroperator+= (const Vector &arg)
 Adds a vector from the Vector object itself. More...
 
Vectoroperator-= (const Vector &arg)
 subtracts a vector from the Vector object itself More...
 
Vectoroperator= (const Vector &arg)
 Assignment operator. The normal copy by value semantics. More...
 
double operator[] (int index) const
 Equivalent to double operator()(int index) const. More...
 
double & operator[] (int index)
 Equivalent to double& operator()(int index) More...
 
void ReverseSign ()
 Reverses the sign of the Vector object itself. More...
 
void Set2DPlane (const Frame &F_someframe_XY, const Vector2 &v_XY)
 a 3D vector where the 2D vector v_XY is put in the XY plane of the frame F_someframe_XY. More...
 
void Set2DXY (const Vector2 &v)
 a 3D vector where the 2D vector v is put in the XY plane More...
 
void Set2DYZ (const Vector2 &v)
 a 3D vector where the 2D vector v is put in the YZ plane More...
 
void Set2DZX (const Vector2 &v)
 a 3D vector where the 2D vector v is put in the ZX plane More...
 
 Vector ()
 Does not initialise the Vector to zero. use Vector::Zero() or SetToZero for that. More...
 
 Vector (double x, double y, double z)
 Constructs a vector out of the three values x, y and z. More...
 
 Vector (const Vector &arg)
 Assignment operator. The normal copy by value semantics. More...
 
double x () const
 
void x (double)
 
double y () const
 
void y (double)
 
double z () const
 
void z (double)
 

Static Public Member Functions

static Vector Zero ()
 

Public Attributes

double data [3]
 

Friends

double dot (const Vector &lhs, const Vector &rhs)
 
bool Equal (const Vector &a, const Vector &b, double eps)
 
class Frame
 
bool operator!= (const Vector &a, const Vector &b)
 The literal inequality operator!=(). More...
 
Vector operator* (const Vector &lhs, double rhs)
 Scalar multiplication is defined. More...
 
Vector operator* (double lhs, const Vector &rhs)
 Scalar multiplication is defined. More...
 
Vector operator* (const Vector &lhs, const Vector &rhs)
 
Vector operator+ (const Vector &lhs, const Vector &rhs)
 
Vector operator- (const Vector &lhs, const Vector &rhs)
 
Vector operator- (const Vector &arg)
 
Vector operator/ (const Vector &lhs, double rhs)
 Scalar division is defined. More...
 
bool operator== (const Vector &a, const Vector &b)
 The literal equality operator==(), also identical. More...
 
class Rotation
 
void SetToZero (Vector &v)
 

Detailed Description

A concrete implementation of a 3 dimensional vector class.

Definition at line 162 of file frames.hpp.

Constructor & Destructor Documentation

◆ Vector() [1/3]

KDL::Vector::Vector ( )
inline

Does not initialise the Vector to zero. use Vector::Zero() or SetToZero for that.

Definition at line 167 of file frames.hpp.

◆ Vector() [2/3]

IMETHOD Vector::Vector ( double  x,
double  y,
double  z 
)
inline

Constructs a vector out of the three values x, y and z.

Definition at line 44 of file frames.hpp.

◆ Vector() [3/3]

IMETHOD Vector::Vector ( const Vector arg)
inline

Assignment operator. The normal copy by value semantics.

Definition at line 37 of file frames.hpp.

Member Function Documentation

◆ Norm()

double KDL::Vector::Norm ( double  eps = epsilon) const
Returns
the norm of the vector

Definition at line 117 of file frames.cpp.

◆ Normalize()

double KDL::Vector::Normalize ( double  eps = epsilon)

Normalizes this vector and returns it norm makes v a unitvector and returns the norm of v. if v is smaller than eps, Vector(1,0,0) is returned with norm 0. if this is not good, check the return value of this method.

Definition at line 147 of file frames.cpp.

◆ operator()() [1/2]

double Vector::operator() ( int  index) const
inline

Access to elements, range checked when NDEBUG is not set, from 0..2.

Definition at line 144 of file frames.hpp.

◆ operator()() [2/2]

double & Vector::operator() ( int  index)
inline

Access to elements, range checked when NDEBUG is not set, from 0..2.

Definition at line 149 of file frames.hpp.

◆ operator+=()

Vector & Vector::operator+= ( const Vector arg)
inline

Adds a vector from the Vector object itself.

Definition at line 121 of file frames.hpp.

◆ operator-=()

Vector & Vector::operator-= ( const Vector arg)
inline

subtracts a vector from the Vector object itself

Definition at line 130 of file frames.hpp.

◆ operator=()

IMETHOD Vector & Vector::operator= ( const Vector arg)
inline

Assignment operator. The normal copy by value semantics.

Definition at line 50 of file frames.hpp.

◆ operator[]() [1/2]

double KDL::Vector::operator[] ( int  index) const
inline

Equivalent to double operator()(int index) const.

Definition at line 185 of file frames.hpp.

◆ operator[]() [2/2]

double& KDL::Vector::operator[] ( int  index)
inline

Equivalent to double& operator()(int index)

Definition at line 191 of file frames.hpp.

◆ ReverseSign()

void Vector::ReverseSign ( )
inline

Reverses the sign of the Vector object itself.

Definition at line 441 of file frames.hpp.

◆ Set2DPlane()

void Vector::Set2DPlane ( const Frame F_someframe_XY,
const Vector2 v_XY 
)
inline

a 3D vector where the 2D vector v_XY is put in the XY plane of the frame F_someframe_XY.

Definition at line 708 of file frames.hpp.

◆ Set2DXY()

void Vector::Set2DXY ( const Vector2 v)
inline

a 3D vector where the 2D vector v is put in the XY plane

Definition at line 459 of file frames.hpp.

◆ Set2DYZ()

void Vector::Set2DYZ ( const Vector2 v)
inline

a 3D vector where the 2D vector v is put in the YZ plane

Definition at line 467 of file frames.hpp.

◆ Set2DZX()

void Vector::Set2DZX ( const Vector2 v)
inline

a 3D vector where the 2D vector v is put in the ZX plane

Definition at line 476 of file frames.hpp.

◆ x() [1/2]

IMETHOD double Vector::x ( ) const
inline

Definition at line 76 of file frames.hpp.

◆ x() [2/2]

IMETHOD void KDL::Vector::x ( double  _x)
inline

Definition at line 80 of file frames.hpp.

◆ y() [1/2]

IMETHOD double Vector::y ( ) const
inline

Definition at line 77 of file frames.hpp.

◆ y() [2/2]

IMETHOD void KDL::Vector::y ( double  _y)
inline

Definition at line 81 of file frames.hpp.

◆ z() [1/2]

IMETHOD double Vector::z ( ) const
inline

Definition at line 78 of file frames.hpp.

◆ z() [2/2]

IMETHOD void KDL::Vector::z ( double  _z)
inline

Definition at line 82 of file frames.hpp.

◆ Zero()

Vector Vector::Zero ( )
inlinestatic
Returns
a zero vector

Definition at line 139 of file frames.hpp.

Friends And Related Function Documentation

◆ dot

double dot ( const Vector lhs,
const Vector rhs 
)
friend

Definition at line 1013 of file frames.hpp.

◆ Equal

bool Equal ( const Vector a,
const Vector b,
double  eps = epsilon 
)
friend

do not use operator == because the definition of Equal(.,.) is slightly different. It compares whether the 2 arguments are equal in an eps-interval

Definition at line 1033 of file frames.hpp.

◆ Frame

friend class Frame
friend

Definition at line 266 of file frames.hpp.

◆ operator!=

bool operator!= ( const Vector a,
const Vector b 
)
friend

The literal inequality operator!=().

Definition at line 1299 of file frames.hpp.

◆ operator* [1/3]

Vector operator* ( const Vector lhs,
double  rhs 
)
friend

Scalar multiplication is defined.

Definition at line 84 of file frames.hpp.

◆ operator* [2/3]

Vector operator* ( double  lhs,
const Vector rhs 
)
friend

Scalar multiplication is defined.

Definition at line 93 of file frames.hpp.

◆ operator* [3/3]

Vector operator* ( const Vector lhs,
const Vector rhs 
)
friend

Definition at line 111 of file frames.hpp.

◆ operator+

Vector operator+ ( const Vector lhs,
const Vector rhs 
)
friend

Definition at line 58 of file frames.hpp.

◆ operator- [1/2]

Vector operator- ( const Vector lhs,
const Vector rhs 
)
friend

Definition at line 67 of file frames.hpp.

◆ operator- [2/2]

Vector operator- ( const Vector arg)
friend

Definition at line 450 of file frames.hpp.

◆ operator/

Vector operator/ ( const Vector lhs,
double  rhs 
)
friend

Scalar division is defined.

Definition at line 102 of file frames.hpp.

◆ operator==

bool operator== ( const Vector a,
const Vector b 
)
friend

The literal equality operator==(), also identical.

Definition at line 1289 of file frames.hpp.

◆ Rotation

friend class Rotation
friend

Definition at line 265 of file frames.hpp.

◆ SetToZero

void SetToZero ( Vector v)
friend

To have a uniform operator to put an element to zero, for scalar values and for objects.

Definition at line 1069 of file frames.hpp.

Member Data Documentation

◆ data

double KDL::Vector::data[3]

Definition at line 165 of file frames.hpp.


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


orocos_kdl
Author(s):
autogenerated on Thu Apr 13 2023 02:19:15