#include <mrpt/reactivenav/CParameterizedTrajectoryGenerator.h>
Classes | |
class | CColisionGrid |
An internal class for storing the collision grid. More... | |
class | CListColisionGrids |
The collision grids for different security distance values:. More... | |
struct | TCellForLambdaFunction |
Specifies the min/max values for "k" and "n", respectively. More... | |
struct | TCPoint |
The trajectories in the C-Space:. More... | |
Public Member Functions | |
CParameterizedTrajectoryGenerator (float refDistance, float xResolution, float yResolution, float V_MAX, float W_MAX, float system_TAU, float system_DELAY, vector_float securityDistances) | |
Constructor. | |
virtual std::string | getDescription ()=0 |
Gets a short textual description of the PTG and its parameters. | |
void | initializeCollisionsGrid (float refDistance, float xResolution, float yResolution, vector_float securityDistances) |
Initialized the grid information. | |
virtual | ~CParameterizedTrajectoryGenerator () |
Destructor. | |
void | simulateTrajectories (unsigned short alfaValuesCount, float max_time, float max_dist, unsigned int max_n, float diferencial_t, float min_dist, float *out_max_acc_v=NULL, float *out_max_acc_w=NULL) |
The main method: solves the diferential equation to generate a family of parametrical trajectories. | |
virtual void | lambdaFunction (float x, float y, int &out_k, float &out_d) |
The "lambda" function, see paper for info. | |
void | directionToMotionCommand (unsigned short k, float &out_v, float &out_w) |
Converts an "alfa" value (into the discrete set) into a feasible motion command. | |
size_t | getAlfaValuesCount () |
size_t | getPointsCountInCPath_k (unsigned short k) |
void | getCPointWhen_d_Is (float d, unsigned short k, float &x, float &y, float &phi, float &t, float *v=NULL, float *w=NULL) |
float | GetCPathPoint_x (unsigned short k, int n) |
float | GetCPathPoint_y (unsigned short k, int n) |
float | GetCPathPoint_phi (unsigned short k, int n) |
float | GetCPathPoint_t (unsigned short k, int n) |
float | GetCPathPoint_d (unsigned short k, int n) |
float | GetCPathPoint_v (unsigned short k, int n) |
float | GetCPathPoint_w (unsigned short k, int n) |
void | allocMemForVerticesData (int nVertices) |
void | setVertex_xy (unsigned short k, int n, int m, float x, float y) |
float | getVertex_x (unsigned short k, int n, int m) |
float | getVertex_y (unsigned short k, int n, int m) |
float * | getVertixesArray_x (unsigned short k, int n) |
float * | getVertixesArray_y (unsigned short k, int n) |
unsigned int | getVertixesCount () |
float | getMax_V () |
float | getMax_W () |
float | getMax_V_inTPSpace () |
float | index2alfa (unsigned short k) |
Alfa value for the discrete corresponding value. | |
unsigned short | alfa2index (float alfa) |
Discrete index value for the corresponding alfa value. | |
void | debugDumpInFiles (int nPT) |
Dump PTG trajectories in files in directory "./PTGs/". | |
virtual void | PTG_Generator (float alfa, float t, float x, float y, float phi, float &v, float &w)=0 |
The main method to be implemented in derived classes. | |
virtual bool | PTG_IsIntoDomain (float x, float y)=0 |
To be implemented in derived classes:. | |
Public Attributes | |
CListColisionGrids | collisionGrids |
float | refDistance |
Protected Types | |
typedef std::vector< TCPoint > | TCPointVector |
Protected Member Functions | |
void | FreeMemory () |
Free all the memory buffers:. | |
Protected Attributes | |
float | V_MAX |
float | W_MAX |
float | TAU |
float | DELAY |
float | turningRadiusReference |
CDynamicGrid < TCellForLambdaFunction > | m_lambdaFunctionOptimizer |
This grid will contain indexes data for speeding-up the default, brute-force lambda function. | |
float | maxV_inTPSpace |
bool | flag1 |
bool | flag2 |
unsigned int | alfaValuesCount |
The number of discrete values for ALFA between -PI and +PI. | |
std::vector< TCPointVector > | CPoints |
std::vector< vector_float > | vertexPoints_x |
The shape of the robot along the trajectories:. | |
std::vector< vector_float > | vertexPoints_y |
int | nVertices |
Changes history:
Definition at line 48 of file CParameterizedTrajectoryGenerator.h.
typedef std::vector<TCPoint> mrpt::reactivenav::CParameterizedTrajectoryGenerator::TCPointVector [protected] |
Definition at line 325 of file CParameterizedTrajectoryGenerator.h.
mrpt::reactivenav::CParameterizedTrajectoryGenerator::CParameterizedTrajectoryGenerator | ( | float | refDistance, | |
float | xResolution, | |||
float | yResolution, | |||
float | V_MAX, | |||
float | W_MAX, | |||
float | system_TAU, | |||
float | system_DELAY, | |||
vector_float | securityDistances | |||
) |
Constructor.
virtual mrpt::reactivenav::CParameterizedTrajectoryGenerator::~CParameterizedTrajectoryGenerator | ( | ) | [virtual] |
Destructor.
unsigned short mrpt::reactivenav::CParameterizedTrajectoryGenerator::alfa2index | ( | float | alfa | ) | [inline] |
Discrete index value for the corresponding alfa value.
Definition at line 161 of file CParameterizedTrajectoryGenerator.h.
void mrpt::reactivenav::CParameterizedTrajectoryGenerator::allocMemForVerticesData | ( | int | nVertices | ) |
void mrpt::reactivenav::CParameterizedTrajectoryGenerator::debugDumpInFiles | ( | int | nPT | ) |
Dump PTG trajectories in files in directory "./PTGs/".
void mrpt::reactivenav::CParameterizedTrajectoryGenerator::directionToMotionCommand | ( | unsigned short | k, | |
float & | out_v, | |||
float & | out_w | |||
) |
Converts an "alfa" value (into the discrete set) into a feasible motion command.
void mrpt::reactivenav::CParameterizedTrajectoryGenerator::FreeMemory | ( | ) | [protected] |
Free all the memory buffers:.
size_t mrpt::reactivenav::CParameterizedTrajectoryGenerator::getAlfaValuesCount | ( | ) | [inline] |
Definition at line 97 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::GetCPathPoint_d | ( | unsigned short | k, | |
int | n | |||
) | [inline] |
Definition at line 106 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::GetCPathPoint_phi | ( | unsigned short | k, | |
int | n | |||
) | [inline] |
Definition at line 104 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::GetCPathPoint_t | ( | unsigned short | k, | |
int | n | |||
) | [inline] |
Definition at line 105 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::GetCPathPoint_v | ( | unsigned short | k, | |
int | n | |||
) | [inline] |
Definition at line 107 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::GetCPathPoint_w | ( | unsigned short | k, | |
int | n | |||
) | [inline] |
Definition at line 108 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::GetCPathPoint_x | ( | unsigned short | k, | |
int | n | |||
) | [inline] |
Definition at line 102 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::GetCPathPoint_y | ( | unsigned short | k, | |
int | n | |||
) | [inline] |
Definition at line 103 of file CParameterizedTrajectoryGenerator.h.
void mrpt::reactivenav::CParameterizedTrajectoryGenerator::getCPointWhen_d_Is | ( | float | d, | |
unsigned short | k, | |||
float & | x, | |||
float & | y, | |||
float & | phi, | |||
float & | t, | |||
float * | v = NULL , |
|||
float * | w = NULL | |||
) |
virtual std::string mrpt::reactivenav::CParameterizedTrajectoryGenerator::getDescription | ( | ) | [pure virtual] |
Gets a short textual description of the PTG and its parameters.
Implemented in mrpt::reactivenav::CPTG1, mrpt::reactivenav::CPTG2, mrpt::reactivenav::CPTG3, mrpt::reactivenav::CPTG4, mrpt::reactivenav::CPTG5, mrpt::reactivenav::CPTG6, and mrpt::reactivenav::CPTG7.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::getMax_V | ( | ) | [inline] |
Definition at line 146 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::getMax_V_inTPSpace | ( | ) | [inline] |
Definition at line 148 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::getMax_W | ( | ) | [inline] |
Definition at line 147 of file CParameterizedTrajectoryGenerator.h.
size_t mrpt::reactivenav::CParameterizedTrajectoryGenerator::getPointsCountInCPath_k | ( | unsigned short | k | ) | [inline] |
Definition at line 98 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::getVertex_x | ( | unsigned short | k, | |
int | n, | |||
int | m | |||
) | [inline] |
Definition at line 118 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::getVertex_y | ( | unsigned short | k, | |
int | n, | |||
int | m | |||
) | [inline] |
Definition at line 125 of file CParameterizedTrajectoryGenerator.h.
float* mrpt::reactivenav::CParameterizedTrajectoryGenerator::getVertixesArray_x | ( | unsigned short | k, | |
int | n | |||
) | [inline] |
Definition at line 132 of file CParameterizedTrajectoryGenerator.h.
float* mrpt::reactivenav::CParameterizedTrajectoryGenerator::getVertixesArray_y | ( | unsigned short | k, | |
int | n | |||
) | [inline] |
Definition at line 138 of file CParameterizedTrajectoryGenerator.h.
unsigned int mrpt::reactivenav::CParameterizedTrajectoryGenerator::getVertixesCount | ( | ) | [inline] |
Definition at line 144 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::index2alfa | ( | unsigned short | k | ) | [inline] |
Alfa value for the discrete corresponding value.
Definition at line 153 of file CParameterizedTrajectoryGenerator.h.
References M_PI.
void mrpt::reactivenav::CParameterizedTrajectoryGenerator::initializeCollisionsGrid | ( | float | refDistance, | |
float | xResolution, | |||
float | yResolution, | |||
vector_float | securityDistances | |||
) |
Initialized the grid information.
The "securityDistances" vector length will set the number of collision grids.
virtual void mrpt::reactivenav::CParameterizedTrajectoryGenerator::lambdaFunction | ( | float | x, | |
float | y, | |||
int & | out_k, | |||
float & | out_d | |||
) | [virtual] |
The "lambda" function, see paper for info.
It takes the (a,d) pair that is closest to a given location.
Reimplemented in mrpt::reactivenav::CPTG1, mrpt::reactivenav::CPTG2, mrpt::reactivenav::CPTG3, mrpt::reactivenav::CPTG4, mrpt::reactivenav::CPTG5, mrpt::reactivenav::CPTG6, and mrpt::reactivenav::CPTG7.
virtual void mrpt::reactivenav::CParameterizedTrajectoryGenerator::PTG_Generator | ( | float | alfa, | |
float | t, | |||
float | x, | |||
float | y, | |||
float | phi, | |||
float & | v, | |||
float & | w | |||
) | [pure virtual] |
The main method to be implemented in derived classes.
Implemented in mrpt::reactivenav::CPTG1, mrpt::reactivenav::CPTG2, mrpt::reactivenav::CPTG3, mrpt::reactivenav::CPTG4, mrpt::reactivenav::CPTG5, mrpt::reactivenav::CPTG6, and mrpt::reactivenav::CPTG7.
virtual bool mrpt::reactivenav::CParameterizedTrajectoryGenerator::PTG_IsIntoDomain | ( | float | x, | |
float | y | |||
) | [pure virtual] |
To be implemented in derived classes:.
Implemented in mrpt::reactivenav::CPTG1, mrpt::reactivenav::CPTG2, mrpt::reactivenav::CPTG3, mrpt::reactivenav::CPTG4, mrpt::reactivenav::CPTG5, mrpt::reactivenav::CPTG6, and mrpt::reactivenav::CPTG7.
void mrpt::reactivenav::CParameterizedTrajectoryGenerator::setVertex_xy | ( | unsigned short | k, | |
int | n, | |||
int | m, | |||
float | x, | |||
float | y | |||
) | [inline] |
Definition at line 112 of file CParameterizedTrajectoryGenerator.h.
void mrpt::reactivenav::CParameterizedTrajectoryGenerator::simulateTrajectories | ( | unsigned short | alfaValuesCount, | |
float | max_time, | |||
float | max_dist, | |||
unsigned int | max_n, | |||
float | diferencial_t, | |||
float | min_dist, | |||
float * | out_max_acc_v = NULL , |
|||
float * | out_max_acc_w = NULL | |||
) |
The main method: solves the diferential equation to generate a family of parametrical trajectories.
unsigned int mrpt::reactivenav::CParameterizedTrajectoryGenerator::alfaValuesCount [protected] |
The number of discrete values for ALFA between -PI and +PI.
Definition at line 300 of file CParameterizedTrajectoryGenerator.h.
Definition at line 257 of file CParameterizedTrajectoryGenerator.h.
std::vector<TCPointVector> mrpt::reactivenav::CParameterizedTrajectoryGenerator::CPoints [protected] |
Definition at line 326 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::DELAY [protected] |
Definition at line 272 of file CParameterizedTrajectoryGenerator.h.
bool mrpt::reactivenav::CParameterizedTrajectoryGenerator::flag1 [protected] |
Definition at line 296 of file CParameterizedTrajectoryGenerator.h.
bool mrpt::reactivenav::CParameterizedTrajectoryGenerator::flag2 [protected] |
Definition at line 296 of file CParameterizedTrajectoryGenerator.h.
CDynamicGrid<TCellForLambdaFunction> mrpt::reactivenav::CParameterizedTrajectoryGenerator::m_lambdaFunctionOptimizer [protected] |
This grid will contain indexes data for speeding-up the default, brute-force lambda function.
Definition at line 291 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::maxV_inTPSpace [protected] |
Definition at line 294 of file CParameterizedTrajectoryGenerator.h.
int mrpt::reactivenav::CParameterizedTrajectoryGenerator::nVertices [protected] |
Definition at line 331 of file CParameterizedTrajectoryGenerator.h.
Definition at line 259 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::TAU [protected] |
Definition at line 272 of file CParameterizedTrajectoryGenerator.h.
Definition at line 274 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::V_MAX [protected] |
Definition at line 271 of file CParameterizedTrajectoryGenerator.h.
std::vector<vector_float> mrpt::reactivenav::CParameterizedTrajectoryGenerator::vertexPoints_x [protected] |
The shape of the robot along the trajectories:.
Definition at line 330 of file CParameterizedTrajectoryGenerator.h.
std::vector<vector_float> mrpt::reactivenav::CParameterizedTrajectoryGenerator::vertexPoints_y [protected] |
Definition at line 330 of file CParameterizedTrajectoryGenerator.h.
float mrpt::reactivenav::CParameterizedTrajectoryGenerator::W_MAX [protected] |
Definition at line 271 of file CParameterizedTrajectoryGenerator.h.
Page generated by Doxygen 1.5.8 for MRPT 0.6.5 SVN: at Thu Feb 26 02:18:33 EST 2009 |