4#include <Eigen/Geometry>
6#include "DenseMatrix.h"
10namespace isce3 {
namespace core {
21 EulerAngles(
double y,
double p,
double r) : _yaw(y), _pitch(p), _roll(r) {}
44 return (Eigen::AngleAxisd(
yaw(), Eigen::Vector3d::UnitZ()) *
45 Eigen::AngleAxisd(
pitch(), Eigen::Vector3d::UnitY()) *
46 Eigen::AngleAxisd(
roll(), Eigen::Vector3d::UnitX()))
51 double yaw()
const {
return _yaw; }
54 double pitch()
const {
return _pitch; }
57 double roll()
const {
return _roll; }
81 Vec3
rotate(
const Eigen::Vector3d& vec)
const;
104 _pitch -= rhs._pitch;
122 double _yaw, _pitch, _roll;
133inline EulerAngles operator+(
const EulerAngles& lhs,
const EulerAngles& rhs)
Representation of 3-2-1 Euler angle sequence of rotations.
Definition EulerAngles.h:13
double yaw() const
Get yaw in radians.
Definition EulerAngles.h:51
Mat3 toRotationMatrix() const
Convert to rotation matrix.
Definition EulerAngles.h:42
EulerAngles & operator-=(const EulerAngles &rhs)
Overloaded in-place operator -= on this.
Definition EulerAngles.h:101
double roll() const
Get roll in radians.
Definition EulerAngles.h:57
Vec3 rotate(const Eigen::Vector3d &vec) const
Rotate a 3-D vector by Euler object in YPR order.
Definition EulerAngles.cpp:48
EulerAngles & operator+=(const EulerAngles &rhs)
Overloaded in-place operator += on this.
Definition EulerAngles.h:88
Quaternion toQuaternion() const
Convert to isce3 Quaternion object.
Definition EulerAngles.cpp:46
EulerAngles(double y, double p, double r)
Construct from yaw, pitch, and roll angles.
Definition EulerAngles.h:21
EulerAngles & operator*=(const EulerAngles &rhs)
Overloaded in-place operator *= on this.
Definition EulerAngles.h:115
bool isApprox(const EulerAngles &other, double prec=1e-7) const
Check if *this is approximately equals to other within a desired precision.
Definition EulerAngles.cpp:33
double pitch() const
Get pitch in radians.
Definition EulerAngles.h:54
Quaternion representation of rotations, based on double precision Eigen::Quaterniond.
Definition Quaternion.h:25
base interpolator is an abstract base class
Definition BinarySearchFunc.cpp:5