Jafar
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Static Public Attributes | Private Attributes
jafar::p3d::P3d Class Reference

the class P3D is the main class of the module. More...


Detailed Description

the class P3D is the main class of the module.

It permits to call the different algorithm of calife-p3d. Other class are useful but don't need to be used in classic use.

Definition at line 295 of file P3d.hpp.

#include <P3d.hpp>

List of all members.

Public Member Functions

 P3d (jafar::p3d::P3D_algo p3d_algo)
 < algorithm used by P3d::plan
 ~P3d ()
 The destructor.
jafar::p3d::P3DRobotConfigplaceRobot (double x, double y, double theta)
 the method placeRobot compute the configuration of the robot in some place (represented by 2D coords).
int plan (jafar::geom::T3D &m2o, jafar::geom::T3D &g2o)
 the method plan compute a decision from p3d to reach the goal from some depart position.
bool check_trajectory (jafar::geom::T3D &m2o, double alpha)
 the method check_trajectory compute if the trajectory is feasable or not.
int aco (jafar::geom::T3D &mainToOrigin, double alpha, double v, double left_alpha, double right_alpha)
 This method calls the ACO behaviour, aka try to limit speed considering the env.
int evo (jafar::geom::T3D &mainToOrigin, double alpha, double v)
 This method calls the EVO behaviour, aka try to avoid obstacle.
jafar::p3d::P3D_MAPmap ()
const jafar::p3d::P3D_MAPmap () const
jafar::p3d::P3DPlannerplanner ()
const jafar::p3d::P3DPlannerplanner () const
jafar::p3d::P3DPlanSolutionsolution ()
const jafar::p3d::P3DPlanSolutionsolution () const

Static Public Attributes

static std::string conffile
 the configuration file used to configure the p3d algorithm

Private Attributes

jafar::p3d::P3DPlanner _planner
 the internal planner
jafar::p3d::P3D_MAP _map
 the internal map
jafar::p3d::P3DPlanSolution _sol
 the internal solution
jafar::p3d::P3D_algo _algo

Constructor & Destructor Documentation

jafar::p3d::P3d::P3d ( jafar::p3d::P3D_algo  p3d_algo)

< algorithm used by P3d::plan

The constructor. It constructs the different object using informations stored in a configuration file. The configuration file is pointer in conffile. Configuration example file can be found in doc subdirectory


Member Function Documentation

int jafar::p3d::P3d::aco ( jafar::geom::T3D mainToOrigin,
double  alpha,
double  v,
double  left_alpha,
double  right_alpha 
)

This method calls the ACO behaviour, aka try to limit speed considering the env.

Parameters:
mainToOriginrepresents the transformation between the global frame and the robot frame. alpha represents the desired alpha v represents the desired speed
left_alpharepresents the left limit in the tree discovery
right_alpharepresets the right limit in the tree discovery
Returns:
-1 in case of error
0 in case of no action to take (aka the trajectory directed by alpha at speed v is OK)
1 in case of action take (the solution is given in the P3DPlanSolution)
bool jafar::p3d::P3d::check_trajectory ( jafar::geom::T3D m2o,
double  alpha 
)

the method check_trajectory compute if the trajectory is feasable or not.

Parameters:
m2orepresents the transformation between the global frame and the robot frame.
alpharepresents the angle of the wheel for the trajectory we want to compute
Returns:
the traversability of the trajectory.
int jafar::p3d::P3d::evo ( jafar::geom::T3D mainToOrigin,
double  alpha,
double  v 
)

This method calls the EVO behaviour, aka try to avoid obstacle.

Considering an alpha and v, we try to give a trajectory the nearest possible of alpha.

mainToOrigin represents the transformation between the global frame and the robot frame. alpha represents the desired alpha v represents the desired speed

Returns:
-1 in case of error
0 in case of no action to take (aka the trajectory directed by alpha at speed v is OK)
1 in case of action take (the solution is given in the P3DPlanSolution)
Returns:
a ref to the internal map

Definition at line 406 of file P3d.hpp.

References _map.

const jafar::p3d::P3D_MAP& jafar::p3d::P3d::map ( ) const [inline]
Returns:
a constant ref to the internal map

Definition at line 414 of file P3d.hpp.

References _map.

jafar::p3d::P3DRobotConfig* jafar::p3d::P3d::placeRobot ( double  x,
double  y,
double  theta 
)

the method placeRobot compute the configuration of the robot in some place (represented by 2D coords).

Parameters:
xrepresents the x coordonate of the robot in the 2D global frame
yrepresents the y coordonate of the robot in the 2D global frame theta represents the angle with the absciss of the globale frame.
Returns:
0 in case of failure
a robot configuration otherwise (the configuration may be not acceptable).

the method plan compute a decision from p3d to reach the goal from some depart position.

Parameters:
m2orepresents the transformation between the global frame and the robot frame.
g2orepresents the transformation between the global frame and the goal frame (for the goal frame, in fact, we are only interested in the position of the center of the frame)

XXX Confirm return value

Returns:
sol is modified
a value < 0 in case of failure
0 in case of success.

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Wed Oct 15 2014 00:37:43 for Jafar by doxygen 1.7.6.1
LAAS-CNRS