当前位置: 首页 > news >正文

ros2---位姿转换--eigen/tf2

转换公式

转换代码--python

使用transforms3d库。

小鱼教程

检查和安装:

pip show transforms3d

pip install transforms3d -i https://pypi.tuna.tsinghua.edu.cn/simple

转换代码--c++

tf2

tf2::Quaternion

三种构造:

        TF2_PUBLICQuaternion() {}//		template <typename tf2Scalar>//		explicit Quaternion(const tf2Scalar *v) : Tuple4<tf2Scalar>(v) {}/**@brief Constructor from scalars */TF2_PUBLICQuaternion(const tf2Scalar& x, const tf2Scalar& y, const tf2Scalar& z, const tf2Scalar& w) : QuadWord(x, y, z, w) {}/**@brief Axis angle Constructor* @param axis The axis which the rotation is around* @param angle The magnitude of the rotation around the angle (Radians) */TF2_PUBLICQuaternion(const Vector3& axis, const tf2Scalar& angle) { setRotation(axis, angle); }

轴角/欧拉角/RPY设置接口

轴角设置

  /**@brief Set the rotation using axis angle notation * @param axis The axis around which to rotate* @param angle The magnitude of the rotation in Radians */TF2_PUBLICvoid setRotation(const Vector3& axis, const tf2Scalar& angle)

欧拉角设置

  /**@brief Set the quaternion using Euler angles* @param yaw Angle around Y* @param pitch Angle around X* @param roll Angle around Z */TF2_PUBLICvoid setEuler(const tf2Scalar& yaw, const tf2Scalar& pitch, const tf2Scalar& roll)

上面是源码中的注释,但是xyz----rpy对应关系不对,不知为何。

RPY设置

  /**@brief Set the quaternion using fixed axis RPY* @param roll Angle around X * @param pitch Angle around Y* @param yaw Angle around Z*/TF2_PUBLICvoid setRPY(const tf2Scalar& roll, const tf2Scalar& pitch, const tf2Scalar& yaw)

http://www.xdnf.cn/news/1392589.html

相关文章:

  • 如何在mysql中执行创建数据库的脚本文件?
  • 企业级数据库管理实战(三):数据库性能监控与调优的实战方法
  • 学习笔记-Record类
  • 忆联参与制定消费级SSD团体标准正式出版! 以“高可靠”引领行业提质增效与用户体验升级
  • 联想打印机2268w安装
  • Ubuntu22.04系统安装Opencv,无法定位包libjasper-dev libdc1394-22-dev的解决办法
  • 微信小程序调用蓝牙打印机教程(TSPL命令)
  • 死锁检测 及其测试用例
  • 地铁隧道病害智能巡检系统——机器视觉技术的深度应用
  • Idea2025.2 MybatisX插件失效问题
  • vue3+wangEditor实现富文本编辑器
  • cursor的setting設置換行
  • 命令拓展(草稿)
  • Vue开发准备
  • Silvaco TCAD | Victory DoE的基本使用方法(三)
  • nacos单机部署并开启鉴权
  • 2025.8.29机械臂实战项目
  • Windows 下 MSYS2 + MinGW-w64 配置 Fyne GUI 编译环境全流程
  • Redis-分布式缓存
  • Java深拷贝与浅拷贝核心解析
  • 设计模式:装饰模式(Decorator Pattern)
  • Kubernetes 与 GitOps 的深度融合实践指南
  • 【3D入门-指标篇上】3D 网格重建评估指标详解与通俗比喻
  • 3D 数字孪生可视化技术在学校项目中的应用
  • “破译”的密钥/算法类型
  • 【工具】开源大屏设计器 自用整理
  • LeetCode第二题知识点2 ---- 栈、堆、地址
  • LeetCode - 128. 最长连续序列
  • Vue3+Ant-design-vue 实现树形穿梭框
  • BlueKing-ci