38 #include <visp3/core/vpRzyxVector.h>
96 double phi = atan2(ny, nx);
101 double theta = atan2(-nz, co * nx + si * ny);
108 double psi = atan2(si * ax - co * ay, -si * ox + co * oy);
148 if (rzyx.
size() != 3) {
152 for (
unsigned int i = 0; i < 3; i++)
163 if (rzyx.size() != 3) {
167 for (
unsigned int i = 0; i < 3; i++)
194 for (
unsigned int i = 0; i <
dsize; i++)
225 if (rzyx.
size() != 3) {
229 for (
unsigned int i = 0; i < 3; i++)
235 #if (VISP_CXX_STANDARD >= VISP_CXX_STANDARD_11)
255 if (list.size() >
size()) {
258 "Cannot set Euler x-y-z vector out of bounds. It has only %d values while you try to initialize with %d values",
259 size(), list.size()));
261 std::copy(list.begin(), list.end(),
data);
double * data
Address of the first element of the data array.
unsigned int dsize
Current array size (rowNum * colNum)
unsigned int size() const
Return the number of elements of the 2D array.
Implementation of column vector and the associated operations.
error that can be emitted by ViSP classes.
@ dimensionError
Bad dimension.
Implementation of a rotation matrix and operations on such kind of matrices.
vpRotationMatrix buildFrom(const vpHomogeneousMatrix &M)
Implementation of a generic rotation vector.
Implementation of a rotation vector as Euler angle minimal representation.
vpRzyxVector & operator=(const vpColVector &rzyx)
vpRzyxVector buildFrom(const vpRotationMatrix &R)
Implementation of a rotation vector as axis-angle minimal representation.