2013-05-09 8 views

Odpowiedz

17

Można również dołączyć je za pomocą składni przecinek initializer:

m << v1, v2, v3, v4; 

Matryca m mus mieć została najpierw odpowiednio zmieniona.

+13

Eigen jest NIESAMOWITY. –

+0

Czy to kopiuje wektory 'v1',' v2', 'v3' i' v4'? Czy możliwe jest utworzenie macierzy 'm' przy użyciu danych w wektorach bez ich kopiowania? może odniesienie do const lub coś podobnego? –

+0

tak, wszystkie wektory są kopiowane w obrębie 'm'. – ggael

3

Szybkie sprawdzenie na docs:

Vector4f v1(1,0,0,0); 
Vector4f v2(0,1,0,0); 
Vector4f v3(0,0,1,0); 
Vector4f v4(0,0,0,1); 
Matrix4f m; 

m.row(0) = v1; 
m.row(1) = v2; 
m.row(2) = v3; 
m.row(3) = v4; 

std::cout << m << std::endl; 

wyjściowa:

1,0,0,0 
0,1,0,0 
0,0,1,0 
0,0,0,1