给定一个Eigen::Affine3d
变换,你如何有效地提取一个Eigen::Matrix3d
由仿射 4×4 矩阵的左上角 3×3 角组成的?
目前我使用以下非优雅(但有效)的语法:
Eigen::Affine3d m_world;
:
Eigen::Matrix3d normMatrix;
normMatrix.col(0) = Vec3(m_world(0,0),m_world(1,0),m_world(2,0));
normMatrix.col(1) = Vec3(m_world(0,1),m_world(1,1),m_world(2,1));
normMatrix.col(2) = Vec3(m_world(0,2),m_world(1,2),m_world(2,2));