Classes | Public Types | Public Member Functions | Public Attributes | List of all members
AISNavigation::TreePoseGraph3 Struct Reference

The class (struct) that contains 2D graph related functions such as loading, saving, merging, etc. More...

#include <posegraph3.hh>

Inheritance diagram for AISNavigation::TreePoseGraph3:
Inheritance graph
[legend]

Classes

struct  ParameterPropagator
 A class (struct) to compute the parameterization of the vertex v. More...
 
struct  TransformationPropagator
 A class (struct) to compute the parameterization of the vertex v. More...
 

Public Types

typedef Ops::CovarianceType CovarianceMatrix
 
typedef Ops::InformationType InformationMatrix
 
typedef Operations3D< double > Ops
 
typedef Ops::PoseType Pose
 
typedef Ops::RotationType Rotation
 
typedef Ops::TransformationType Transformation
 
typedef Ops::TranslationType Translation
 
- Public Types inherited from AISNavigation::TreePoseGraph< Operations3D< double > >
typedef Operations3D< double > ::BaseType BaseType
 
typedef Operations3D< double > ::CovarianceType Covariance
 
typedef EVComparator< Edge *>::CompareMode EdgeCompareMode
 
typedef std::list< Edge * > EdgeList
 
typedef std::map< Edge *, Edge * > EdgeMap
 
typedef std::multiset< Edge *, EVComparator< Edge *> > EdgeSet
 
typedef Operations3D< double > ::InformationType Information
 
typedef Operations3D< double > ::ParametersType Parameters
 
typedef Operations3D< double > ::PoseType Pose
 
typedef Operations3D< double > ::RotationType Rotation
 
typedef Operations3D< double > ::TransformationType Transformation
 
typedef Operations3D< double > ::TranslationType Translation
 
typedef std::map< int, Vertex * > VertexMap
 
typedef std::set< Vertex * > VertexSet
 

Public Member Functions

virtual void collapseEdge (Edge *e)
 
virtual void initializeFromParentEdge (Vertex *v)
 
void initializeOnTree ()
 
bool load (const char *filename, bool overrideCovariances=false, bool twoDimensions=false)
 
bool loadEquivalences (const char *filename)
 
void printDepth (std::ostream &os)
 
void printEdgesStat (std::ostream &os)
 
void printWidth (std::ostream &os)
 
void recomputeAllTransformations ()
 
virtual void revertEdgeInfo (Edge *e)
 
bool save (const char *filename)
 
bool saveGnuplot (const char *filename)
 
- Public Member Functions inherited from AISNavigation::TreePoseGraph< Operations3D< double > >
Edge * addEdge (Vertex *v1, Vertex *v2, const Transformation &t, const Information &i)
 
Edge * addIncrementalEdge (int id1, int id2, const Transformation &t, const Information &i)
 
Vertex * addVertex (int id, const Pose &pose)
 
EdgeSetaffectedEdges (Vertex *v)
 
EdgeSetaffectedEdges (VertexSet &vl)
 
bool buildMST (int id)
 
bool buildSimpleTree ()
 
void clear ()
 
void compressIndices ()
 
Edge * edge (int id1, int id2)
 
const Edge * edge (int id1, int id2) const
 
int maxIndex ()
 
int maxPathLength ()
 
Edge * removeEdge (Edge *eq)
 
Vertex * removeVertex (int id)
 
void revertEdge (Edge *e)
 
bool sanityCheck ()
 
EdgeSetsortEdges ()
 
int totalPathLength ()
 
void treeBreadthVisit (Action &act)
 
void treeDepthVisit (Action &act, Vertex *v)
 
 TreePoseGraph ()
 
Vertex * vertex (int id)
 
const Vertex * vertex (int id) const
 
virtual ~TreePoseGraph ()
 

Public Attributes

int verboseLevel
 
- Public Attributes inherited from AISNavigation::TreePoseGraph< Operations3D< double > >
EdgeMap edges
 
Vertex * root
 
EdgeSetsortedEdges
 
VertexMap vertices
 

Additional Inherited Members

- Protected Member Functions inherited from AISNavigation::TreePoseGraph< Operations3D< double > >
void fillEdgeInfo (Edge *e)
 
