【发布时间】:2020-03-19 13:32:50
【问题描述】:
Eigen::Matrix4d transformation_matrix; //assume this is initialized
Eigen::Matrix4d &matrix = transformation_matrix;
Eigen::Quaterniond quat;
quat(matrix);
我正在尝试从变换矩阵中找到一个旋转矩阵。 Eigen::Quaterniond 库 toRotationMatrix 中已经有一个 API。但要使用它,我需要一个 4x4 Quaterniond(如果有误,请更正)。
得到编译错误
error: no match for call to ‘(Eigen::Quaterniond {aka Eigen::Quaternion<double>}) (const Matrix4d&)’
请帮忙。 Followed this link for conversion
Eigen::Quaterniond quat;
quat(matrix);
在初始化 Quaterniond 时,我得到一个不同的错误:
Eigen::internal::quaternionbase_assign_impl<Eigen::Matrix<double, 4, 4>, 4, 4>’ used in nested name specifier
internal::quaternionbase_assign_impl<MatrixDerived>::run(*this, xpr.derived());
【问题讨论】:
-
您需要编辑问题标题以提供更多信息。