42 #include <visp3/core/vpRxyzVector.h>
99 if (rxyz.
size() != 3) {
102 for (
unsigned int i=0; i< 3; i++)
116 double COEF_MIN_ROT = 1e-6;
119 if ((fabs(R[1][2]) < COEF_MIN_ROT) && (fabs(R[2][2]) < COEF_MIN_ROT)) phi = 0 ;
120 else phi = atan2(-R[1][2], R[2][2]) ;
122 double si = sin(phi) ;
123 double co = cos(phi) ;
124 double theta = atan2(R[0][2], -si*R[1][2] + co*R[2][2]) ;
125 double psi = atan2(co*R[1][0] + si*R[2][0], co*R[1][1] + si*R[2][1]);
184 for (
unsigned int i=0; i<
dsize; i++)
214 if (rxyz.
size() != 3) {
217 for (
unsigned int i=0; i< 3; i++)
vpRxyzVector & operator=(const vpColVector &rxyz)
Implementation of a generic rotation vector.
vpRxyzVector buildFrom(const vpRotationMatrix &R)
error that can be emited by ViSP classes.
double * data
Address of the first element of the data array.
unsigned int size() const
Return the number of elements of the 2D array.
Implementation of a rotation matrix and operations on such kind of matrices.
vpRotationMatrix buildFrom(const vpHomogeneousMatrix &M)
Implementation of column vector and the associated operations.
Implementation of a rotation vector as Euler angle minimal representation.
unsigned int dsize
Current array size (rowNum * colNum)
Implementation of a rotation vector as axis-angle minimal representation.