MRSL DecompUtil Library  0.1
An implementaion of convex decomposition over point cloud
Macros | Typedefs | Variables
data_type.h File Reference

Defines all data types used in this lib. More...

#include <stdio.h>
#include <math.h>
#include <limits>
#include <vector>
#include <Eigen/Geometry>
#include <Eigen/StdVector>

Go to the source code of this file.

Macros

#define ANSI_COLOR_RED   "\x1b[1;31m"
 Set red font in printf funtion.
 
#define ANSI_COLOR_GREEN   "\x1b[1;32m"
 Set green font in printf funtion.
 
#define ANSI_COLOR_YELLOW   "\x1b[1;33m"
 Set yellow font in printf funtion.
 
#define ANSI_COLOR_BLUE   "\x1b[1;34m"
 Set blue font in printf funtion.
 
#define ANSI_COLOR_MAGENTA   "\x1b[1;35m"
 Set magenta font in printf funtion.
 
#define ANSI_COLOR_CYAN   "\x1b[1;36m"
 Set cyan font in printf funtion.
 
#define ANSI_COLOR_RESET   "\x1b[0m"
 Reset font color in printf funtion.
 
#define EIGEN_EPSILON
 

Typedefs

typedef double decimal_t
 Rename the float type used in lib. More...
 
template<typename T >
using vec_E = std::vector< T, Eigen::aligned_allocator< T >>
 Pre-allocated std::vector for Eigen using vec_E.
 
template<int N>
using Vecf = Eigen::Matrix< decimal_t, N, 1 >
 Eigen 1D float vector.
 
template<int N>
using Veci = Eigen::Matrix< int, N, 1 >
 Eigen 1D int vector.
 
template<int M, int N>
using Matf = Eigen::Matrix< decimal_t, M, N >
 MxN Eigen matrix.
 
template<int N>
using MatDNf = Eigen::Matrix< decimal_t, Eigen::Dynamic, N >
 MxN Eigen matrix with M unknown.
 
template<int N>
using vec_Vecf = vec_E< Vecf< N >>
 Vector of Eigen 1D float vector.
 
template<int N>
using vec_Veci = vec_E< Veci< N >>
 Vector of Eigen 1D int vector.
 
typedef Vecf< 2 > Vec2f
 Eigen 1D float vector of size 2.
 
typedef Veci< 2 > Vec2i
 Eigen 1D int vector of size 2.
 
typedef Vecf< 3 > Vec3f
 Eigen 1D float vector of size 3.
 
typedef Veci< 3 > Vec3i
 Eigen 1D int vector of size 3.
 
typedef Vecf< 4 > Vec4f
 Eigen 1D float vector of size 4.
 
typedef Vecf< 6 > Vec6f
 Column vector in float of size 6.
 
typedef vec_E< Vec2fvec_Vec2f
 Vector of type Vec2f.
 
typedef vec_E< Vec2ivec_Vec2i
 Vector of type Vec2i.
 
typedef vec_E< Vec3fvec_Vec3f
 Vector of type Vec3f.
 
typedef vec_E< Vec3ivec_Vec3i
 Vector of type Vec3i.
 
typedef Matf< 2, 2 > Mat2f
 2x2 Matrix in float
 
typedef Matf< 3, 3 > Mat3f
 3x3 Matrix in float
 
typedef Matf< 4, 4 > Mat4f
 4x4 Matrix in float
 
typedef Matf< 6, 6 > Mat6f
 6x6 Matrix in float
 
typedef Vecf< Eigen::Dynamic > VecDf
 Dynamic Nx1 Eigen float vector.
 
typedef MatDNf< 2 > MatD2f
 Nx2 Eigen float matrix.
 
typedef MatDNf< 3 > MatD3f
 Nx3 Eigen float matrix.
 
typedef Matf< Eigen::Dynamic, Eigen::Dynamic > MatDf
 Dynamic MxN Eigen float matrix.
 
typedef Eigen::Transform< decimal_t, 2, Eigen::Affine > Aff2f
 Allias of Eigen::Affine2d.
 
typedef Eigen::Transform< decimal_t, 3, Eigen::Affine > Aff3f
 Allias of Eigen::Affine3d.
 
typedef Eigen::Quaternion< decimal_tQuatf
 Allias of Eigen::Quaterniond.
 

Variables

constexpr decimal_t epsilon_ = 1e-10
 Compensate for numerical error.
 

Detailed Description

Defines all data types used in this lib.

Mostly alias from Eigen Library.

Typedef Documentation

typedef double decimal_t

Rename the float type used in lib.

Default is set to be double, but user can change it to float.