traversability_generator3d
Classes | Typedefs | Enumerations | Functions | Variables
traversability_generator3d Namespace Reference

Classes

struct  SoilData
 
class  SoilSample
 
class  TraversabilityConfig
 
class  TraversabilityGenerator3d
 
struct  TravGenTrackingData
 

Typedefs

typedef maps::grid::TraversabilityNode< SoilData > SoilNode
 
typedef maps::grid::TraversabilityMap3d< SoilNode * > SoilMap3d
 
typedef maps::grid::TraversabilityNode< TravGenTrackingData > TravGenNode
 
typedef maps::grid::TraversabilityMap3d< TravGenNode * > TravMap3d
 

Enumerations

enum  SoilType {
  UNKNOWN_SOIL = -1 , CONCRETE , ROCKS , SAND ,
  GRAVEL
}
 
enum  SlopeMetric { AVG_SLOPE , MAX_SLOPE , TRIANGLE_SLOPE , NONE }
 
enum  NodeType {
  OBSTACLE = 0 , TRAVERSABLE , FRONTIER , INFLATED_OBSTACLE ,
  INFLATED_FRONTIER , UNKNOWN , HOLE , UNSET ,
  PARTIALLY_TRAVERSABLE
}
 
enum  ObstacleCause {
  CAUSE_NONE = 0 , UNMEASURED , STEEP_SLOPE , STEP_HEIGHT ,
  INCLINE_LIMIT , NO_SAFE_YAW , MAP_BOUNDARY
}
 

Functions

template<class Archive >
void serialize (Archive &ar, SoilType &type, const unsigned int version)
 
std::ostream & operator<< (std::ostream &os, NodeType type)
 
bool operator== (NodeType lhs, NodeType rhs)
 
bool operator== (NodeType lhs, int rhs)
 

Variables

const float PRIOR_PROB = 0.25
 

Typedef Documentation

◆ SoilMap3d

typedef maps::grid::TraversabilityMap3d<SoilNode *> traversability_generator3d::SoilMap3d

◆ SoilNode

typedef maps::grid::TraversabilityNode<SoilData> traversability_generator3d::SoilNode

◆ TravGenNode

◆ TravMap3d

typedef maps::grid::TraversabilityMap3d<TravGenNode *> traversability_generator3d::TravMap3d

Enumeration Type Documentation

◆ NodeType

Enumerator
OBSTACLE 
TRAVERSABLE 
FRONTIER 
INFLATED_OBSTACLE 
INFLATED_FRONTIER 
UNKNOWN 
HOLE 
UNSET 
PARTIALLY_TRAVERSABLE 

◆ ObstacleCause

WHY a node became OBSTACLE — for debugging/visualization (the planner only reads the node type). Set wherever a node is typed OBSTACLE. Plain enum (no enum class): orogen/typelib cannot represent scoped enums, it generates namespace-scope references in the typekits. CAUSE_NONE is prefixed because SlopeMetric already puts NONE into this namespace.

Enumerator
CAUSE_NONE 

node is not an obstacle

UNMEASURED 

ground-plane fit failed (no/too sparse data)

STEEP_SLOPE 

fitted slope > maxSlope

STEP_HEIGHT 

patch collides with the robot body volume

INCLINE_LIMIT 

no allowed heading under incline limitting

NO_SAFE_YAW 

obstacle inflation found no collision-free yaw

MAP_BOUNDARY 

robot body volume leaves the mapped grid

◆ SlopeMetric

Different metrics can be used to factor in the slope of a motion

Enumerator
AVG_SLOPE 
MAX_SLOPE 
TRIANGLE_SLOPE 
NONE 

◆ SoilType

Enumerator
UNKNOWN_SOIL 
CONCRETE 
ROCKS 
SAND 
GRAVEL 

Function Documentation

◆ operator<<()

std::ostream & traversability_generator3d::operator<< ( std::ostream &  os,
NodeType  type 
)
inline

◆ operator==() [1/2]

bool traversability_generator3d::operator== ( NodeType  lhs,
int  rhs 
)
inline

◆ operator==() [2/2]

bool traversability_generator3d::operator== ( NodeType  lhs,
NodeType  rhs 
)
inline

◆ serialize()

template<class Archive >
void traversability_generator3d::serialize ( Archive &  ar,
SoilType &  type,
const unsigned int  version 
)

Variable Documentation

◆ PRIOR_PROB

const float traversability_generator3d::PRIOR_PROB = 0.25