Qt使用Eigen矩陣庫

2021-07-24 19:34:35 字數 1248 閱讀 6432

eigen官網

解壓後放在任意資料夾內,然後在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下Eigen矩陣函式庫的新增

之前在vs裡用eigen庫寫了一堆機械人姿態解算的矩陣運算,然而畢設要用到gui介面,聽大神說用qt比mfc有前途,所以著手用qt寫。但是在qt下eigen庫的新增上浪費了一點時間,所以索性再花點時間寫個部落格來幫助像我一樣的小白實現qt下eigen庫的新增。用qt隨便建乙個gui工程,在.pro下...

Qt下Eigen矩陣函式庫的新增

用qt隨便建乙個gui工程,在.pro下新增如下 路徑就是解壓eigen的那個路徑 includepath d library eigen eigencpp檔案中新增 qt下eigen矩陣函式庫的新增 include include主函式內部新增 eigen matrixxd aaa 2,3 aaa...

C 矩陣處理庫 Eigen初步使用

專案要進行比較多的矩陣操作,特別是二維矩陣。剛開始做實驗時,使用了動態二維陣列,於是寫了一堆matrix函式,作矩陣的乘除加減求逆求行列式。實驗做完了,開始做 優化,發現matrix.h檔案裡適用性太低,而且動態二維陣列的空間分配與釋放也影響效率,於是尋找其他解決方案。首先考慮的是與matlab混合...