69 Scalar aqu = au*
q.U() - ai*
q.I() - aj*
q.J() - ak*
q.K();
70 Scalar aqi = au*
q.I() + ai*
q.U() + aj*
q.K() - ak*
q.J();
71 Scalar aqj = au*
q.J() - ai*
q.K() + aj*
q.U() + ak*
q.I();
72 Scalar aqk = au*
q.K() + ai*
q.J() - aj*
q.I() + ak*
q.U();
75 if (aqu < 0) { aqu = - aqu; aqi = - aqi; aqj = - aqj, aqk = - aqk; }
77 DisplacementVector3D< Cartesian3D<double> > axis ( aqi, aqj, aqk );
79 axis.SetCoordinates(0,0,1);
102 Scalar aqu = au*qu - ai*qi;
103 Scalar aqi = ai*qu + au*qi;
104 Scalar aqj = aj*qu + ak*qi;
105 Scalar aqk = ak*qu - aj*qi;
108 if (aqu < 0) { aqu = - aqu; aqi = - aqi; aqj = - aqj, aqk = - aqk; }
129 if (
c < -1 )
c = -1;
133 Scalar aqu = au*qu - aj*qj;
134 Scalar aqi = ai*qu - ak*qj;
135 Scalar aqj = aj*qu + au*qj;
136 Scalar aqk = ak*qu + ai*qj;
139 if (aqu < 0) { aqu = - aqu; aqi = - aqi; aqj = - aqj, aqk = - aqk; }
160 if (
c < -1 )
c = -1;
164 Scalar aqu = au*qu - ak*qk;
165 Scalar aqi = ai*qu + aj*qk;
166 Scalar aqj = aj*qu - ai*qk;
167 Scalar aqk = ak*qu + au*qk;
170 if (aqu < 0) { aqu = - aqu; aqi = - aqi; aqj = - aqj, aqk = - aqk; }
AxisAngle class describing rotation represented with direction axis (3D Vector) and an angle of rotat...
AVector operator*(const AVector &v) const
Overload operator * for rotation on a vector.
AxisAngle()
Default constructor (axis is z and angle is zero)
Class describing a generic displacement vector in 3 dimensions.
Scalar X() const
Cartesian X, converting if necessary from internal coordinate system.
Scalar Y() const
Cartesian Y, converting if necessary from internal coordinate system.
DisplacementVector3D< CoordSystem, Tag > & SetCoordinates(const Scalar src[])
Set internal data based on a C-style array of 3 Scalar numbers.
Scalar Z() const
Cartesian Z, converting if necessary from internal coordinate system.
EulerAngles class describing rotation as three angles (Euler Angles).
Rotation class with the (3D) rotation represented by a unit quaternion (u, i, j, k).
Rotation class with the (3D) rotation represented by a 3x3 orthogonal matrix.
Rotation class representing a 3D rotation about the X axis by the angle of rotation.
Scalar SinAngle() const
Sine or Cosine of the rotation angle.
Rotation class representing a 3D rotation about the Y axis by the angle of rotation.
Scalar SinAngle() const
Sine or Cosine of the rotation angle.
Rotation class with the (3D) rotation represented by angles describing first a rotation of an angle p...
Rotation class representing a 3D rotation about the Z axis by the angle of rotation.
Scalar SinAngle() const
Sine or Cosine of the rotation angle.
Namespace for new Math classes and functions.
AxisAngle operator*(RotationX const &r1, AxisAngle const &r2)
Multiplication of an axial rotation by an AxisAngle.
Rotation3D::Scalar Scalar
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...