26 #ifndef CCPMPM_DUBINS_STATE_SPACE_HPP 27 #define CCPMPM_DUBINS_STATE_SPACE_HPP
HC_CC_Circle_Param rs_circle_param_
Parameter of a rs-circle.
An implementation of continuous curvature (CC) steer for a Dubins car with either positive (p) or neg...
double get_distance(const State &state1, const State &state2) const
Returns shortest path length from state1 to state2.
Description of a kinematic car's state.
~CCpmpm_Dubins_State_Space()
Destructor.
bool forwards_
Driving direction.
std::unique_ptr< CCpmpm_Dubins > ccpmpm_dubins_
Pimpl Idiom: unique pointer on class with families.
double radius_
Outer radius of a hc-/cc-circle.
double mu_
Angle between a configuration on the hc-/cc-circle and the tangent to the circle at that position...
std::vector< Control > get_controls(const State &state1, const State &state2) const
Returns controls of the shortest path from state1 to state2.
CC_Dubins_Path * ccpmpm_dubins(const State &state1, const State &state2) const
Returns a sequence of turns and straight lines connecting a start and an end configuration.
CC_Dubins_Path * ccpmpm_circles_dubins_path(const HC_CC_Circle &c1, const HC_CC_Circle &c2) const
Returns a sequence of turns and straight lines connecting the two circles c1 and c2.
double sin_mu_
Sine and cosine of mu.
CCpmpm_Dubins_State_Space(double kappa, double sigma, double discretization=0.1, bool forwards=true)
Constructor.