KrisLibrary
1.0.0
|
Adapts a kinematic cspace (given to the constructor) to a control space. More...
#include <ControlSpace.h>
Public Member Functions | |
KinematicControlSpace (const std::shared_ptr< CSpace > &base, Real maxNeighborhoodRadius=0.1) | |
virtual std::string | VariableName (int i) |
Returns an identifier for the i'th control variable. | |
virtual std::shared_ptr< CSet > | GetControlSet (const Config &x) |
virtual InterpolatorPtr | Simulate (const State &x0, const ControlInput &u) |
virtual void | Successor (const State &x0, const ControlInput &u, State &x1) |
virtual Math::VectorFieldFunction * | SuccessorNumeric () |
virtual bool | ReverseControl (const State &x0, const State &x1, ControlInput &u) |
Public Member Functions inherited from ControlSpace | |
virtual std::shared_ptr< CSet > | GetControlSet (const State &x) |
virtual std::shared_ptr< SteeringFunction > | GetSteeringFunction () |
Returns this space's steering function, if available. | |
virtual void | SampleControl (const State &x, ControlInput &u) |
virtual bool | IsValidControl (const State &x, const ControlInput &u) |
Public Attributes | |
std::shared_ptr< CSpace > | base |
Real | maxNeighborhoodRadius |
Public Attributes inherited from ReversibleControlSpace | |
std::shared_ptr< ControlSpace > | reverseControlSpace |
Public Attributes inherited from ControlSpace | |
std::shared_ptr< CSet > | myControlSet |
Dynamically overridable default control set (Note: state independent) | |
std::shared_ptr< SteeringFunction > | mySteeringFunction |
Dynamically overridable default steering function. | |
Adapts a kinematic cspace (given to the constructor) to a control space.
The state is the same as in the "base" cspace, and the control is a straight-line motion to another state. Controls are drawn in a neighborhood around a given state with distance maxNeighborhoodRadius.
|
virtual |
If the system is reversible and x1 = f(x0,u), changes u so that x0 = f(x1,u) and returns true. If no such u exists, return false.
Reimplemented from ReversibleControlSpace.
|
virtual |
Executes the simulation function f(x0,u) and records its trace in p. The trace is an interpolator between x0 and the successor state
Implements ControlSpace.
|
virtual |
Executes the simulation function x1 = f(x0,u). By default, uses the result from Simulate().
Reimplemented from ControlSpace.
|
virtual |
If possible, express Successor as a VectorFieldFunction on the vector (x,u) (stacked)
Reimplemented from ControlSpace.