2023-09-27 15:45:31 -07:00
|
|
|
#pragma once
|
|
|
|
#include <eigen3/Eigen/Dense>
|
2023-11-17 23:53:40 +00:00
|
|
|
#include "common/transformations/coordinates.hpp"
|
2023-09-27 15:45:31 -07:00
|
|
|
|
|
|
|
|
2025-01-29 09:09:58 +00:00
|
|
|
Eigen::Quaterniond ensure_unique(const Eigen::Quaterniond &quat);
|
2023-09-27 15:45:31 -07:00
|
|
|
|
2025-01-29 09:09:58 +00:00
|
|
|
Eigen::Quaterniond euler2quat(const Eigen::Vector3d &euler);
|
|
|
|
Eigen::Vector3d quat2euler(const Eigen::Quaterniond &quat);
|
|
|
|
Eigen::Matrix3d quat2rot(const Eigen::Quaterniond &quat);
|
2023-09-27 15:45:31 -07:00
|
|
|
Eigen::Quaterniond rot2quat(const Eigen::Matrix3d &rot);
|
2025-01-29 09:09:58 +00:00
|
|
|
Eigen::Matrix3d euler2rot(const Eigen::Vector3d &euler);
|
2023-09-27 15:45:31 -07:00
|
|
|
Eigen::Vector3d rot2euler(const Eigen::Matrix3d &rot);
|
|
|
|
Eigen::Matrix3d rot_matrix(double roll, double pitch, double yaw);
|
2025-01-29 09:09:58 +00:00
|
|
|
Eigen::Matrix3d rot(const Eigen::Vector3d &axis, double angle);
|
|
|
|
Eigen::Vector3d ecef_euler_from_ned(const ECEF &ecef_init, const Eigen::Vector3d &ned_pose);
|
|
|
|
Eigen::Vector3d ned_euler_from_ecef(const ECEF &ecef_init, const Eigen::Vector3d &ecef_pose);
|