Ich habe vier Spalten Vektoren. Ich muss sie anhängen, um eine vier mal vier Matrix zu machen. Gibt es einen Konstruktor oder etwas dafür?Wie machst du eine Matrix aus Vektoren in Eigen?
10
A
Antwort
17
Sie sie auch mit dem Komma initializer Syntax anhängen wurde zuerst richtig skaliert.
3
Eine schnelle Überprüfung der 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;
Ausgang:
m << v1, v2, v3, v4;
Die Matrix m Mus haben:
1,0,0,0
0,1,0,0
0,0,1,0
0,0,0,1
Eigen ist super. –
Kopiert das die Vektoren 'v1',' v2', 'v3' und' v4'? Ist es möglich, die Matrix "m" mit den Daten in den Vektoren zu erstellen, ohne sie zu kopieren? Vielleicht eine konstante Referenz oder so? –
Ja, alle Vektoren werden innerhalb von 'm' kopiert. – ggael