[英]How can I use an Eigen::Map object for Eigen::EigenSolver?
[英]Eigen::Quaternionf, how can I access the values?
我試圖在現有項目中使用Eigen,但遇到了麻煩。
我正在從矩陣創建quaternionf
,如下所示:
Eigen::Quaternionf quats(path.block(0, 0, 3, 3));
該矩陣是有效的,並且此構造應該起作用。
當我嘗試調用x,y,z,w值時,像這樣:
float test = quats.x();
它不會編譯,給我:
use of undefined type 'Eigen::internal::quaternionbase_assign_impl<MatrixDerived,-1,-1>'
在:
\\eigen\\src\\Geometry\\Quaternion.h
我在這里想念什么?
謝謝。
問題不在於quats.x()
而是在初始化中:
Eigen::Quaternionf quats(path.block(0, 0, 3, 3));
您必須告訴Eigen您在編譯時正在傳遞3x3矩陣:
Eigen::Quaternionf quats(path.block<3,3>(0, 0));
甚至:
Eigen::Quaternionf quats(path.topLeftCorner<3,3>());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.