A coordinateRotation defined in the z-x-z (intrinsic) Euler convention. More...
Public Types | |
using | eulerOrder = quaternion::eulerOrder |
Euler-angle rotation order. More... | |
Public Member Functions | |
TypeNameNoDebug ("euler") | |
Runtime type information. More... | |
euler () | |
Construct null - an identity transform. More... | |
euler (const euler &crot) | |
Copy construct. More... | |
euler (const vector &angles, bool degrees) | |
Construct from Euler intrinsic rotation angles (z-x-z) More... | |
euler (scalar angle1, scalar angle2, scalar angle3, bool degrees) | |
Construct from Euler intrinsic rotation angles (z-x-z) More... | |
euler (const dictionary &dict) | |
Construct from dictionary. More... | |
autoPtr< coordinateRotation > | clone () const |
Return clone. More... | |
virtual | ~euler ()=default |
Destructor. More... | |
virtual void | clear () |
Reset specification. More... | |
virtual tensor | R () const |
The rotation tensor calculated for the specified Euler angles. More... | |
virtual void | write (Ostream &os) const |
Write information. More... | |
virtual void | writeEntry (const word &keyword, Ostream &os) const |
Write dictionary entry. More... | |
Public Member Functions inherited from coordinateRotation | |
TypeNameNoDebug ("coordinateRotation") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, coordinateRotation, dictionary,(const dictionary &dict),(dict)) | |
virtual | ~coordinateRotation ()=default |
Destructor. More... | |
Static Public Member Functions | |
static tensor | rotation (const vector &angles, bool degrees=false) |
static tensor | rotation (const eulerOrder order, const vector &angles, bool degrees=false) |
The rotation tensor calculated for given angles and order. More... | |
Static Public Member Functions inherited from coordinateRotation | |
static autoPtr< coordinateRotation > | New (const dictionary &dict) |
Select constructed from dictionary. More... | |
Additional Inherited Members | |
Static Protected Member Functions inherited from coordinateRotation | |
static vector | findOrthogonal (const vector &axis) |
Determine best-guess for an orthogonal axis. More... | |
A coordinateRotation defined in the z-x-z (intrinsic) Euler convention.
The 3 rotations are defined in the Euler intrinsic convention (around Z, around X' and around Z''). The order of the parameter arguments matches this rotation order.
For reference and illustration, see https://en.wikipedia.org/wiki/Euler_angles
coordinateRotation { type euler; angles (0 0 180); }
Dictionary entries
Property | Description | Required | Default |
---|---|---|---|
type | Type name: euler (or EulerRotation) | yes | |
angles | The z-x-z rotation angles | yes | |
degrees | Angles are in degrees | no | true |
Definition at line 97 of file EulerCoordinateRotation.H.
using eulerOrder = quaternion::eulerOrder |
Euler-angle rotation order.
Definition at line 106 of file EulerCoordinateRotation.H.
euler | ( | ) |
Construct null - an identity transform.
Definition at line 250 of file EulerCoordinateRotation.C.
Copy construct.
Definition at line 259 of file EulerCoordinateRotation.C.
Construct from Euler intrinsic rotation angles (z-x-z)
Definition at line 269 of file EulerCoordinateRotation.C.
Construct from Euler intrinsic rotation angles (z-x-z)
Definition at line 282 of file EulerCoordinateRotation.C.
|
explicit |
Construct from dictionary.
Definition at line 296 of file EulerCoordinateRotation.C.
|
virtualdefault |
Destructor.
TypeNameNoDebug | ( | "euler" | ) |
Runtime type information.
|
inlinevirtual |
Return clone.
Implements coordinateRotation.
Definition at line 147 of file EulerCoordinateRotation.H.
|
static |
The rotation tensor calculated for the intrinsic Euler angles in z-x-z order
Definition at line 239 of file EulerCoordinateRotation.C.
Referenced by euler::R().
|
static |
The rotation tensor calculated for given angles and order.
Definition at line 65 of file EulerCoordinateRotation.C.
References Foam::abort(), Foam::constant::physicoChemical::c1, Foam::constant::physicoChemical::c2, VectorSpace< Form, Cmpt, Ncmpts >::component(), Foam::cos(), Foam::degToRad(), Foam::FatalError, FatalErrorInFunction, Foam::I, Foam::sin(), and Y.
|
virtual |
Reset specification.
Implements coordinateRotation.
Definition at line 315 of file EulerCoordinateRotation.C.
References Foam::Zero.
|
virtual |
The rotation tensor calculated for the specified Euler angles.
Implements coordinateRotation.
Definition at line 322 of file EulerCoordinateRotation.C.
References euler::rotation().
|
virtual |
Write information.
Implements coordinateRotation.
Definition at line 328 of file EulerCoordinateRotation.C.
Write dictionary entry.
Implements coordinateRotation.
Definition at line 335 of file EulerCoordinateRotation.C.
References Ostream::beginBlock(), Ostream::endBlock(), quaternion::eulerOrderNames, Foam::type(), and Ostream::writeEntry().