|
| Euler () |
| Default constructor. More...
|
|
template<typename A2 , typename B2 , typename C2 , typename Conv2 > |
| Euler (const Euler< A2, B2, C2, Conv2 > &o) |
| Constructor to convert from a different Euler convention. More...
|
|
| Euler (const OrientationVector &r) |
| Constructor to convert from a Orientation (or OrientationVector) More...
|
|
| Euler (const Quaternion &quat) |
| Constructor to convert from a unit Quaternion. More...
|
|
| Euler (double a, double b, double c) |
| Constructor from radians. More...
|
|
template<typename Unit > |
| Euler (double a, double b, double c, Unit u) |
| Constructor from specified units. More...
|
|
double | a () const |
| Getter for the first angular angle, around axis A. More...
|
|
void | a (double n) |
| Setter for the first angular angle, around axis A. More...
|
|
double | b () const |
| Getter for the first angular angle, around axis B. More...
|
|
void | b (double n) |
| Setter for the first angular angle, around axis B. More...
|
|
double | c () const |
| Getter for the first angular angle, around axis C. More...
|
|
void | c (double n) |
| Setter for the first angular angle, around axis C. More...
|
|
Orientation | to_orientation () const |
| Convert this Euler angle to a Orientation (axis-angle notation), within the default frame. More...
|
|
Orientation | to_orientation (const ReferenceFrame &frame) const |
| Convert this Euler angle to an Orientation (axis-angle notation), within the specified frame. More...
|
|
Quaternion | to_quat () const |
| Convert this Euler angle to a Quaternion. More...
|
|
template<typename A, typename B, typename C, typename Conv = conv::Intr>
class gams::pose::euler::Euler< A, B, C, Conv >
Class template for representing an angle in Euler notation.
Euler notation represents an angle as a sequence of angulars about axes applied in an order. The order of angulars, and whether they are applied to axes that follow the object as it orients, or stay fixed throughout, are the Euler convention. The template parameters of this class template specify the convention, using type tags from the "conv" namespace.
There are typedefs for all supported conventions provided for convenience. In particular, EulerVREP, and YawPitchRoll may be of most common utility.
Each convention requires specific support in the code. See EulerFormulas.inl for implementation details. If you use an unsupported convention, you will get a compile time error.
Avoid manipulating angles in this notation. It is better to convert to a Quaternion (or Orientation) and back, than to try to directly manipulate a Euler angle.
- Template Parameters
-
A | the first axis of angular |
B | the second axis of angular |
C | the third axis of angular |
Conv | whether to use Extrinsic (conv::Extr) or Intrisic (conv::Intr) angulars in this convention. Default is Intr |
Definition at line 157 of file Euler.h.