37 #include "ompl/extensions/morse/MorseStatePropagator.h"
38 #include "ompl/control/spaces/RealVectorControlSpace.h"
39 #include "ompl/extensions/morse/MorseStateSpace.h"
40 #include "ompl/util/Exception.h"
45 env_ = mss->getEnvironment();
47 throw Exception(
"MORSE State Space needed for MorseStatePropagator");
52 boost::mutex::scoped_lock lock(env_->mutex_);
58 std::vector<double> controlVec;
60 for (
unsigned int i = 0; i < env_->controlDim_; i++)
61 controlVec.push_back(conVals[i]);
64 env_->applyControl(controlVec);
67 env_->worldStep(duration);
MorseStatePropagator(const SpaceInformationPtr &si)
Construct representation of a MORSE state propagator. If si->getStateSpace() does not cast to a Morse...
State space representing MORSE states.
Definition of an abstract control.
Model the effect of controls on system states.
virtual void propagate(const base::State *state, const Control *control, const double duration, base::State *result) const
Propagate from a state, under a given control, for some specified amount of time. ...
The definition of a control in Rn
Definition of an abstract state.
The exception type for ompl.
virtual bool canPropagateBackward(void) const
Will always return false, as the simulation can only proceed forward in time.
const T * as(void) const
Cast this instance to a desired type.
base::MorseEnvironmentPtr env_
The MORSE environment this state propagator operates on.