DubinsStateSpace.h
134 int flags = ~(STATESPACE_INTERPOLATION | STATESPACE_TRIANGLE_INEQUALITY | STATESPACE_DISTANCE_BOUND);
144 virtual void interpolate(const State *from, const DubinsPath &path, double t, State *state) const;
169 {
178 bool checkMotion(const State *s1, const State *s2, std::pair<State *, double> &lastValid) const override;
Check whether the distance function is symmetric (StateSpace::distance())
Definition: StateSpace.h:203
bool hasSymmetricInterpolate() const override
Check if the interpolation function on this state space is symmetric, i.e. interpolate(from,...
Definition: DubinsStateSpace.h:217
The base class for space information. This contains all the information about the space planning is d...
Definition: SpaceInformation.h:142
double length_[3]
Definition: DubinsStateSpace.h:191
A shared pointer wrapper for ompl::base::SpaceInformation.
void sanityChecks() const override
Convenience function that allows derived state spaces to choose which checks should pass (see SanityC...
Definition: DubinsStateSpace.h:222
void interpolate(const State *from, const State *to, double t, State *state) const override
Computes the state that lies at time t in [0, 1] on the segment that connects from state to to state....
Definition: DubinsStateSpace.cpp:220
bool hasSymmetricDistance() const override
Check if the distance function on this state space is symmetric, i.e. distance(s1,...
Definition: DubinsStateSpace.h:212
virtual void sanityChecks() const
Convenience function that allows derived state spaces to choose which checks should pass (see SanityC...
Definition: StateSpace.cpp:602
DubinsPath dubins(const State *state1, const State *state2) const
Return the shortest Dubins path from SE(2) state state1 to SE(2) state state2.
Definition: DubinsStateSpace.cpp:320
Check whether the StateSpace::distance() is bounded by StateSpace::getExtent()
Definition: StateSpace.h:213
static const DubinsPathSegmentType dubinsPathType[6][3]
Dubins path types.
Definition: DubinsStateSpace.h:167
Abstract definition for a class checking the validity of motions – path segments between states....
Definition: MotionValidator.h:125
bool checkMotion(const State *s1, const State *s2) const override
Check if the path between two states (from s1 to s2) is valid. This function assumes s1 is valid.
Definition: DubinsStateSpace.cpp:385
Check whether the triangle inequality holds when using StateSpace::interpolate() and StateSpace::dist...
Definition: StateSpace.h:210
const DubinsPathSegmentType * type_
Definition: DubinsStateSpace.h:189
An SE(2) state space where distance is measured by the length of Dubins curves.
Definition: DubinsStateSpace.h:125
double distance(const State *state1, const State *state2) const override
Computes distance between two states. This function satisfies the properties of a metric if isMetricS...
Definition: DubinsStateSpace.cpp:213
A Dubins motion validator that only uses the state validity checker. Motions are checked for validity...
Definition: DubinsStateSpace.h:226
bool isMetricSpace() const override
Return true if the distance function associated with the space is a metric.
Definition: DubinsStateSpace.h:201
Check whether calling StateSpace::interpolate() works as expected.
Definition: StateSpace.h:206