The specialization of CNetworkOfPoses for poses of type CPose3D (not a PDF!), also implementing serialization.
Definition at line 298 of file CNetworkOfPoses.h.
#include <mrpt/graphs/CNetworkOfPoses.h>

Public Types | |
| typedef mrpt::aligned_containers < TPairNodeIDs, edge_t > ::multimap_t | edges_map_t |
| The type of the member edges. | |
| typedef edges_map_t::iterator | iterator |
| typedef edges_map_t::const_iterator | const_iterator |
Typedef's | |
| typedef mrpt::graphs::CDirectedGraph < CPose3D, mrpt::graphs::detail::edge_annotations_empty > | BASE |
| The base class "CDirectedGraph<CPOSE,EDGE_ANNOTATIONS>" */. | |
| typedef CNetworkOfPoses < CPose3D, map_traits_stdmap, mrpt::graphs::detail::node_annotations_empty, mrpt::graphs::detail::edge_annotations_empty > | self_t |
| My own type. | |
| typedef CPose3D | constraint_t |
| The type of PDF poses in the contraints (edges) (=CPOSE template argument) | |
| typedef mrpt::graphs::detail::node_annotations_empty | node_annotations_t |
| The extra annotations in nodes, apart from a constraint_no_pdf_t. | |
| typedef mrpt::graphs::detail::edge_annotations_empty | edge_annotations_t |
| The extra annotations in edges, apart from a constraint_t. | |
| typedef map_traits_stdmap | maps_implementation_t |
| The type of map's implementation (=MAPS_IMPLEMENTATION template argument) | |
| typedef CPose3D::type_value | constraint_no_pdf_t |
| The type of edges or their means if they are PDFs (that is, a simple "edge" value) | |
| typedef map_traits_stdmap::template map< TNodeID, CPose3D > | global_poses_pdf_t |
| A map from pose IDs to their global coordinates estimates, with uncertainty. | |
| typedef map_traits_stdmap::template map< TNodeID, global_pose_t > | global_poses_t |
| A map from pose IDs to their global coordinates estimates, without uncertainty (the "most-likely value") | |
Public Member Functions | |
| iterator | begin () |
| const_iterator | begin () const |
| iterator | end () |
| const_iterator | end () const |
| mrpt::utils::CObjectPtr | duplicateGetSmartPtr () const |
| Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer). | |
| CObject * | clone () const |
| Cloning interface for smart pointers. | |
I/O file methods | |
| void | saveToTextFile (const std::string &fileName) const |
| Saves to a text file in the format used by TORO & HoG-man (more on the format here ) For 2D graphs only VERTEX2 & EDGE2 entries will be saved, and VERTEX3 & EDGE3 entries for 3D graphs. | |
| void | loadFromTextFile (const std::string &fileName, bool collapse_dup_edges=true) |
| Loads from a text file in the format used by TORO & HoG-man (more on the format here ) Recognized line entries are: VERTEX2, VERTEX3, EDGE2, EDGE3, EQUIV. | |
Utility methods | |
| void | dijkstra_nodes_estimate () |
| Spanning tree computation of a simple estimation of the global coordinates of each node just from the information in all edges, sorted in a Dijkstra tree based on the current "root" node. | |
| size_t | collapseDuplicatedEdges () |
| Look for duplicated edges (even in opposite directions) between all pairs of nodes and fuse them. | |
| double | getGlobalSquareError (bool ignoreCovariances=true) const |
| Computes the overall square error from all the pose constraints (edges) with respect to the global poses in If ignoreCovariances is false, the squared Mahalanobis distance will be computed instead of the straight square error. | |
| double | getEdgeSquareError (const typename BASE::edges_map_t::const_iterator &itEdge, bool ignoreCovariances=true) const |
| Computes the square error of one pose constraints (edge) with respect to the global poses in If ignoreCovariances is false, the squared Mahalanobis distance will be computed instead of the straight square error. | |
| double | getEdgeSquareError (const TNodeID from_id, const TNodeID to_id, bool ignoreCovariances=true) const |
| Computes the square error of one pose constraints (edge) with respect to the global poses in If ignoreCovariances is false, the squared Mahalanobis distance will be computed instead of the straight square error. | |
| void | clear () |
| Empty all edges, nodes and set root to ID 0. | |
| size_t | nodeCount () const |
| Return number of nodes in the list of global coordinates (may be differente that all nodes appearing in edges) | |
Edges/nodes utility methods | |
| size_t | edgeCount () const |
| The number of edges in the graph. | |
| void | clearEdges () |
| Erase all edges. | |
| void | insertEdge (TNodeID from_nodeID, TNodeID to_nodeID, const edge_t &edge_value) |
| Insert an edge (from -> to) with the given edge value. | |
| void | insertEdgeAtEnd (TNodeID from_nodeID, TNodeID to_nodeID, const edge_t &edge_value) |
| Insert an edge (from -> to) with the given edge value (more efficient version to be called if you know that the end will go at the end of the sorted std::multimap). | |
| bool | edgeExists (TNodeID from_nodeID, TNodeID to_nodeID) const |
| Test is the given directed edge exists. | |
| edge_t & | getEdge (TNodeID from_nodeID, TNodeID to_nodeID) |
| Return a reference to the content of a given edge. | |
| const edge_t & | getEdge (TNodeID from_nodeID, TNodeID to_nodeID) const |
| Return a reference to the content of a given edge. | |
| std::pair< iterator, iterator > | getEdges (TNodeID from_nodeID, TNodeID to_nodeID) |
| Return a pair<first,last> of iterators to the range of edges between two given nodes. | |
| std::pair< const_iterator, const_iterator > | getEdges (TNodeID from_nodeID, TNodeID to_nodeID) const |
| Return a pair<first,last> of const iterators to the range of edges between two given nodes. | |
| void | eraseEdge (TNodeID from_nodeID, TNodeID to_nodeID) |
| Erase all edges between the given nodes (it has no effect if no edge existed) | |
| void | getAllNodes (std::set< TNodeID > &lstNode_IDs) const |
| Return a list of all the node_ID's of the graph, generated from all the nodes that appear in the list of edges. | |
| std::set< TNodeID > | getAllNodes () const |
| Less efficient way to get all nodes that returns a copy of the set object. | |
| size_t | countDifferentNodesInEdges () const |
| Count how many different node IDs appear in the graph edges. | |
| void | getNeighborsOf (const TNodeID nodeID, std::set< TNodeID > &neighborIDs) const |
| Return the list of all neighbors of "nodeID", by creating a list of their node IDs. | |
| void | getAdjacencyMatrix (MAP_NODEID_SET_NODEIDS &outAdjacency) const |
| Return a map from node IDs to all its neighbors (that is, connected nodes, regardless of the edge direction) This is a much more efficient method than calling getNeighborsOf() for each node in the graph. | |
| void | getAdjacencyMatrix (MAP_NODEID_SET_NODEIDS &outAdjacency, const SET_NODEIDS &onlyForTheseNodes) const |
| Just like getAdjacencyMatrix but return only the adjacency for those node_ids in the set onlyForTheseNodes (both endings nodes of an edge must be within the set for it to be returned) | |
Public Attributes | |
| edges_map_t | edges |
| The public member with the directed edges in the graph. | |
Data members | |
| global_poses_t | nodes |
| The nodes (vertices) of the graph, with their estimated "global" (with respect to root) position, without an associated covariance. | |
| TNodeID | root |
| The ID of the node that is the origin of coordinates, used as reference by all coordinates in . | |
| bool | edges_store_inverse_poses |
False (default) if an edge i->j stores the normal relative pose of j as seen from i: True if an edge i->j stores the inverse relateive pose, that is, i as seen from j: . | |
Static Public Attributes | |
| static const mrpt::utils::TRuntimeClassId | classCObject |
Protected Member Functions | |
| virtual void | writeToStream (mrpt::utils::CStream &out, int *getVersion) const =0 |
| Introduces a pure virtual method responsible for writing to a CStream. | |
| virtual void | readFromStream (mrpt::utils::CStream &in, int version)=0 |
| Introduces a pure virtual method responsible for loading from a CStream This can not be used directly be users, instead use "stream >> object;" for reading it from a stream or "stream >> object_ptr;" if the class is unknown apriori. | |
RTTI stuff | |
| static const mrpt::utils::TRuntimeClassId | classCSerializable |
| class | mrpt::utils::CStream |
RTTI stuff | |
| typedef CNetworkOfPoses3DPtr | SmartPtr |
| static mrpt::utils::CLASSINIT | _init_CNetworkOfPoses3D |
| static mrpt::utils::TRuntimeClassId | classCNetworkOfPoses3D |
| static const mrpt::utils::TRuntimeClassId * | classinfo |
| static const mrpt::utils::TRuntimeClassId * | _GetBaseClass () |
| virtual const mrpt::utils::TRuntimeClassId * | GetRuntimeClass () const |
| Returns information about the class of an object in runtime. | |
| virtual mrpt::utils::CObject * | duplicate () const |
| Returns a copy of the object, indepently of its class. | |
| static mrpt::utils::CObject * | CreateObject () |
| static CNetworkOfPoses3DPtr | Create () |
typedef mrpt::graphs::CDirectedGraph<CPose3D ,mrpt::graphs::detail::edge_annotations_empty > mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::BASE [inherited] |
The base class "CDirectedGraph<CPOSE,EDGE_ANNOTATIONS>" */.
Definition at line 111 of file CNetworkOfPoses.h.
typedef edges_map_t::const_iterator mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::const_iterator [inherited] |
Definition at line 77 of file CDirectedGraph.h.
typedef CPose3D ::type_value mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::constraint_no_pdf_t [inherited] |
The type of edges or their means if they are PDFs (that is, a simple "edge" value)
Definition at line 119 of file CNetworkOfPoses.h.
typedef CPose3D mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::constraint_t [inherited] |
The type of PDF poses in the contraints (edges) (=CPOSE template argument)
Definition at line 114 of file CNetworkOfPoses.h.
The extra annotations in edges, apart from a constraint_t.
Definition at line 116 of file CNetworkOfPoses.h.
typedef mrpt::aligned_containers<TPairNodeIDs,edge_t>::multimap_t mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::edges_map_t [inherited] |
The type of the member edges.
Definition at line 75 of file CDirectedGraph.h.
typedef map_traits_stdmap ::template map<TNodeID,CPose3D > mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::global_poses_pdf_t [inherited] |
A map from pose IDs to their global coordinates estimates, with uncertainty.
Definition at line 131 of file CNetworkOfPoses.h.
typedef map_traits_stdmap ::template map<TNodeID,global_pose_t> mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::global_poses_t [inherited] |
A map from pose IDs to their global coordinates estimates, without uncertainty (the "most-likely value")
Definition at line 134 of file CNetworkOfPoses.h.
typedef edges_map_t::iterator mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::iterator [inherited] |
Definition at line 76 of file CDirectedGraph.h.
typedef map_traits_stdmap mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::maps_implementation_t [inherited] |
The type of map's implementation (=MAPS_IMPLEMENTATION template argument)
Definition at line 118 of file CNetworkOfPoses.h.
The extra annotations in nodes, apart from a constraint_no_pdf_t.
Definition at line 115 of file CNetworkOfPoses.h.
My own type.
Definition at line 112 of file CNetworkOfPoses.h.
A typedef for the associated smart pointer
Definition at line 300 of file CNetworkOfPoses.h.
| static const mrpt::utils::TRuntimeClassId* mrpt::graphs::CNetworkOfPoses3D::_GetBaseClass | ( | ) | [static, protected] |
Reimplemented from mrpt::utils::CSerializable.
| const_iterator mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::begin | ( | ) | const [inline, inherited] |
Definition at line 88 of file CDirectedGraph.h.
| iterator mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::begin | ( | ) | [inline, inherited] |
Definition at line 86 of file CDirectedGraph.h.
| void mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::clear | ( | void | ) | [inline, inherited] |
Empty all edges, nodes and set root to ID 0.
Definition at line 234 of file CNetworkOfPoses.h.
| void mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::clearEdges | ( | ) | [inline, inherited] |
Erase all edges.
Definition at line 96 of file CDirectedGraph.h.
| CObject* mrpt::utils::CObject::clone | ( | ) | const [inline, inherited] |
Cloning interface for smart pointers.
Reimplemented in mrpt::opengl::CRenderizable, and mrpt::opengl::CRenderizableDisplayList.
| size_t mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::collapseDuplicatedEdges | ( | ) | [inline, inherited] |
Look for duplicated edges (even in opposite directions) between all pairs of nodes and fuse them.
Upon return, only one edge remains between each pair of nodes with the mean & covariance (or information matrix) corresponding to the Bayesian fusion of all the Gaussians.
Definition at line 201 of file CNetworkOfPoses.h.
| size_t mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::countDifferentNodesInEdges | ( | ) | const [inline, inherited] |
Count how many different node IDs appear in the graph edges.
Definition at line 179 of file CDirectedGraph.h.
| static CNetworkOfPoses3DPtr mrpt::graphs::CNetworkOfPoses3D::Create | ( | ) | [static] |
| static mrpt::utils::CObject* mrpt::graphs::CNetworkOfPoses3D::CreateObject | ( | ) | [static] |
| void mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::dijkstra_nodes_estimate | ( | ) | [inline, inherited] |
Spanning tree computation of a simple estimation of the global coordinates of each node just from the information in all edges, sorted in a Dijkstra tree based on the current "root" node.
Note that "global" coordinates are with respect to the node with the ID specified in root.
Definition at line 195 of file CNetworkOfPoses.h.
| virtual mrpt::utils::CObject* mrpt::graphs::CNetworkOfPoses3D::duplicate | ( | ) | const [virtual] |
Returns a copy of the object, indepently of its class.
Implements mrpt::utils::CObject.
| mrpt::utils::CObjectPtr mrpt::utils::CObject::duplicateGetSmartPtr | ( | ) | const [inline, inherited] |
| size_t mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::edgeCount | ( | ) | const [inline, inherited] |
The number of edges in the graph.
Definition at line 95 of file CDirectedGraph.h.
| bool mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::edgeExists | ( | TNodeID | from_nodeID, |
| TNodeID | to_nodeID | ||
| ) | const [inline, inherited] |
Test is the given directed edge exists.
Definition at line 118 of file CDirectedGraph.h.
| iterator mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::end | ( | ) | [inline, inherited] |
Definition at line 87 of file CDirectedGraph.h.
| const_iterator mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::end | ( | ) | const [inline, inherited] |
Definition at line 89 of file CDirectedGraph.h.
| void mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::eraseEdge | ( | TNodeID | from_nodeID, |
| TNodeID | to_nodeID | ||
| ) | [inline, inherited] |
Erase all edges between the given nodes (it has no effect if no edge existed)
Definition at line 158 of file CDirectedGraph.h.
| void mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::getAdjacencyMatrix | ( | MAP_NODEID_SET_NODEIDS & | outAdjacency | ) | const [inline, inherited] |
Return a map from node IDs to all its neighbors (that is, connected nodes, regardless of the edge direction) This is a much more efficient method than calling getNeighborsOf() for each node in the graph.
Possible values for the template argument MAP_NODEID_SET_NODEIDS are:
Definition at line 211 of file CDirectedGraph.h.
| void mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::getAdjacencyMatrix | ( | MAP_NODEID_SET_NODEIDS & | outAdjacency, |
| const SET_NODEIDS & | onlyForTheseNodes | ||
| ) | const [inline, inherited] |
Just like getAdjacencyMatrix but return only the adjacency for those node_ids in the set onlyForTheseNodes (both endings nodes of an edge must be within the set for it to be returned)
Definition at line 224 of file CDirectedGraph.h.
| void mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::getAllNodes | ( | std::set< TNodeID > & | lstNode_IDs | ) | const [inline, inherited] |
Return a list of all the node_ID's of the graph, generated from all the nodes that appear in the list of edges.
Definition at line 164 of file CDirectedGraph.h.
| std::set<TNodeID> mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::getAllNodes | ( | ) | const [inline, inherited] |
Less efficient way to get all nodes that returns a copy of the set object.
Definition at line 175 of file CDirectedGraph.h.
| edge_t& mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::getEdge | ( | TNodeID | from_nodeID, |
| TNodeID | to_nodeID | ||
| ) | [inline, inherited] |
Return a reference to the content of a given edge.
If several edges exist between the given nodes, the first one is returned.
| std::exception | if the given edge does not exist |
Definition at line 126 of file CDirectedGraph.h.
| const edge_t& mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::getEdge | ( | TNodeID | from_nodeID, |
| TNodeID | to_nodeID | ||
| ) | const [inline, inherited] |
Return a reference to the content of a given edge.
If several edges exist between the given nodes, the first one is returned.
| std::exception | if the given edge does not exist |
Definition at line 139 of file CDirectedGraph.h.
| std::pair<const_iterator,const_iterator> mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::getEdges | ( | TNodeID | from_nodeID, |
| TNodeID | to_nodeID | ||
| ) | const [inline, inherited] |
Return a pair<first,last> of const iterators to the range of edges between two given nodes.
Definition at line 152 of file CDirectedGraph.h.
| std::pair<iterator,iterator> mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::getEdges | ( | TNodeID | from_nodeID, |
| TNodeID | to_nodeID | ||
| ) | [inline, inherited] |
Return a pair<first,last> of iterators to the range of edges between two given nodes.
Definition at line 148 of file CDirectedGraph.h.
| double mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::getEdgeSquareError | ( | const TNodeID | from_id, |
| const TNodeID | to_id, | ||
| bool | ignoreCovariances = true |
||
| ) | const [inline, inherited] |
Computes the square error of one pose constraints (edge) with respect to the global poses in If ignoreCovariances is false, the squared Mahalanobis distance will be computed instead of the straight square error.
| std::exception | On edge not existing or global poses not in nodes |
Definition at line 226 of file CNetworkOfPoses.h.
| double mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::getEdgeSquareError | ( | const typename BASE::edges_map_t::const_iterator & | itEdge, |
| bool | ignoreCovariances = true |
||
| ) | const [inline, inherited] |
Computes the square error of one pose constraints (edge) with respect to the global poses in If ignoreCovariances is false, the squared Mahalanobis distance will be computed instead of the straight square error.
| std::exception | On global poses not in nodes |
Definition at line 220 of file CNetworkOfPoses.h.
| double mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::getGlobalSquareError | ( | bool | ignoreCovariances = true | ) | const [inline, inherited] |
Computes the overall square error from all the pose constraints (edges) with respect to the global poses in If ignoreCovariances is false, the squared Mahalanobis distance will be computed instead of the straight square error.
| std::exception | On global poses not in nodes |
Definition at line 208 of file CNetworkOfPoses.h.
| void mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::getNeighborsOf | ( | const TNodeID | nodeID, |
| std::set< TNodeID > & | neighborIDs | ||
| ) | const [inline, inherited] |
Return the list of all neighbors of "nodeID", by creating a list of their node IDs.
Definition at line 191 of file CDirectedGraph.h.
| virtual const mrpt::utils::TRuntimeClassId* mrpt::graphs::CNetworkOfPoses3D::GetRuntimeClass | ( | ) | const [virtual] |
Returns information about the class of an object in runtime.
Reimplemented from mrpt::utils::CSerializable.
| void mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::insertEdge | ( | TNodeID | from_nodeID, |
| TNodeID | to_nodeID, | ||
| const edge_t & | edge_value | ||
| ) | [inline, inherited] |
Insert an edge (from -> to) with the given edge value.
Definition at line 100 of file CDirectedGraph.h.
| void mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::insertEdgeAtEnd | ( | TNodeID | from_nodeID, |
| TNodeID | to_nodeID, | ||
| const edge_t & | edge_value | ||
| ) | [inline, inherited] |
Insert an edge (from -> to) with the given edge value (more efficient version to be called if you know that the end will go at the end of the sorted std::multimap).
Definition at line 109 of file CDirectedGraph.h.
| void mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::loadFromTextFile | ( | const std::string & | fileName, |
| bool | collapse_dup_edges = true |
||
| ) | [inline, inherited] |
Loads from a text file in the format used by TORO & HoG-man (more on the format here ) Recognized line entries are: VERTEX2, VERTEX3, EDGE2, EDGE3, EQUIV.
If an unknown entry is found, a warning is dumped to std::cerr (only once for each unknown keyword). An exception will be raised if trying to load a 3D graph into a 2D class (in the opposite case, missing 3D data will default to zero).
| fileName | The file to load. |
| collapse_dup_edges | If true, collapseDuplicatedEdges will be called automatically after loading (note that this operation may take significant time for very large graphs). |
| On | any error, as a malformed line or loading a 3D graph in a 2D graph. |
Definition at line 180 of file CNetworkOfPoses.h.
| size_t mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::nodeCount | ( | ) | const [inline, inherited] |
Return number of nodes in the list of global coordinates (may be differente that all nodes appearing in edges)
Definition at line 244 of file CNetworkOfPoses.h.
| virtual void mrpt::utils::CSerializable::readFromStream | ( | mrpt::utils::CStream & | in, |
| int | version | ||
| ) | [protected, pure virtual, inherited] |
Introduces a pure virtual method responsible for loading from a CStream This can not be used directly be users, instead use "stream >> object;" for reading it from a stream or "stream >> object_ptr;" if the class is unknown apriori.
| in | The input binary stream where the object data must read from. |
| version | The version of the object stored in the stream: use this version number in your code to know how to read the incoming data. |
| std::exception | On any error, see CStream::ReadBuffer |
Implemented in mrpt::math::CMatrix, and mrpt::math::CMatrixD.
| void mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::saveToTextFile | ( | const std::string & | fileName | ) | const [inline, inherited] |
Saves to a text file in the format used by TORO & HoG-man (more on the format here ) For 2D graphs only VERTEX2 & EDGE2 entries will be saved, and VERTEX3 & EDGE3 entries for 3D graphs.
Note that EQUIV entries will not be saved, but instead several EDGEs will be stored between the same node IDs.
| On | any error |
Definition at line 167 of file CNetworkOfPoses.h.
| virtual void mrpt::utils::CSerializable::writeToStream | ( | mrpt::utils::CStream & | out, |
| int * | getVersion | ||
| ) | const [protected, pure virtual, inherited] |
Introduces a pure virtual method responsible for writing to a CStream.
This can not be used directly be users, instead use "stream << object;" for writing it to a stream.
| out | The output binary stream where object must be dumped. |
| getVersion | If NULL, the object must be dumped. If not, only the version of the object dump must be returned in this pointer. This enables the versioning of objects dumping and backward compatibility with previously stored data. |
| std::exception | On any error, see CStream::WriteBuffer |
Implemented in mrpt::math::CMatrix, and mrpt::math::CMatrixD.
friend class mrpt::utils::CStream [friend, inherited] |
Reimplemented in mrpt::poses::CPoint2DPDF, mrpt::poses::CPointPDF, mrpt::poses::CPose3DPDF, mrpt::poses::CPose3DQuatPDF, mrpt::poses::CPosePDF, mrpt::detectors::CDetectableObject, mrpt::slam::CPointsMap, mrpt::slam::CRandomFieldGridMap2D, mrpt::slam::CAction, mrpt::slam::CMetricMap, mrpt::slam::CObservation, mrpt::opengl::CRenderizable, mrpt::opengl::CRenderizableDisplayList, mrpt::opengl::CTexturedObject, and mrpt::reactivenav::CHolonomicLogFileRecord.
Definition at line 56 of file CSerializable.h.
mrpt::utils::CLASSINIT mrpt::graphs::CNetworkOfPoses3D::_init_CNetworkOfPoses3D [static, protected] |
Definition at line 300 of file CNetworkOfPoses.h.
Definition at line 300 of file CNetworkOfPoses.h.
const mrpt::utils::TRuntimeClassId mrpt::utils::CObject::classCObject [static, inherited] |
const mrpt::utils::TRuntimeClassId mrpt::utils::CSerializable::classCSerializable [static, inherited] |
Definition at line 56 of file CSerializable.h.
Definition at line 300 of file CNetworkOfPoses.h.
edges_map_t mrpt::graphs::CDirectedGraph< CPose3D , mrpt::graphs::detail::edge_annotations_empty >::edges [inherited] |
The public member with the directed edges in the graph.
Definition at line 80 of file CDirectedGraph.h.
bool mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::edges_store_inverse_poses [inherited] |
False (default) if an edge i->j stores the normal relative pose of j as seen from i:
True if an edge i->j stores the inverse relateive pose, that is, i as seen from j:
.
Definition at line 153 of file CNetworkOfPoses.h.
global_poses_t mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::nodes [inherited] |
The nodes (vertices) of the graph, with their estimated "global" (with respect to root) position, without an associated covariance.
Definition at line 145 of file CNetworkOfPoses.h.
TNodeID mrpt::graphs::CNetworkOfPoses< CPose3D , map_traits_stdmap , mrpt::graphs::detail::node_annotations_empty , mrpt::graphs::detail::edge_annotations_empty >::root [inherited] |
The ID of the node that is the origin of coordinates, used as reference by all coordinates in .
By default, root is the ID "0".
Definition at line 148 of file CNetworkOfPoses.h.
| Page generated by Doxygen 1.7.4 for MRPT 0.9.5 SVN:2717 at Sun Oct 16 16:08:03 PDT 2011 | Hosted on: |