在进行PCL库学习的时候,用到了Eigen,突然发现以前耗费了很多愚蠢的工夫。好吧!人笨多学习、多查阅资料。
1、Eigen简介:
Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms.(PS:原话直接搞上,English太low!)
2、Eigen下载:
官方下载:http://eigen.tuxfamily.org/index.php?title=Main_Page
我的下载及以下资料(主要是自己离线的Eigen类及相关文档):http://download.csdn.net/download/y363703390/9963732
3、Eigen配置
对于Eigen的配置,只需要将下载好的Eigen路径添加到项目属性中即可;我的是PCL中直接集成了Eigen的库,所以添加PCL的配置文件即可
4、Eigen使用
#include "stdafx.h"
#include <Eigen/Dense>
#include <iostream>
using namespace Eigen; // 别忘了该命名空间,我就笨了吧唧的给忘了
int main()
{
Matrix2d a;
a << 1, 2, 3, 4;
MatrixXd b(2, 2);
b << 2, 3, 1, 4;
std::cout << "a + b = \n" << a + b << std::endl;
std::cout << "a - b = \n" << a - b << std::endl;
std::cout << "Doing a += b;" << std::endl;
a += b;
std::cout << "Now a =\n" << a << std::endl;
Vector3d v(1, 2, 3);
Vector3d w(1, 0, 0);
std::cout << "-v + w - v =\n"
<< -v + w - v << std::endl;
system("pause");
return 0;
}
【参考】:
1、http://eigen.tuxfamily.org/index.php?title=Main_Page(官网)
2、http://eigen.tuxfamily.org/dox/namespaceEigen.html(Eigen类)