diff options
author | Gael Guennebaud <g.gael@free.fr> | 2015-12-01 09:45:56 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2015-12-01 09:45:56 +0100 |
commit | 6c02cbbb0f1786f5f22285342850250c28845272 (patch) | |
tree | 92aa4c612cd3dd123ff5f4d75b95a2d10e7dd3bd /Eigen/src/Geometry | |
parent | 844561939f931643df7d6e2387288bb0fe7b600f (diff) |
Fix matrix to quaternion (and angleaxis) conversion for matrix expression.
Diffstat (limited to 'Eigen/src/Geometry')
-rw-r--r-- | Eigen/src/Geometry/Quaternion.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Eigen/src/Geometry/Quaternion.h b/Eigen/src/Geometry/Quaternion.h index 56fa2bfbf..32e7e76fa 100644 --- a/Eigen/src/Geometry/Quaternion.h +++ b/Eigen/src/Geometry/Quaternion.h @@ -739,8 +739,9 @@ template<typename Other> struct quaternionbase_assign_impl<Other,3,3> { typedef typename Other::Scalar Scalar; - template<class Derived> static inline void run(QuaternionBase<Derived>& q, const Other& mat) + template<class Derived> static inline void run(QuaternionBase<Derived>& q, const Other& a_mat) { + const typename internal::nested_eval<Other,2>::type mat(a_mat); using std::sqrt; // This algorithm comes from "Quaternion Calculus and Fast Animation", // Ken Shoemake, 1987 SIGGRAPH course notes |