Gibt es eine kürzere Möglichkeit, die Transformation anzuwenden?Kürzerer Weg, um Transformation auf Matrix anzuwenden, die Vektoren in Eigen enthält?
auto vecs = Matrix<float, Dynamic, 3>(); //vector in each row.
Affine3f transform = ...; // some Affine3 transform
for (int r = 0; r < vecs.rows(); r++) {
Vector3f v = vecs.row(r);
v = transform * v;
vecs.row(r) = v;
}
Mit kürzer meinen Sie so etwas wie die drei Zeilen in Ihrer for-Schleife zu einem zusammenzufassen? - 'vecs.row (r) * = transformieren? –
@JohnnyHenly Das ist äquivalent zu 'vecs.row (r) = vecs.row (r) * transform;' was im Allgemeinen nicht äquivalent ist! – immibis
For-Schleife sieht für eine Matrix-Bibliothek wie Eigen sehr überflüssig aus. Ich würde erwarten, dass es eine bessere Funktion gibt, die die for-Schleife zu einem einzigen Funktionsaufruf zusammenfasst. – JE42