8
我可以使用特徵庫來獲得將矢量A旋轉到矢量B的旋轉矩陣嗎? 我一直在尋找一段時間,但找不到相關的api。Eigen中的旋轉矩陣
我可以使用特徵庫來獲得將矢量A旋轉到矢量B的旋轉矩陣嗎? 我一直在尋找一段時間,但找不到相關的api。Eigen中的旋轉矩陣
首先必須構造一個quaternion,然後將其轉換爲一個矩陣,例如:
#include <Eigen/Geometry>
using namespace Eigen;
int main() {
Vector3f A, B;
Matrix3f R;
R = Quaternionf().setFromTwoVectors(A,B);
}
值得注意的是,需要一個額外的'.toRotationMatrix()''後(A,B)'到工作,因爲'R'是一個矩陣。 – 2013-09-10 10:08:00
不,有一個運算符=的重載,使它工作。但是,它們各自是明確的,因此'Matrix3f R = Quaternionf()。setFromTwoVectors(A,B);'需要'.toRotationMatrix()'或者明確地轉換爲'Matrix3f(。)',或者明確地調用ctor與'Matrix3f R(Quaternionf()。setFromTwoVectors(A,B));' – ggael 2013-09-11 08:20:59
對不起我的錯!錯過了那微小的微妙。感謝您解釋這些差異。 – 2013-09-11 16:55:47