ViSP
2.10.0
|
#include <vpRzyzVector.h>
Public Member Functions | |
vpRzyzVector () | |
vpRzyzVector (const vpRzyzVector &rzyz) | |
vpRzyzVector (const double phi, const double theta, const double psi) | |
vpRzyzVector (const vpRotationMatrix &R) | |
vpRzyzVector (const vpThetaUVector &tu) | |
void | buildFrom (const double phi, const double theta, const double psi) |
vpRzyzVector | buildFrom (const vpRotationMatrix &R) |
vpRzyzVector | buildFrom (const vpThetaUVector &R) |
vpRzyzVector & | operator= (double x) |
double & | operator[] (unsigned int n) |
const double & | operator[] (unsigned int n) const |
unsigned int | size () const |
vpRowVector | t () const |
Protected Member Functions | |
void | init (const unsigned int size) |
Protected Attributes | |
double * | r |
unsigned int | _size |
Friends | |
class | vpRotationMatrix |
class | vpThetaUVector |
Class that consider the case of the Euler angles using the z-y-z convention, where are respectively the rotation angles around the , and axis.
with
The rotation matrix corresponding to the z-y-z convention is given by:
The code below shows first how to initialize this representation of Euler angles, than how to contruct a rotation matrix from a vpRzyzVector and finaly how to extract the vpRzyzVector Euler angles from the build rotation matrix.
Definition at line 150 of file vpRzyzVector.h.
|
inline |
Default constructor that initialize all the angles to zero.
Definition at line 157 of file vpRzyzVector.h.
|
inline |
Copy constructor.
Definition at line 159 of file vpRzyzVector.h.
|
inline |
Constructor from 3 angles (in radian).
phi | : angle around the axis. |
theta | : angle around the axis. |
psi | : angle around the axis. |
Definition at line 167 of file vpRzyzVector.h.
References vpRotationVector::r.
vpRzyzVector::vpRzyzVector | ( | const vpRotationMatrix & | R | ) |
Constructor that initialize Euler angles from a rotation matrix.
R | : Rotation matrix used to initialize the Euler angles. |
Definition at line 59 of file vpRzyzVector.cpp.
References buildFrom().
vpRzyzVector::vpRzyzVector | ( | const vpThetaUVector & | tu | ) |
Constructor that initialize Euler angles vector from a vector.
tu | : representation of a rotation used here as input to initialize the Euler angles. |
Definition at line 70 of file vpRzyzVector.cpp.
References buildFrom().
|
inline |
Construction from 3 angles (in radian).
phi | : angle around the axis. |
theta | : angle around the axis. |
psi | : angle around the axis. |
Definition at line 182 of file vpRzyzVector.h.
References vpRotationVector::r.
Referenced by buildFrom(), and vpRzyzVector().
vpRzyzVector vpRzyzVector::buildFrom | ( | const vpRotationMatrix & | R | ) |
Convert a rotation matrix into a Euler angles vector.
R | : Rotation matrix used as input. |
Definition at line 84 of file vpRzyzVector.cpp.
References vpRotationVector::r.
vpRzyzVector vpRzyzVector::buildFrom | ( | const vpThetaUVector & | tu | ) |
Convert a vector into a Euler angles vector.
tu | : representation of a rotation used here as input. |
Definition at line 114 of file vpRzyzVector.cpp.
References vpRotationMatrix::buildFrom(), and buildFrom().
|
protectedinherited |
Definition at line 117 of file vpRotationVector.cpp.
References vpRotationVector::_size, and vpRotationVector::r.
vpRzyzVector & vpRzyzVector::operator= | ( | double | v | ) |
Initialize each element of the vector to the same angle value v.
v | : Angle value to set for each element of the vector. |
Definition at line 143 of file vpRzyzVector.cpp.
References vpRotationVector::r.
|
inlineinherited |
Operator that allows to set the value of an element of the rotation vector: r[i] = value
Definition at line 130 of file vpRotationVector.h.
|
inlineinherited |
Operator that allows to get the value of an element of the rotation vector: value = r[i]
Definition at line 135 of file vpRotationVector.h.
|
inherited |
Returns the size of the rotation vector
Size of the rotation vector: number of double values describing the rotation. Common sizes are 4 for a quaternion and 3 for angle-based rotation vectors.
Definition at line 71 of file vpRotationVector.cpp.
References vpRotationVector::_size.
Referenced by vpRotationVector::operator=().
|
inherited |
Return the transpose of the rotation vector.
Definition at line 57 of file vpRotationVector.cpp.
References vpRotationVector::_size, and vpRotationVector::r.
|
friend |
Definition at line 152 of file vpRzyzVector.h.
|
friend |
Definition at line 153 of file vpRzyzVector.h.
|
protectedinherited |
Definition at line 99 of file vpRotationVector.h.
Referenced by vpRotationVector::init(), vpRotationVector::size(), vpRotationVector::t(), and vpColVector::vpColVector().
|
protectedinherited |
Definition at line 98 of file vpRotationVector.h.
Referenced by vpThetaUVector::buildFrom(), buildFrom(), vpRzyxVector::buildFrom(), vpRxyzVector::buildFrom(), vpThetaUVector::extract(), vpRotationVector::init(), vpRotationVector::operator=(), vpThetaUVector::operator=(), operator=(), vpQuaternionVector::set(), vpRotationVector::t(), vpColVector::vpColVector(), vpRxyzVector::vpRxyzVector(), vpRzyxVector::vpRzyxVector(), vpRzyzVector(), and vpRotationVector::~vpRotationVector().