23 #ifndef CLOE_UTILITY_GEOMETRY_HPP_ 24 #define CLOE_UTILITY_GEOMETRY_HPP_ 26 #include <Eigen/Geometry> 36 Eigen::Quaterniond qt = Eigen::AngleAxisd(yaw, Eigen::Vector3d::UnitZ()) *
37 Eigen::AngleAxisd(pitch, Eigen::Vector3d::UnitY()) *
38 Eigen::AngleAxisd(roll, Eigen::Vector3d::UnitX());
46 const Eigen::Vector3d& trans) {
47 Eigen::Isometry3d pose;
49 pose.linear() = quaternion.matrix();
50 pose.translation() = trans;
60 return pose.rotation().matrix().eulerAngles(2, 1, 0).reverse();
70 Eigen::Vector3d* pt_vec) {
71 *pt_vec = child_frame.inverse() * (*pt_vec);
81 Eigen::Vector3d* pt_vec_child) {
82 *pt_vec_child = child_frame * (*pt_vec_child);
88 #endif // CLOE_UTILITY_GEOMETRY_HPP_ void transform_point_to_child_frame(const Eigen::Isometry3d &child_frame, Eigen::Vector3d *pt_vec)
Definition: geometry.hpp:69
Eigen::Isometry3d pose_from_rotation_translation(const Eigen::Quaterniond &quaternion, const Eigen::Vector3d &trans)
Definition: geometry.hpp:45
Eigen::Quaterniond quaternion_from_rpy(double roll, double pitch, double yaw)
Definition: geometry.hpp:34
Definition: coordinator.hpp:36
void transform_point_to_parent_frame(const Eigen::Isometry3d &child_frame, Eigen::Vector3d *pt_vec_child)
Definition: geometry.hpp:80
Eigen::Vector3d get_pose_roll_pitch_yaw(const Eigen::Isometry3d &pose)
Definition: geometry.hpp:59