Add rotate(quat,vector,quat)

This commit is contained in:
Nikita Lisitsa 2021-12-27 15:14:23 +03:00
parent 36854905fc
commit 64b3e876ad

View file

@ -184,6 +184,13 @@ namespace psemek::geom
return {res[0], res[1], res[2]};
}
template <typename T>
vector<T, 3> rotate(quaternion<T> const & q1, vector<T, 3> const & v, quaternion<T> const & q2)
{
auto res = q1 * quaternion<T>::vector(v) * conjugate(q2);
return {res[0], res[1], res[2]};
}
template <typename T>
T angle(quaternion<T> const & q0, quaternion<T> const & q1)
{