#include <pose_graph/pose_graph.h>#include <pose_graph/pose_graph_message.h>#include <graph_slam/constraints/karto_laser_constraints.h>#include <pose_graph/geometry.h>#include <pose_graph/transforms.h>#include <pose_graph/exception.h>#include <boost/format.hpp>#include <stdexcept>#include <string>#include <pose_graph/spa_conversion.h>#include <tf/transform_datatypes.h>#include <vector>#include <ostream>#include "ros/serialization.h"#include "ros/builtin_message_traits.h"#include "ros/message_operations.h"#include "ros/message.h"#include "ros/time.h"#include <gtest/gtest.h>#include <iostream>#include <boost/assign.hpp>#include <boost/foreach.hpp>

Go to the source code of this file.
Typedefs | |
| typedef std::vector< gs::Chain > | ChainVec |
| typedef std::map< pg::NodeId, sm::LaserScan > | NodeScanMap |
Functions | |
| template<class T > | |
| bool | equalVectors (const vector< T > &v1, const vector< T > &v2) |
| int | main (int argc, char **argv) |
| gm::Pose | makePose (const double x, const double y, const double theta=0) |
| template<class T > | |
| ostream & | operator<< (ostream &str, const vector< T > &s) |
| TEST (ScanMatcher, Sequential) | |
| TEST (ScanMatcher, LoopClosure) | |
Variables | |
| const double | PI = 3.14159265 |
Test the scan matcher constraint generation
Definition in file test_scan_match_constraints.cpp.
| typedef std::vector<gs::Chain> ChainVec |
Definition at line 66 of file test_scan_match_constraints.cpp.
| typedef std::map<pg::NodeId, sm::LaserScan> NodeScanMap |
Definition at line 65 of file test_scan_match_constraints.cpp.
| bool equalVectors | ( | const vector< T > & | v1, | |
| const vector< T > & | v2 | |||
| ) | [inline] |
Definition at line 74 of file test_scan_match_constraints.cpp.
| int main | ( | int | argc, | |
| char ** | argv | |||
| ) |
Definition at line 214 of file test_scan_match_constraints.cpp.
| gm::Pose makePose | ( | const double | x, | |
| const double | y, | |||
| const double | theta = 0 | |||
| ) |
Definition at line 68 of file test_scan_match_constraints.cpp.
| ostream& operator<< | ( | ostream & | str, | |
| const vector< T > & | s | |||
| ) | [inline] |
Definition at line 86 of file test_scan_match_constraints.cpp.
| TEST | ( | ScanMatcher | , | |
| Sequential | ||||
| ) |
Definition at line 148 of file test_scan_match_constraints.cpp.
| TEST | ( | ScanMatcher | , | |
| LoopClosure | ||||
| ) |
gs::WithOptimizedPoses opt(&matcher, opt_poses); gs::ChainVec chains = matcher.possibleLoopClosures (g, nodes[15], makePose(0.1, 0.1), scan);
gs::Chain c1; c1 += nodes[9], nodes[8], nodes[7], nodes[6], nodes[5], nodes[4], nodes[3], nodes[2]; EXPECT_EQ(1u, chains.size()); EXPECT_PRED2(equalVectors<pg::NodeId>, c1, chains[0]);
Definition at line 93 of file test_scan_match_constraints.cpp.
| const double PI = 3.14159265 |
Definition at line 63 of file test_scan_match_constraints.cpp.