void fillEdgesInfo ()
 
- Protected Attributes inherited from AISNavigation::TreePoseGraph< Operations3D< double > >
EdgeCompareMode edgeCompareMode
 

Detailed Description

The class (struct) that contains 2D graph related functions such as loading, saving, merging, etc.

Definition at line 61 of file posegraph3.hh.

Member Typedef Documentation

◆ CovarianceMatrix

Definition at line 68 of file posegraph3.hh.

◆ InformationMatrix

Definition at line 69 of file posegraph3.hh.

◆ Ops

Definition at line 62 of file posegraph3.hh.

◆ Pose

Definition at line 64 of file posegraph3.hh.

◆ Rotation

Definition at line 65 of file posegraph3.hh.

◆ Transformation

Definition at line 67 of file posegraph3.hh.

◆ Translation

Definition at line 66 of file posegraph3.hh.

Member Function Documentation

◆ collapseEdge()

void AISNavigation::TreePoseGraph3::collapseEdge ( Edge *  e)
virtual

Function to compress a graph. Needed if, for example, equivalence constraints are used to build a graoh structure with indices without gaps.

Definition at line 305 of file posegraph3.cpp.

◆ initializeFromParentEdge()

void AISNavigation::TreePoseGraph3::initializeFromParentEdge ( Vertex *  v)
virtual

Revert edge info. This function needs to be implemented by a subclass

Implements AISNavigation::TreePoseGraph< Operations3D< double > >.

Definition at line 297 of file posegraph3.cpp.

◆ initializeOnTree()

void AISNavigation::TreePoseGraph3::initializeOnTree ( )

Initializes the parameters based on the topology of the tree and the actual transformation

Definition at line 275 of file posegraph3.cpp.

◆ load()

bool AISNavigation::TreePoseGraph3::load ( const char *  filename,
bool  overrideCovariances = false,
bool  twoDimensions = false 
)

Load a graph from a file ignoring the equivalence constraints

Parameters
filenamethe graph file
overrideCovariancesignore the covariances from the file, and use identities instead

Definition at line 57 of file posegraph3.cpp.

◆ loadEquivalences()

bool AISNavigation::TreePoseGraph3::loadEquivalences ( const char *  filename)

Load only the equivalence constraints from a graph file (call load before)

Definition at line 151 of file posegraph3.cpp.

◆ printDepth()

void AISNavigation::TreePoseGraph3::printDepth ( std::ostream &  os)

Debug function

Definition at line 248 of file posegraph3.cpp.

◆ printEdgesStat()

void AISNavigation::TreePoseGraph3::printEdgesStat ( std::ostream &  os)

Debug function

Definition at line 281 of file posegraph3.cpp.

◆ printWidth()

void AISNavigation::TreePoseGraph3::printWidth ( std::ostream &  os)

Debug function

Definition at line 253 of file posegraph3.cpp.

◆ recomputeAllTransformations()

void AISNavigation::TreePoseGraph3::recomputeAllTransformations ( )

Recomputes all the transformations based on the parameters and the tree

Definition at line 399 of file posegraph3.cpp.

◆ revertEdgeInfo()

void AISNavigation::TreePoseGraph3::revertEdgeInfo ( Edge *  e)
virtual

Turn around the edge (<i,j> => <j,i>)

Implements AISNavigation::TreePoseGraph< Operations3D< double > >.

Definition at line 291 of file posegraph3.cpp.

◆ save()

bool AISNavigation::TreePoseGraph3::save ( const char *  filename)

Saves the graph in the graph-format

Definition at line 207 of file posegraph3.cpp.

◆ saveGnuplot()

bool AISNavigation::TreePoseGraph3::saveGnuplot ( const char *  filename)

Saved the graph for visualizing it using gnuplot

Definition at line 184 of file posegraph3.cpp.

Member Data Documentation

◆ verboseLevel

int AISNavigation::TreePoseGraph3::verboseLevel

Specifies the verbose level for debugging

Definition at line 113 of file posegraph3.hh.


The documentation for this struct was generated from the following files:


rtabmap
Author(s): Mathieu Labbe
autogenerated on Mon Jan 23 2023 03:38:59