6#include <Core/RaCore.hpp>
9#include <Eigen/Geometry>
10#include <Eigen/Sparse>
21using VectorN = Eigen::Matrix<Scalar, Eigen::Dynamic, 1>;
22using VectorNf = Eigen::VectorXf;
23using VectorNd = Eigen::VectorXd;
25using Vector4 = Eigen::Matrix<Scalar, 4, 1>;
26using Vector4f = Eigen::Vector4f;
27using Vector4d = Eigen::Vector4d;
29using Vector3 = Eigen::Matrix<Scalar, 3, 1>;
30using Vector3f = Eigen::Vector3f;
31using Vector3d = Eigen::Vector3d;
33using Vector2 = Eigen::Matrix<Scalar, 2, 1>;
34using Vector2f = Eigen::Vector2f;
35using Vector2d = Eigen::Vector2d;
37using VectorNi = Eigen::VectorXi;
38using Vector2i = Eigen::Vector2i;
39using Vector3i = Eigen::Vector3i;
40using Vector4i = Eigen::Vector4i;
42using VectorNui = Eigen::Matrix<uint, Eigen::Dynamic, 1>;
43using Vector1ui = Eigen::Matrix<uint, 1, 1>;
44using Vector2ui = Eigen::Matrix<uint, 2, 1>;
45using Vector3ui = Eigen::Matrix<uint, 3, 1>;
46using Vector4ui = Eigen::Matrix<uint, 4, 1>;
52using Ray = Eigen::ParametrizedLine<Scalar, 3>;
53using Rayf = Eigen::ParametrizedLine<float, 3>;
54using Rayd = Eigen::ParametrizedLine<double, 3>;
60using MatrixN = Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic>;
61using Matrix4 = Eigen::Matrix<Scalar, 4, 4>;
62using Matrix3 = Eigen::Matrix<Scalar, 3, 3>;
63using Matrix2 = Eigen::Matrix<Scalar, 2, 2>;
65using MatrixNf = Eigen::MatrixXf;
66using Matrix4f = Eigen::Matrix4f;
67using Matrix3f = Eigen::Matrix3f;
68using Matrix2f = Eigen::Matrix2f;
70using MatrixNd = Eigen::MatrixXd;
71using Matrix4d = Eigen::Matrix4d;
72using Matrix3d = Eigen::Matrix3d;
73using Matrix2d = Eigen::Matrix2d;
75using MatrixNui = Eigen::Matrix<uint, Eigen::Dynamic, Eigen::Dynamic>;
79 Eigen::SparseMatrix<Scalar>;
81using Sparse = Eigen::SparseMatrix<Scalar>;
87using Quaternion = Eigen::Quaternion<Scalar>;
88using Quaternionf = Eigen::Quaternionf;
89using Quaterniond = Eigen::Quaterniond;
91using Transform = Eigen::Transform<Scalar, 3, Eigen::Affine>;
92using Transformf = Eigen::Affine3f;
93using Transformd = Eigen::Affine3d;
95using Aabb = Eigen::AlignedBox<Scalar, 3>;
96using Aabbf = Eigen::AlignedBox3f;
97using Aabbd = Eigen::AlignedBox3d;
99using AngleAxis = Eigen::AngleAxis<Scalar>;
100using AngleAxisf = Eigen::AngleAxisf;
101using AngleAxisd = Eigen::AngleAxisd;
103using Translation = Eigen::Translation<Scalar, 3>;
104using Translationf = Eigen::Translation3f;
105using Translationd = Eigen::Translation3d;
hepler function to manage enum as underlying types in VariableSet