30 #include "Eigen/Dense" 31 #include "Eigen/Geometry" 35 #include "modules/common/proto/geometry.pb.h" 57 const double qy,
const double qz) {
105 Eigen::Quaternion<double> quaternion(orientation.qw(), orientation.qx(),
106 orientation.qy(), orientation.qz());
107 return static_cast<Eigen::Vector3d>(quaternion.toRotationMatrix() * original);
112 Eigen::Quaternion<double> quaternion(orientation.qw(), orientation.qx(),
113 orientation.qy(), orientation.qz());
114 return static_cast<Eigen::Vector3d>(quaternion.toRotationMatrix().inverse() *
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
Eigen::Quaternion< T > ToQuaternion() const
Converts to a quaternion with a non-negative scalar part.
Definition: euler_angles_zxy.h:154
double NormalizeAngle(const double angle)
Normalize angle to [-PI, PI).
Eigen::Vector3d Vector3d
Definition: frame_transform.h:27
Eigen::Vector3d InverseQuaternionRotate(const Quaternion &orientation, const Eigen::Vector3d &rotated)
Definition: quaternion.h:110
double QuaternionToHeading(const double qw, const double qx, const double qy, const double qz)
Definition: quaternion.h:56
Eigen::Quaternion< T > HeadingToQuaternion(T heading)
Definition: quaternion.h:88
T yaw() const
Getter for yaw_.
Definition: euler_angles_zxy.h:130
Defines the EulerAnglesZXY class.
Eigen::Vector3d QuaternionRotate(const Quaternion &orientation, const Eigen::Vector3d &original)
Definition: quaternion.h:103
Math-related util functions.
Implements a class of Euler angles (actually, Tait-Bryan angles), with intrinsic sequence ZXY...
Definition: euler_angles_zxy.h:66