41 #include <visp3/core/vpRzyzVector.h>
98 if (rzyz.
size() != 3) {
101 for (
unsigned int i=0; i< 3; i++)
116 if ((fabs(R[1][2]) < 1e-6) &&(fabs(R[0][2]) < 1e-6))
119 phi = atan2(R[1][2],R[0][2]) ;
120 double cphi = cos(phi) ;
121 double sphi = sin(phi) ;
123 double theta = atan2(cphi*R[0][2]+sphi*R[1][2],R[2][2]);
125 double psi = atan2(-sphi*R[0][0]+cphi*R[1][0],-sphi*R[0][1]+cphi*R[1][1]) ;
171 for (
unsigned int i=0; i<
dsize; i++)
215 if (rzyz.
size() != 3) {
218 for (
unsigned int i=0; i< 3; i++)
Implementation of a generic rotation vector.
vpRzyzVector 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.
unsigned int dsize
Current array size (rowNum * colNum)
Implementation of a rotation vector as Euler angle minimal representation.
Implementation of a rotation vector as axis-angle minimal representation.
vpRzyzVector & operator=(const vpColVector &rzyz)