ompl::control::OpenDEEnvironment Class Referenceabstract
This class contains the OpenDE constructs OMPL needs to know about when planning. More...
#include <ompl/extensions/ode/OpenDEEnvironment.h>
Public Member Functions | |
virtual unsigned int | getControlDimension () const =0 |
Number of parameters (double values) needed to specify a control input. | |
virtual void | getControlBounds (std::vector< double > &lower, std::vector< double > &upper) const =0 |
Get the control bounds – the bounding box in which to sample controls. | |
virtual void | applyControl (const double *control) const =0 |
Application of a control. This function sets the forces/torques/velocities for bodies in the simulation based on control inputs. | |
virtual bool | isValidCollision (dGeomID geom1, dGeomID geom2, const dContact &contact) const |
Decide whether a collision is a valid one or not. In some cases, collisions between some bodies can be allowed. By default, this function always returns false, making all collisions invalid. | |
virtual unsigned int | getMaxContacts (dGeomID geom1, dGeomID geom2) const |
Get the maximum number of contacts to set up between two colliding geoms. By default, this just returns the member variable maxContacts. | |
virtual void | setupContact (dGeomID geom1, dGeomID geom2, dContact &contact) const |
Parameters to set when contacts are created between geom1 and geom2. | |
std::string | getGeomName (dGeomID geom) const |
Get the name of a body. | |
void | setGeomName (dGeomID geom, const std::string &name) |
Set the name of a body. | |
Public Attributes | |
dWorldID | world_ {nullptr} |
The OpenDE world where the simulation is performed. | |
std::vector< dSpaceID > | collisionSpaces_ |
The set of spaces where contacts need to be evaluated before simulation takes place. | |
std::vector< dBodyID > | stateBodies_ |
The set of bodies that need to be considered part of the state when planning. This is not necessarily all the bodies in the environment. | |
std::map< dGeomID, std::string > | geomNames_ |
Optional map of names given to geoms. This is useful when collision checking is verbose. | |
bool | verboseContacts_ {false} |
Issue debug messages when contacts are found. Default is false. This should only be used for debugging. | |
dJointGroupID | contactGroup_ |
The group of joints where contacts are created. | |
unsigned int | maxContacts_ {3} |
The maximum number of contacts to create between two bodies when a collision occurs. | |
double | stepSize_ {0.05} |
The simulation step size. | |
unsigned int | maxControlSteps_ {100} |
The maximum number of times a control is applies in sequence. | |
unsigned int | minControlSteps_ {5} |
The minimum number of times a control is applies in sequence. | |
std::mutex | mutex_ |
Lock to use when performing simulations in the world. (OpenDE simulations are NOT thread safe) | |
Detailed Description
This class contains the OpenDE constructs OMPL needs to know about when planning.
Definition at line 130 of file OpenDEEnvironment.h.
The documentation for this class was generated from the following files:
- ompl/extensions/ode/OpenDEEnvironment.h
- ompl/extensions/ode/src/OpenDEEnvironment.cpp