0

我对 Eigen 库不太熟悉,我被困在这段代码中

motor1_to_motor2 =
          Translation3f(BigApeLeg::distanceJoint1ToJoint3(),0,0)
        * AngleAxisf(M_PI_2, Vector3f::UnitX())
        * AngleAxisf(M_PI_2, Vector3f::UnitY());

motor1_to_motor2 是 Eigen::Affine3f Big::ApeLeg::distance... 必须返回一个浮点数

但我的问题是什么是 Translation3f,什么是 AngleAxisf。他们在做什么?他们返回什么?

我熟悉一些基本的转换。如果有人可以给我任何指示,我将不胜感激?谢谢

4

1 回答 1

3

顾名思义,Translation3f表示使用浮点数的 3D 翻译。AngleAxisf 表示围绕给定轴的给定角度的 3D 旋转。两者都是类构造函数,而不是函数。

因此,motor1_to_motor2 是一个仿射变换,它先绕 Y 旋转,然后绕 X 旋转,最后沿 X 轴平移。

这个文档应该很好地介绍了 Eigen 中的空间变换。

于 2013-04-04T17:18:53.690 回答