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

Detailed Description

Definition at line 27 of file navigator.hpp.

List of all members.

Public Member Functions

 Navigator ()
 Default constructor.
 Navigator (const std::string &filepath)
 Constructor able to load a static map file.
 Navigator (double *bufferedData, int xsize_, int ysize_, int zsize_, double xMapOrigin_, double yMapOrigin_, double zMapOrigin_, double pixelScale_)
 Constructor with the map as input.
 ~Navigator ()
 Destructor.
bool isUp ()
 Returns true if the navigator objects are up to run.
bool savePath (const std::string &outfile, jafar::lgl::NavPath &savingpath)
 Saving a path into a file.
bool saveData (const std::string &outfile, const std::string &toutfile, const std::string &quadTreeFile)
 Save geodata and quadtree.
bool saveGeodata (const std::string &outfile)
 Saving the geodata only.
bool fastFindPath (const jafar::lgl::NavLocation &locstart, const jafar::lgl::NavLocation &locend, jafar::lgl::NavPath &navpath)
 Find a nominal path the fast way - used when no cooperation needed.
bool findPath (const jafar::lgl::NavLocation &locstart, const jafar::lgl::NavLocation &locend, jafar::lgl::NavPath &navpath)
 Find a nominal path.
bool findPath (const jafar::lgl::NavLocation &locstart, const jafar::lgl::NavLocation &locend, jafar::lgl::NavPath &navpath, double &pathCost)
 Find a nominal path and get its associated cost.
bool findPathOnUtility (const jafar::lgl::NavLocation &locstart, const jafar::lgl::NavLocation &locend, jafar::lgl::NavPath &navpath, double authDist=0.0)
 Find a nominal path.
bool updateMap (double *bufferedData, int xsize_, int ysize_)
 Update map and recreate quadtree and navigation graph accordingly.
bool updateMap (jafar::lgl::GeoData *inputGData)
 Update map and recreate quadtree and navigation graph accordingly from another geodata.
void printInfo ()
 Prints information about everything - map, graph, path tool...
jafar::lgl::GeoDatagetNavMap ()
 Returns navigation geodata.
jafar::lgl::NavGraph::NavGraphContainergetGraph ()
 Return the boost navGraph container.
jafar::lgl::DecompgetDecomposition ()
 Return the quadtree decomposition container.
std::list
< jafar::lgl::NavGraph::frontierPoint
getNavGraphFrontiers ()
 Returns the list of frontier's points between the known and unknown terrains.
bool getIsDrawingNSU ()
 Return if isDrawingNSU is true or not.
bool setMapOrigin (double xMapOrigin_, double yMapOrigin_, double zMapOrigin_, double pixelScale_)
 Setting map origin and resolution.
void setMapSize (int xsize_, int ysize_, int zsize_)
 Set the map size.
void setGoal (const jafar::lgl::NavLocation &A)
 Setting the goal thanks to a graph location.
void setGoal (int x, int y, int z)
 Setting the goal through the position manager frame.
void setGoal (double x, double y, double z)
 Setting the goal through the ENU(utm) frame.
void setStart (const jafar::lgl::NavLocation &A)
 Setting the start thanks to a graph location.
void setStart (int x, int y, int z)
 Setting the start through the position manager frame.
void setStart (double x, double y, double z)
 Setting the start through the ENU(utm) frame.
void setPathCropers (double pce, double pcp)
 Setting max entropy and obstacle proba (safety)
void setMaxWayPts (int maxwpts)
 Set the maximum of way points we want in a path.
void setSigmaFactor (double sig_)
 Set the sigma factor used for decomposition.
void setProbabilityLag (double probaLag_)
 Set the probability lag used for decomposition.
void setPathToolPathMaxDistance (double pmd)
 Changes the subsampling rate of the internal path tool.
void setPathToolSubSampler (double setsbs)
 Changes the subsampling rate of the internal path tool.
void setPathToolInterpolationDist (double)
 Set the distance to respect between interpolated points.
void setPathToolInterpolationIndexStart (int)
 Set the index of the path-point the interpolation must start.
