25 inline Eigen::Matrix3d
rpyToMat(
const double & r,
const double & p,
const double & y)
27 MC_RTC_diagnostic_push
40 inline Eigen::Matrix3d
rpyToMat(
const Eigen::Vector3d & rpy)
41 {
return rpyToMat(rpy(0), rpy(1), rpy(2)); }
77 inline Eigen::Vector3d
rpyFromMat(
const Eigen::Matrix3d & E)
79 double roll = atan2(E(1, 2), E(2, 2));
80 double pitch = -asin(E(0, 2));
81 double yaw = atan2(E(0, 1), E(0, 0));
82 return Eigen::Vector3d(roll, pitch, yaw);
97 inline Eigen::Vector3d
rpyFromQuat(
const Eigen::Quaterniond & quat)
98 {
return rpyFromMat(quat.toRotationMatrix()); }
104 if constexpr(std::is_same_v<T, Eigen::Quaterniond>) {
return rpyFromQuat(
value); }
std::optional< Eigen::VectorXd > value
Definition: generic_gripper.h:15
Eigen::Vector3d rpyFromQuat(const Eigen::Quaterniond &quat)
Definition: rpy_utils.h:97
Eigen::Vector3d rpyFromMat(const Eigen::Matrix3d &E)
Definition: rpy_utils.h:77
Eigen::Vector3d rpyFromRotation(const T &value)
Definition: rpy_utils.h:102
Eigen::Matrix3d rpyToMat(const double &r, const double &p, const double &y)
Definition: rpy_utils.h:25
sva::PTransformd rpyToPT(const Eigen::Vector3d &rpy)
Definition: rpy_utils.h:50
Eigen::Matrix3< T > RotX(T theta)
PTransform< double > PTransformd
Eigen::Matrix3< T > RotY(T theta)
Eigen::Matrix3< T > RotZ(T theta)
MC_RTC_diagnostic_push MC_RTC_diagnostic_ignored(GCC, "-Wsign-conversion") MC_RTC_diagnostic_pop namespace sch
Definition: surface_hull.h:11