NDEVR
API Documentation
eigen_types.h
Go to the documentation of this file.
1// g2o - General Graph Optimization
2// Copyright (C) 2011 R. Kuemmerle, G. Grisetti, W. Burgard
3// All rights reserved.
4//
5// Redistribution and use in source and binary forms, with or without
6// modification, are permitted provided that the following conditions are
7// met:
8//
9// * Redistributions of source code must retain the above copyright notice,
10// this list of conditions and the following disclaimer.
11// * Redistributions in binary form must reproduce the above copyright
12// notice, this list of conditions and the following disclaimer in the
13// documentation and/or other materials provided with the distribution.
14//
15// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
16// IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
17// TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
18// PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
19// HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
21// TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
22// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
24// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
27#ifndef G2O_EIGEN_TYPES_H
28#define G2O_EIGEN_TYPES_H
29
30#include <Eigen/Core>
31#include <Eigen/Geometry>
32
35namespace NDEVR {
36
37 typedef Eigen::Matrix<int,2,1,Eigen::ColMajor> Vector2I;
38 typedef Eigen::Matrix<int,3,1,Eigen::ColMajor> Vector3I;
39 typedef Eigen::Matrix<int,4,1,Eigen::ColMajor> Vector4I;
40 typedef Eigen::Matrix<int,Eigen::Dynamic,1,Eigen::ColMajor> VectorXI;
41
42 typedef Eigen::Matrix<float,2,1,Eigen::ColMajor> Vector2F;
43 typedef Eigen::Matrix<float,3,1,Eigen::ColMajor> Vector3F;
44 typedef Eigen::Matrix<float,4,1,Eigen::ColMajor> Vector4F;
45 typedef Eigen::Matrix<float,Eigen::Dynamic,1,Eigen::ColMajor> VectorXF;
46
47 typedef Eigen::Matrix<double,2,1,Eigen::ColMajor> Vector2D;
48 typedef Eigen::Matrix<double,3,1,Eigen::ColMajor> Vector3D;
49 typedef Eigen::Matrix<double,4,1,Eigen::ColMajor> Vector4D;
50 typedef Eigen::Matrix<double,Eigen::Dynamic,1,Eigen::ColMajor> VectorXD;
51
52 typedef Eigen::Matrix<int,2,2,Eigen::ColMajor> Matrix2I;
53 typedef Eigen::Matrix<int,3,3,Eigen::ColMajor> Matrix3I;
54 typedef Eigen::Matrix<int,4,4,Eigen::ColMajor> Matrix4I;
55 typedef Eigen::Matrix<int,Eigen::Dynamic,Eigen::Dynamic,Eigen::ColMajor> MatrixXI;
56
57 typedef Eigen::Matrix<float,2,2,Eigen::ColMajor> Matrix2F;
58 typedef Eigen::Matrix<float,3,3,Eigen::ColMajor> Matrix3F;
59 typedef Eigen::Matrix<float,4,4,Eigen::ColMajor> Matrix4F;
60 typedef Eigen::Matrix<float,Eigen::Dynamic,Eigen::Dynamic,Eigen::ColMajor> MatrixXF;
61
62 typedef Eigen::Matrix<double,2,2,Eigen::ColMajor> Matrix2D;
63 typedef Eigen::Matrix<double,3,3,Eigen::ColMajor> Matrix3D;
64 typedef Eigen::Matrix<double,4,4,Eigen::ColMajor> Matrix4D;
65 typedef Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic,Eigen::ColMajor> MatrixXD;
66
67 typedef Eigen::Transform<double,2,Eigen::Isometry,Eigen::ColMajor> Isometry2D;
68 typedef Eigen::Transform<double,3,Eigen::Isometry,Eigen::ColMajor> Isometry3D;
69
70 typedef Eigen::Transform<double,2,Eigen::Affine,Eigen::ColMajor> Affine2D;
71 typedef Eigen::Transform<double,3,Eigen::Affine,Eigen::ColMajor> Affine3D;
72
73} // end namespace NDEVR
74
75#endif
The primary namespace for the NDEVR SDK.
Eigen::Transform< double, 3, Eigen::Isometry, Eigen::ColMajor > Isometry3D
3D isometric (rigid) transform with double precision.
Definition eigen_types.h:68
Eigen::Matrix< int, 3, 3, Eigen::ColMajor > Matrix3I
3x3 integer matrix.
Definition eigen_types.h:53
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > MatrixXD
Dynamic-size double matrix.
Definition eigen_types.h:65
Eigen::Matrix< float, 2, 1, Eigen::ColMajor > Vector2F
2D float column vector.
Definition eigen_types.h:42
Eigen::Transform< double, 2, Eigen::Isometry, Eigen::ColMajor > Isometry2D
2D isometric (rigid) transform with double precision.
Definition eigen_types.h:67
Eigen::Matrix< float, 2, 2, Eigen::ColMajor > Matrix2F
2x2 float matrix.
Definition eigen_types.h:57
Eigen::Matrix< int, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > MatrixXI
Dynamic-size integer matrix.
Definition eigen_types.h:55
Eigen::Transform< double, 3, Eigen::Affine, Eigen::ColMajor > Affine3D
3D affine transform with double precision.
Definition eigen_types.h:71
Eigen::Matrix< float, 4, 1, Eigen::ColMajor > Vector4F
4D float column vector.
Definition eigen_types.h:44
Eigen::Matrix< int, 4, 1, Eigen::ColMajor > Vector4I
4D integer column vector.
Definition eigen_types.h:39
Eigen::Matrix< int, 2, 1, Eigen::ColMajor > Vector2I
2D integer column vector.
Definition eigen_types.h:37
Eigen::Matrix< double, 4, 4, Eigen::ColMajor > Matrix4D
4x4 double matrix.
Definition eigen_types.h:64
Eigen::Matrix< double, 4, 1, Eigen::ColMajor > Vector4D
4D double column vector.
Definition eigen_types.h:49
Eigen::Matrix< float, 3, 1, Eigen::ColMajor > Vector3F
3D float column vector.
Definition eigen_types.h:43
Eigen::Matrix< float, Eigen::Dynamic, 1, Eigen::ColMajor > VectorXF
Dynamic-size float column vector.
Definition eigen_types.h:45
Eigen::Matrix< double, 2, 1, Eigen::ColMajor > Vector2D
2D double column vector.
Definition eigen_types.h:47
Eigen::Matrix< int, 3, 1, Eigen::ColMajor > Vector3I
3D integer column vector.
Definition eigen_types.h:38
Eigen::Matrix< int, 4, 4, Eigen::ColMajor > Matrix4I
4x4 integer matrix.
Definition eigen_types.h:54
Eigen::Matrix< int, Eigen::Dynamic, 1, Eigen::ColMajor > VectorXI
Dynamic-size integer column vector.
Definition eigen_types.h:40
Eigen::Matrix< int, 2, 2, Eigen::ColMajor > Matrix2I
2x2 integer matrix.
Definition eigen_types.h:52
Eigen::Matrix< float, 3, 3, Eigen::ColMajor > Matrix3F
3x3 float matrix.
Definition eigen_types.h:58
Eigen::Transform< double, 2, Eigen::Affine, Eigen::ColMajor > Affine2D
2D affine transform with double precision.
Definition eigen_types.h:70
Eigen::Matrix< double, 3, 1, Eigen::ColMajor > Vector3D
3D double column vector.
Definition eigen_types.h:48
Eigen::Matrix< float, 4, 4, Eigen::ColMajor > Matrix4F
4x4 float matrix.
Definition eigen_types.h:59
Eigen::Matrix< double, 3, 3, Eigen::ColMajor > Matrix3D
3x3 double matrix.
Definition eigen_types.h:63
Eigen::Matrix< float, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > MatrixXF
Dynamic-size float matrix.
Definition eigen_types.h:60
Eigen::Matrix< double, 2, 2, Eigen::ColMajor > Matrix2D
2x2 double matrix.
Definition eigen_types.h:62
Eigen::Matrix< double, Eigen::Dynamic, 1, Eigen::ColMajor > VectorXD
Dynamic-size double column vector.
Definition eigen_types.h:50