void setPathToolInterpolationIndexStop (int)
 Set the index of the path-point the interpolation must stop.
void setIsDrawingNSU (bool B)
 Set isDrawingNSU parameter.
void setPathMaxStepDistance (double pmsd)
 Set the max distance at which we retain a point in the safe sampling filter.
bool findUtilityStartFromFrontiers (jafar::lgl::NavLocation &autoStart)
 Finds which point of the frontier as the greatest utility.
bool doCalculateNavigationUtility ()
 Update navigation utility using the sensor information gain according to the a priori map.
bool cropPath (double vent, double vproba, jafar::lgl::NavPath &navpath)
 Crop a path using multiple parameters.
bool applyTool (jafar::lgl::NavPath &srcPath, jafar::lgl::NavPath &outPath, PATH_TRANSFORMATION)
 Generic call to apply existing tools.

Public Attributes

SensorModelsensor
 Sensor model of the vehicule navigating.

Private Attributes

int xsize
 Map x size.
int ysize
 Map y size.
int zsize
 Map y size.
double xMapOrigin
 Map X Origin in the ENU utm frame.
double yMapOrigin
 Map Y Origin in the ENU utm frame.
double zMapOrigin
 Map Z Origin in the ENU utm frame.
double pixelScale
 Map pixels scale number of meter(s) for one pixel.
int startx
 X Start coordinates in the position manager frame.
int starty
 Y Start coordinates in the position manager frame.
int startz
 Z Start coordinates in the position manager frame.
double startutmx
 X Start coordinates in the ENU UTM Frame.
double startutmy
 Y Start coordinates in the ENU UTM Frame.
double startutmz
 Z Start coordinates in the ENU UTM Frame.
int goalx
 X Goal coordinates in the position manager frame.
int goaly
 Y Goal coordinates in the position manager frame.
int goalz
 Z Goal coordinates in the position manager frame.
double goalutmx
 X Goal coordinates in the ENU UTM Frame.
double goalutmy
 Y Goal coordinates in the ENU UTM Frame.
double goalutmz
 Z Goal coordinates in the ENU UTM Frame.
jafar::lgl::GeoDatanavMap
 Navigation Map.
jafar::lgl::Quadtree< double,
jafar::lgl::GeoData > * 
navQuadtree
 Map quad decomposition.
jafar::lgl::NavGraphnavGraph
 Navigation LGL graph.
PathToolmultiTool
 Tools for path manipulations.
bool isDrawingNSU
 Enable/Disable the drawing of the navigation success utility Will set the geodata if true.

Member Function Documentation

bool jafar::rednav::Navigator::cropPath ( double  vent,
double  vproba,
jafar::lgl::NavPath navpath 
)

Crop a path using multiple parameters.

Parameters:
ventMaximum admissible entropy value for YES-NO traversability
vprobaMaximum admissible obstacle probability
Returns:
true if a crop was done else false.

Finds which point of the frontier as the greatest utility.

Parameters:
autoStartNavigation location that will be set.
Returns:
false if no utility could be calculated or if there is no frontier at all.

Prints information about everything - map, graph, path tool...

bool jafar::rednav::Navigator::saveData ( const std::string &  outfile,
const std::string &  toutfile,
const std::string &  quadTreeFile 
)

Save geodata and quadtree.

Parameters:
outfilefilepath for geodata geotiff saving.
toutfilefilepath for traversability map PNM-image saving.
quadTreeFilefilepath for the quadtree gnuplot output.

Set isDrawingNSU parameter.

See also:
isDrawingNSU

Set the maximum of way points we want in a path.

Parameters:
maxwptsMaximum number of waypoints. 0 means theres no limit.

Set the distance to respect between interpolated points.

Update map and recreate quadtree and navigation graph accordingly from another geodata.


Member Data Documentation

Enable/Disable the drawing of the navigation success utility Will set the geodata if true.

It takes some processing time.

-false- by default

Definition at line 85 of file navigator.hpp.


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:44 for Jafar by doxygen 1.7.6.1
LAAS-CNRS