tf的四元素和欧拉角之间转换

本文介绍了如何在Robot Operating System (ROS)中使用TF库进行坐标转换,包括将欧拉角转换为四元数并设置到TF的StampedTransform中,以及后续的四元数到欧拉角的转换过程。关键步骤包括设置平移和旋转,并通过quaternionMsgToTF函数实现转换。
摘要由CSDN通过智能技术生成
pose current_pose;  //得到的Pose
 
tf::StampedTransform tf_ 
tf_.setOrigin( tf::Vector3(current_pose.x, current_pose.y, current_pose.z) );    //设置平移

  //欧拉角 -->>四元数
tf::Quaternion q;
q.setRPY(current_pose.roll, current_pose.pitch, current_pose.yaw); 
 
tf_.setRotation(q);    //TF 的transform 必须从四元数获取旋转信息
 
 //四元数 -->> 欧拉角
tf::Quaternion quat;
tf::quaternionMsgToTF(odom.pose.pose.orientation, quat);
double roll, pitch, yaw;   //定义存储r\p\y的容器
tf::Matrix3x3(quat).getRPY(roll, pitch, yaw);//进行转换
 
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值