|
INET Framework for OMNeT++/OMNEST
|
Orientations are represented by 3D double precision Tait-Bryan (Euler) tuples called EulerAngles. More...
#include <EulerAngles.h>
Public Member Functions | |
| EulerAngles () | |
| EulerAngles (rad alpha, rad beta, rad gamma) | |
| rad | getAlpha () const |
| void | setAlpha (rad alpha) |
| rad | getBeta () const |
| void | setBeta (rad beta) |
| rad | getGamma () const |
| void | setGamma (rad gamma) |
| std::string | str () const |
| bool | isNil () const |
| bool | isUnspecified () const |
| EulerAngles & | normalize () |
| EulerAngles | operator+ (const EulerAngles a) const |
| EulerAngles | operator- (const EulerAngles a) const |
| EulerAngles | operator* (double f) const |
Public Attributes | |
| rad | alpha |
| rad | beta |
| rad | gamma |
Static Public Attributes | |
| static const EulerAngles | ZERO = EulerAngles(rad(0.0), rad(0.0), rad(0.0)) |
| static const EulerAngles | NIL = EulerAngles(rad(NaN), rad(NaN), rad(NaN)) |
Private Member Functions | |
| void | copy (const EulerAngles &other) |
Orientations are represented by 3D double precision Tait-Bryan (Euler) tuples called EulerAngles.
The angles are in Z, Y', X" order that is often called intrinsic rotations, they are measured in radians. The default (unrotated) orientation is along the X axis. Conceptually, the Z axis rotation is heading, the Y' axis rotation is descending (negative elevation), the X" axis rotation is bank. For example, positive rotation along the Z axis rotates X into Y (turns left), positive rotation along the Y axis rotates Z into X (leans forward), positive rotation along the X axis rotates Y into Z (leans right).
|
inlineprivate |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| rad inet::EulerAngles::alpha |
| rad inet::EulerAngles::beta |
| rad inet::EulerAngles::gamma |
Referenced by copy(), operator+(), operator-(), inet::operator<<(), inet::Quaternion::Quaternion(), and inet::Quaternion::toEulerAngles().
|
static |
|
static |