From 3b71f7126a4fb936e479d98986efed74aea54abf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joan=20Sol=C3=A0?= <jsola@iri.upc.edu> Date: Sat, 5 Nov 2016 11:41:25 +0100 Subject: [PATCH] Divide vector instead of matrix saves time Now for homogeneous --- src/local_parametrization_homogeneous.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/local_parametrization_homogeneous.cpp b/src/local_parametrization_homogeneous.cpp index 62c6ea0aa..8657878e9 100644 --- a/src/local_parametrization_homogeneous.cpp +++ b/src/local_parametrization_homogeneous.cpp @@ -60,11 +60,11 @@ bool LocalParametrizationHomogeneous::computeJacobian(const Eigen::Map<const Eig assert(_h.size() == global_size_ && "Wrong size of input quaternion."); assert(_jacobian.rows() == global_size_ && _jacobian.cols() == local_size_ && "Wrong size of Jacobian matrix."); - _jacobian << _h(3), _h(2), -_h(1), - -_h(2), _h(3), _h(0), - _h(1), -_h(0), _h(3), - -_h(0), -_h(1), -_h(2) ; - _jacobian /= 2; + Eigen::Vector4s hh = _h/2; + _jacobian << hh(3), hh(2), -hh(1), + -hh(2), hh(3), hh(0), + hh(1), -hh(0), hh(3), + -hh(0), -hh(1), -hh(2) ; return true; } -- GitLab