g2o
Toggle main menu visibility
Loading...
Searching...
No Matches
g2o
types
slam3d
types_slam3d.cpp
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
#include "
types_slam3d.h
"
28
29
#include <iostream>
30
31
#include "
g2o/core/factory.h
"
32
#include "
g2o/stuff/macros.h
"
33
34
namespace
g2o
{
35
36
G2O_REGISTER_TYPE_GROUP
(slam3d);
37
38
// clang-format off
39
// otherwise it will result in non-working "VERTEX_SE3 : QUAT"
40
G2O_REGISTER_TYPE
(VERTEX_SE3:QUAT,
VertexSE3
);
41
G2O_REGISTER_TYPE
(EDGE_SE3:QUAT,
EdgeSE3
);
42
// clang-format on
43
G2O_REGISTER_TYPE
(VERTEX_TRACKXYZ,
VertexPointXYZ
);
44
45
G2O_REGISTER_TYPE
(PARAMS_SE3OFFSET,
ParameterSE3Offset
);
46
G2O_REGISTER_TYPE
(EDGE_SE3_TRACKXYZ,
EdgeSE3PointXYZ
);
47
G2O_REGISTER_TYPE
(EDGE_SE3_PRIOR,
EdgeSE3Prior
);
48
G2O_REGISTER_TYPE
(EDGE_SE3_XYZ_PRIOR,
EdgeSE3XYZPrior
);
49
G2O_REGISTER_TYPE
(CACHE_SE3_OFFSET,
CacheSE3Offset
);
50
G2O_REGISTER_TYPE
(EDGE_SE3_OFFSET,
EdgeSE3Offset
);
51
52
G2O_REGISTER_TYPE
(PARAMS_CAMERACALIB,
ParameterCamera
);
53
G2O_REGISTER_TYPE
(PARAMS_STEREOCAMERACALIB,
ParameterStereoCamera
);
54
G2O_REGISTER_TYPE
(CACHE_CAMERA,
CacheCamera
);
55
G2O_REGISTER_TYPE
(EDGE_PROJECT_DISPARITY,
EdgeSE3PointXYZDisparity
);
56
G2O_REGISTER_TYPE
(EDGE_PROJECT_DEPTH,
EdgeSE3PointXYZDepth
);
57
58
G2O_REGISTER_TYPE
(EDGE_POINTXYZ,
EdgePointXYZ
);
59
G2O_REGISTER_TYPE
(EDGE_POINTXYZ_PRIOR,
EdgeXYZPrior
);
60
61
G2O_REGISTER_TYPE
(EDGE_SE3_LOTSOF_XYZ,
EdgeSE3LotsOfXYZ
)
62
63
/*********** ACTIONS ************/
64
G2O_REGISTER_ACTION
(
VertexSE3WriteGnuplotAction
);
65
G2O_REGISTER_ACTION
(
VertexPointXYZWriteGnuplotAction
);
66
G2O_REGISTER_ACTION
(
EdgeSE3WriteGnuplotAction
);
67
68
#ifdef G2O_HAVE_OPENGL
69
G2O_REGISTER_ACTION
(VertexPointXYZDrawAction);
70
G2O_REGISTER_ACTION
(VertexSE3DrawAction);
71
G2O_REGISTER_ACTION
(EdgeSE3DrawAction);
72
G2O_REGISTER_ACTION
(EdgeSE3PointXYZDrawAction);
73
G2O_REGISTER_ACTION
(EdgeProjectDisparityDrawAction);
74
G2O_REGISTER_ACTION
(CacheCameraDrawAction);
75
G2O_REGISTER_ACTION
(CacheSE3OffsetDrawAction);
76
#endif
77
78
}
// namespace g2o
g2o::CacheCamera
Definition
parameter_camera.h:58
g2o::CacheSE3Offset
caching the offset related to a vertex
Definition
parameter_se3_offset.h:67
g2o::EdgePointXYZ
Definition
edge_pointxyz.h:38
g2o::EdgeSE3LotsOfXYZ
Definition
edge_se3_lotsofxyz.h:39
g2o::EdgeSE3Offset
Offset edge.
Definition
edge_se3_offset.h:41
g2o::EdgeSE3PointXYZDepth
Definition
edge_se3_pointxyz_depth.h:43
g2o::EdgeSE3PointXYZDisparity
edge from a track to a depth camera node using a disparity measurement
Definition
edge_se3_pointxyz_disparity.h:46
g2o::EdgeSE3PointXYZ
g2o edge from a track to a point node
Definition
edge_se3_pointxyz.h:43
g2o::EdgeSE3Prior
prior for an SE3 element
Definition
edge_se3_prior.h:43
g2o::EdgeSE3WriteGnuplotAction
Output the pose-pose constraint to Gnuplot data file.
Definition
edge_se3.h:93
g2o::EdgeSE3XYZPrior
Prior for a 3D pose with constraints only in xyz direction.
Definition
edge_se3_xyzprior.h:40
g2o::EdgeSE3
Edge between two 3D pose vertices.
Definition
edge_se3.h:44
g2o::EdgeXYZPrior
prior for an XYZ vertex (VertexPointXYZ)
Definition
edge_xyz_prior.h:43
g2o::ParameterCamera
parameters for a camera
Definition
parameter_camera.h:38
g2o::ParameterSE3Offset
offset for an SE3
Definition
parameter_se3_offset.h:39
g2o::ParameterStereoCamera
parameters for a camera
Definition
parameter_stereo_camera.h:38
g2o::VertexPointXYZWriteGnuplotAction
Definition
vertex_pointxyz.h:81
g2o::VertexPointXYZ
Vertex for a tracked point in space.
Definition
vertex_pointxyz.h:38
g2o::VertexSE3WriteGnuplotAction
write the vertex to some Gnuplot data file
Definition
vertex_se3.h:127
g2o::VertexSE3
3D pose Vertex, represented as an Isometry3
Definition
vertex_se3.h:50
factory.h
G2O_REGISTER_TYPE
#define G2O_REGISTER_TYPE(name, classname)
Definition
factory.h:148
G2O_REGISTER_TYPE_GROUP
#define G2O_REGISTER_TYPE_GROUP(typeGroupName)
Definition
factory.h:156
G2O_REGISTER_ACTION
#define G2O_REGISTER_ACTION(classname)
Definition
hyper_graph_action.h:241
macros.h
g2o
Definition
dl_wrapper.cpp:55
g2o::G2O_REGISTER_ACTION
G2O_REGISTER_ACTION(VertexSE2WriteGnuplotAction)
types_slam3d.h
Generated on
for g2o by
1.17.0