12 #include <Eigen/Geometry>    13 #include <Eigen/StdVector>    16 #ifndef ANSI_COLOR_RED    17 #define ANSI_COLOR_RED "\x1b[1;31m"    19 #ifndef ANSI_COLOR_GREEN    21 #define ANSI_COLOR_GREEN "\x1b[1;32m"    23 #ifndef ANSI_COLOR_YELLOW    25 #define ANSI_COLOR_YELLOW "\x1b[1;33m"    27 #ifndef ANSI_COLOR_BLUE    29 #define ANSI_COLOR_BLUE "\x1b[1;34m"    31 #ifndef ANSI_COLOR_MAGENTA    33 #define ANSI_COLOR_MAGENTA "\x1b[1;35m"    35 #ifndef ANSI_COLOR_CYAN    37 #define ANSI_COLOR_CYAN "\x1b[1;36m"    39 #ifndef ANSI_COLOR_RESET    41 #define ANSI_COLOR_RESET "\x1b[0m"    54 using vec_E = std::vector<T, Eigen::aligned_allocator<T>>;
    57 using Vecf = Eigen::Matrix<decimal_t, N, 1>;
    60 using Veci = Eigen::Matrix<int, N, 1>;
    62 template <
int M, 
int N>
    63 using Matf = Eigen::Matrix<decimal_t, M, N>;
    66 using MatDNf = Eigen::Matrix<decimal_t, Eigen::Dynamic, N>;
   115 typedef Eigen::Transform<decimal_t, 2, Eigen::Affine> 
Aff2f;
   117 typedef Eigen::Transform<decimal_t, 3, Eigen::Affine> 
Aff3f;
   120 typedef Eigen::Quaternion<decimal_t> 
Quatf;
   123 #ifndef EIGEN_EPSILON   124 #define EIGEN_EPSILON Matf< Eigen::Dynamic, Eigen::Dynamic > MatDf
Dynamic MxN Eigen float matrix. 
Definition: data_type.h:112
 
vec_E< Vecf< N >> vec_Vecf
Vector of Eigen 1D float vector. 
Definition: data_type.h:69
 
Matf< 3, 3 > Mat3f
3x3 Matrix in float 
Definition: data_type.h:99
 
MatDNf< 2 > MatD2f
Nx2 Eigen float matrix. 
Definition: data_type.h:108
 
MatDNf< 3 > MatD3f
Nx3 Eigen float matrix. 
Definition: data_type.h:110
 
constexpr decimal_t epsilon_
Compensate for numerical error. 
Definition: data_type.h:126
 
Vecf< Eigen::Dynamic > VecDf
Dynamic Nx1 Eigen float vector. 
Definition: data_type.h:106
 
Eigen::Matrix< decimal_t, Eigen::Dynamic, N > MatDNf
MxN Eigen matrix with M unknown. 
Definition: data_type.h:66
 
Vecf< 3 > Vec3f
Eigen 1D float vector of size 3. 
Definition: data_type.h:79
 
Matf< 2, 2 > Mat2f
2x2 Matrix in float 
Definition: data_type.h:97
 
Matf< 4, 4 > Mat4f
4x4 Matrix in float 
Definition: data_type.h:101
 
Eigen::Matrix< decimal_t, M, N > Matf
MxN Eigen matrix. 
Definition: data_type.h:63
 
Eigen::Matrix< int, N, 1 > Veci
Eigen 1D int vector. 
Definition: data_type.h:60
 
double decimal_t
Rename the float type used in lib. 
Definition: data_type.h:50
 
std::vector< T, Eigen::aligned_allocator< T >> vec_E
Pre-allocated std::vector for Eigen using vec_E. 
Definition: data_type.h:54
 
Matf< 6, 6 > Mat6f
6x6 Matrix in float 
Definition: data_type.h:103
 
Eigen::Transform< decimal_t, 3, Eigen::Affine > Aff3f
Allias of Eigen::Affine3d. 
Definition: data_type.h:117
 
Vecf< 2 > Vec2f
Eigen 1D float vector of size 2. 
Definition: data_type.h:75
 
Vecf< 6 > Vec6f
Column vector in float of size 6. 
Definition: data_type.h:85
 
vec_E< Vec3i > vec_Vec3i
Vector of type Vec3i. 
Definition: data_type.h:94
 
Eigen::Quaternion< decimal_t > Quatf
Allias of Eigen::Quaterniond. 
Definition: data_type.h:120
 
Eigen::Matrix< decimal_t, N, 1 > Vecf
Eigen 1D float vector. 
Definition: data_type.h:57
 
Vecf< 4 > Vec4f
Eigen 1D float vector of size 4. 
Definition: data_type.h:83
 
vec_E< Vec3f > vec_Vec3f
Vector of type Vec3f. 
Definition: data_type.h:92
 
vec_E< Vec2i > vec_Vec2i
Vector of type Vec2i. 
Definition: data_type.h:90
 
Veci< 3 > Vec3i
Eigen 1D int vector of size 3. 
Definition: data_type.h:81
 
Eigen::Transform< decimal_t, 2, Eigen::Affine > Aff2f
Allias of Eigen::Affine2d. 
Definition: data_type.h:115
 
Veci< 2 > Vec2i
Eigen 1D int vector of size 2. 
Definition: data_type.h:77
 
vec_E< Vec2f > vec_Vec2f
Vector of type Vec2f. 
Definition: data_type.h:88
 
vec_E< Veci< N >> vec_Veci
Vector of Eigen 1D int vector. 
Definition: data_type.h:72