diff --git a/include/hpp/fcl/math/transform.h b/include/hpp/fcl/math/transform.h index a11dc55ccced115f65b975c15e4681f56709d92f..53c07a9ce11a9ee1bce6a1da20273c8f49b29a42 100644 --- a/include/hpp/fcl/math/transform.h +++ b/include/hpp/fcl/math/transform.h @@ -132,6 +132,22 @@ public: data (other.derived()) {} + Quaternion3f(FCL_REAL w, FCL_REAL x, FCL_REAL y, FCL_REAL z) + { + data[W] = w; + data[X] = x; + data[Y] = y; + data[Z] = z; + } + + template<typename Derived> + Quaternion3f(FCL_REAL _w, const Eigen::MatrixBase<Derived>& _vec) + { + EIGEN_STATIC_ASSERT_VECTOR_SPECIFIC_SIZE(Derived, 3); + w() = _w; + vec().noalias() = _vec; + } + /// @brief Whether the rotation is identity bool isIdentity() const { @@ -251,22 +267,6 @@ public: private: - Quaternion3f(FCL_REAL w, FCL_REAL x, FCL_REAL y, FCL_REAL z) - { - data[W] = w; - data[X] = x; - data[Y] = y; - data[Z] = z; - } - - template<typename Derived> - Quaternion3f(FCL_REAL _w, const Eigen::MatrixBase<Derived>& _vec) - { - EIGEN_STATIC_ASSERT_VECTOR_SPECIFIC_SIZE(Derived, 3); - w() = _w; - vec().noalias() = _vec; - } - FCL_REAL operator [] (std::size_t i) const { return data[i];