Callable object computing an an unitary quaternion from an angle value and a 3 dimensionnal axis vector.
the quaternion value representing the rotation.
#include <kyosu/kyosu.hpp>
#include <eve/wide.hpp>
#include <array>
#include <iostream>
int main()
{
auto theta = eve::pio_3(eve::as<double>());
std::array<double, 3> ax{1., 2., 3.};
std::cout << " <- theta = " << theta << std::endl;
std::cout << " <- axis = (" << ax[0] << ", " << ax[1] << ", " << ax[2] << ")" << std::endl;
std::cout << " ->theta = " << aa << std::endl;
std::cout << " -> axis = (" << axx[0] << ", " << axx[1] << ", " << axx[2] << ")" << std::endl;
std::array<double, 3> azz{0., 0., 0.};
return 0;
}
constexpr tags::callable_to_angle_axis to_angle_axis
Callable object computing the angle and axis coordinates from a quaternion.
Definition: to_angle_axis.hpp:85
as_cayley_dickson_n_t< 4, T > quaternion_t
Type alias for quaternion numbers.
Definition: quaternion.hpp:27
as_cayley_dickson_n_t< 2, T > complex_t
Type alias for complex numbers.
Definition: complex.hpp:27