2025年Eigen使用_1

Eigen使用_1Eigen Matrix 初始化 定义一个 4 4 的矩阵 定义一个 4 4 的矩阵 Eigen Matrix float 4 4 rotMatrix 下面是几种我目前知道的初始化方法 基本初始化 rotMatrix lt lt 1 newY 0 newZ 0 current center 0 0 float

大家好,我是讯享网,很高兴认识大家。

Eigen::Matrix初始化

定义一个4*4的矩阵

定义一个4*4的矩阵
Eigen::Matrix<float, 4, 4> rotMatrix;
下面是几种我目前知道的初始化方法


基本初始化

 rotMatrix << 1, newY[0], newZ[0], _current_center[0], 0, newY[1], newZ[1], _current_center[1], 0, newY[2], newZ[2], _current_center[2], 0, 0, 0, 1; 

讯享网

上面的代码,就是逐个对4*4float型矩阵rotMatrix赋值。


块初始

假设已经定义好
Eigen::Matrix<float, 3,3> a;
Eigen::Vector3f b;


讯享网

那么rotMatrix可以做如下初始化

讯享网trans << a, b, 0, 0, 0, 1; 

上面部分代码的意思是,rotMatrix的前3行的前3列,由矩阵a初始化。
前3行的最后一列由向量b初始化
最后一行由0, 0, 0, 1初始化


初始化为单位矩阵


获得Eigen::vector的某部分

Eigen::vector4d temp = {1,2,3,4}; temp.head(3) = {1,2,3}; temp.tail(3) = {2,3,4}; 

获得Eigen::Matrix的某行or某列

讯享网Eigen::Matrix<float, 4, 4> rotMatrix; rotMatrix.row(i);//行 rotMatrix.col(i);//列 
小讯
上一篇 2025-03-01 21:49
下一篇 2025-04-02 18:37

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/60819.html