Qt使用Eigen矩阵库

安装

Eigen矩阵库下载 http://pan.baidu.com/s/1c2DpqCg
Eigen官网 http://eigen.tuxfamily.org/index.php?title=Main_Page

解压后放在任意文件夹内,然后在qt项目中的pro文件中加上Eigen的目录(如果没有加载成功,重新构筑即可)

INCLUDEPATH += D:\......\eigen3

添加头文件

#include 

简单操作

定义向量(后缀是变量类型,例如float矩阵是Matrix2f)

Vector2d a(5.0, 6.0);
cout << a << endl;
Vector3d b(5.0, 6.0, 7.0);
cout << b << endl;
Vector4d c(5.0, 6.0, 7.0, 8.0);
cout << c;

定义动态矩阵

MatrixXd m = MatrixXd::Random(5,3);
cout << m;

定义静态矩阵

Matrix3d m = Matrix3d::Random();
cout << m;

元素的设置

Matrix3f m;
m << 1, 2, 3,
     4, 5, 6,
     7, 8, 9;

向量元素的访问

Vector2d v = Vector2d::Random();
cout << v[0] <

矩阵的基本运算的运算符都有重置

Matrix3d m1 = Matrix3d::Random();
cout << m1 << endl;
Matrix3d m2 = Matrix3d::Random();
cout << m2 << endl;
cout << m1 + m2 << endl;
cout << m1 - m2 << endl;
cout << m1 * m2;

逆矩阵(不会改变矩阵的值)

Matrix3d m = Matrix3d::Random();
cout << m << endl;
cout << m.inverse() << endl;

你可能感兴趣的:(Qt小贴士,qt,库,矩阵)