|
Vulcan
Aerospace Engineering Utilities Built on Janus
|
#include <vulcan/core/VulcanTypes.hpp>#include <janus/math/Quaternion.hpp>#include <janus/math/Rotations.hpp>#include <array>

Go to the source code of this file.
Namespaces | |
| namespace | vulcan |
| namespace | vulcan::detail |
Enumerations | |
| enum class | vulcan::EulerSequence { vulcan::XYZ , vulcan::XZY , vulcan::YXZ , vulcan::YZX , vulcan::ZXY , vulcan::ZYX , vulcan::XYX , vulcan::XZX , vulcan::YXY , vulcan::YZY , vulcan::ZXZ , vulcan::ZYZ } |
Functions | |
| constexpr std::array< int, 3 > | vulcan::euler_axes (EulerSequence seq) |
| constexpr bool | vulcan::is_proper_euler (EulerSequence seq) |
| Check if sequence is proper Euler (symmetric: first axis == third axis). | |
| constexpr const char * | vulcan::euler_sequence_name (EulerSequence seq) |
| Get sequence name as string (for debugging/logging). | |
| template<typename Scalar> | |
| Mat3< Scalar > | vulcan::dcm_from_euler (Scalar e1, Scalar e2, Scalar e3, EulerSequence seq) |
| template<typename Scalar> | |
| janus::Quaternion< Scalar > | vulcan::quaternion_from_euler (Scalar e1, Scalar e2, Scalar e3, EulerSequence seq) |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_zyx (const Mat3< Scalar > &R) |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_xyz (const Mat3< Scalar > &R) |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_xzy (const Mat3< Scalar > &R) |
| Extract Euler angles from DCM for XZY sequence. | |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_yxz (const Mat3< Scalar > &R) |
| Extract Euler angles from DCM for YXZ sequence. | |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_yzx (const Mat3< Scalar > &R) |
| Extract Euler angles from DCM for YZX sequence. | |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_zxy (const Mat3< Scalar > &R) |
| Extract Euler angles from DCM for ZXY sequence. | |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_zxz (const Mat3< Scalar > &R) |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_zyz (const Mat3< Scalar > &R) |
| Extract Euler angles from DCM for ZYZ sequence. | |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_xyx (const Mat3< Scalar > &R) |
| Extract Euler angles from DCM for XYX sequence. | |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_xzx (const Mat3< Scalar > &R) |
| Extract Euler angles from DCM for XZX sequence. | |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_yxy (const Mat3< Scalar > &R) |
| Extract Euler angles from DCM for YXY sequence. | |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::detail::euler_from_dcm_yzy (const Mat3< Scalar > &R) |
| Extract Euler angles from DCM for YZY sequence. | |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::euler_from_dcm (const Mat3< Scalar > &R, EulerSequence seq) |
| template<typename Scalar> | |
| Vec3< Scalar > | vulcan::euler_from_quaternion (const janus::Quaternion< Scalar > &q, EulerSequence seq) |