represents a frame transformation in 3D space (rotation + translation) More...
#include <frames.hpp>
Public Member Functions | |
Frame (const Rotation &R, const Vector &V) | |
Frame (const Vector &V) | |
The rotation matrix defaults to identity. | |
Frame (const Rotation &R) | |
The position matrix defaults to zero. | |
Frame () | |
Frame (const Frame &arg) | |
The copy constructor. Normal copy by value semantics. | |
void | Integrate (const Twist &t_this, double frequency) |
Frame | Inverse () const |
Gives back inverse transformation of a Frame. | |
Vector | Inverse (const Vector &arg) const |
The same as p2=R.Inverse()*p but more efficient. | |
Wrench | Inverse (const Wrench &arg) const |
The same as p2=R.Inverse()*p but more efficient. | |
Twist | Inverse (const Twist &arg) const |
The same as p2=R.Inverse()*p but more efficient. | |
void | Make4x4 (double *d) |
Reads data from an double array. | |
double | operator() (int i, int j) |
double | operator() (int i, int j) const |
Vector | operator* (const Vector &arg) const |
Wrench | operator* (const Wrench &arg) const |
Twist | operator* (const Twist &arg) const |
Frame & | operator= (const Frame &arg) |
Normal copy-by-value semantics. | |
Static Public Member Functions | |
static Frame | DH (double a, double alpha, double d, double theta) |
static Frame | DH_Craig1989 (double a, double alpha, double d, double theta) |
static Frame | Identity () |
Public Attributes | |
Rotation | M |
Orientation of the Frame. | |
Vector | p |
origine of the Frame | |
Friends | |
bool | Equal (const Frame &a, const Frame &b, double eps=epsilon) |
bool | operator!= (const Frame &a, const Frame &b) |
The literal inequality operator!=(). | |
Frame | operator* (const Frame &lhs, const Frame &rhs) |
Composition of two frames. | |
bool | operator== (const Frame &a, const Frame &b) |
The literal equality operator==(), also identical. |
represents a frame transformation in 3D space (rotation + translation)
if V2 = Frame*V1 (V2 expressed in frame A, V1 expressed in frame B) then V2 = Frame.M*V1+Frame.p
Frame.M contains columns that represent the axes of frame B wrt frame A Frame.p contains the origin of frame B expressed in frame A.
Definition at line 561 of file frames.hpp.
KDL::Frame::Frame | ( | const Rotation & | R, |
const Vector & | V | ||
) | [inline] |
KDL::Frame::Frame | ( | const Vector & | V | ) | [inline, explicit] |
The rotation matrix defaults to identity.
KDL::Frame::Frame | ( | const Rotation & | R | ) | [inline, explicit] |
The position matrix defaults to zero.
KDL::Frame::Frame | ( | ) | [inline] |
Definition at line 575 of file frames.hpp.
KDL::Frame::Frame | ( | const Frame & | arg | ) | [inline] |
The copy constructor. Normal copy by value semantics.
Frame KDL::Frame::DH | ( | double | a, |
double | alpha, | ||
double | d, | ||
double | theta | ||
) | [static] |
Definition at line 70 of file frames.cpp.
Frame KDL::Frame::DH_Craig1989 | ( | double | a, |
double | alpha, | ||
double | d, | ||
double | theta | ||
) | [static] |
Definition at line 53 of file frames.cpp.
static Frame KDL::Frame::Identity | ( | ) | [inline, static] |
void KDL::Frame::Integrate | ( | const Twist & | t_this, |
double | frequency | ||
) | [inline] |
The twist <t_this> is expressed wrt the current frame. This frame is integrated into an updated frame with <samplefrequency>. Very simple first order integration rule.
Frame KDL::Frame::Inverse | ( | ) | const [inline] |
Gives back inverse transformation of a Frame.
Vector KDL::Frame::Inverse | ( | const Vector & | arg | ) | const [inline] |
The same as p2=R.Inverse()*p but more efficient.
Wrench KDL::Frame::Inverse | ( | const Wrench & | arg | ) | const [inline] |
The same as p2=R.Inverse()*p but more efficient.
Twist KDL::Frame::Inverse | ( | const Twist & | arg | ) | const [inline] |
The same as p2=R.Inverse()*p but more efficient.
void KDL::Frame::Make4x4 | ( | double * | d | ) |
Reads data from an double array.
Definition at line 39 of file frames.cpp.
double KDL::Frame::operator() | ( | int | i, |
int | j | ||
) | [inline] |
Treats a frame as a 4x4 matrix and returns element i,j Access to elements 0..3,0..3, bounds are checked when NDEBUG is not set
double KDL::Frame::operator() | ( | int | i, |
int | j | ||
) | const [inline] |
Treats a frame as a 4x4 matrix and returns element i,j Access to elements 0..3,0..3, bounds are checked when NDEBUG is not set
Transformation of the base to which the vector is expressed.
Transformation of both the force reference point and of the base to which the wrench is expressed. look at Rotation*Wrench operator for a transformation of only the base to which the twist is expressed.
Complexity : 24M+18A
Transformation of both the velocity reference point and of the base to which the twist is expressed. look at Rotation*Twist for a transformation of only the base to which the twist is expressed.
Complexity : 24M+18A
do not use operator == because the definition of Equal(.,.) is slightly different. It compares whether the 2 arguments are equal in an eps-interval
The literal inequality operator!=().
The literal equality operator==(), also identical.
Orientation of the Frame.
Definition at line 564 of file frames.hpp.
origine of the Frame
Definition at line 563 of file frames.hpp.