edge_se3Switchable.h
Go to the documentation of this file.
1 /*
2  * edge_se3Switchable.h
3  *
4  * Created on: 17.10.2011
5  * Author: niko
6  *
7  * Updated on: 14.01.2013
8  * Author: Christian Kerl <christian.kerl@in.tum.de>
9  */
10 
11 #ifndef EDGE_SE3SWITCHABLE_H_
12 #define EDGE_SE3SWITCHABLE_H_
13 
14 #include "g2o/types/slam3d/vertex_se3.h"
15 #include "g2o/core/base_multi_edge.h"
16 #include "g2o/core/hyper_graph_action.h"
17 
18 class EdgeSE3Switchable : public g2o::BaseMultiEdge<6, Eigen::Isometry3d>
19 {
20  public:
22 
23  virtual bool read(std::istream& is);
24  virtual bool write(std::ostream& os) const;
25  void computeError();
26  void linearizeOplus();
27 
28  virtual void setMeasurement(const Eigen::Isometry3d& m){
29  _measurement = m;
30  _inverseMeasurement = m.inverse();
31  }
32 
33  protected:
34  Eigen::Isometry3d _inverseMeasurement;
35 };
36 
37 
38 #ifdef G2O_HAVE_OPENGL
39  class EdgeSE3SwitchableDrawAction: public g2o::DrawAction{
40  public:
41  EdgeSE3SwitchableDrawAction();
42  virtual g2o::HyperGraphElementAction* operator()(g2o::HyperGraph::HyperGraphElement* element,
43  g2o::HyperGraphElementAction::Parameters* params_);
44  };
45 #endif
46 
47 
48 #endif /* EDGE_SE3SWITCHABLE_H_ */
virtual bool write(std::ostream &os) const
virtual void setMeasurement(const Eigen::Isometry3d &m)
virtual bool read(std::istream &is)
Eigen::Isometry3d _inverseMeasurement


rtabmap
Author(s): Mathieu Labbe
autogenerated on Mon Jan 23 2023 03:37:28