Go to the documentation of this file.
26 #ifndef CC0PM_DUBINS_STATE_SPACE_HPP
27 #define CC0PM_DUBINS_STATE_SPACE_HPP
46 class CC0pm_Dubins_State_Space :
public HC_CC_State_Space
59 CC_Dubins_Path*
cc0pm_dubins(
const State& state1,
const State& state2)
const;
62 double get_distance(
const State& state1,
const State& state2)
const;
65 std::vector<Control>
get_controls(
const State& state1,
const State& state2)
const;
double get_distance(const State &state1, const State &state2) const
Returns shortest path length from state1 to state2.
HC_CC_Circle_Param rs_circle_param_
Parameter of a rs-circle.
CC0pm_Dubins_State_Space(double kappa, double sigma, double discretization=0.1, bool forwards=true)
Constructor.
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 * cc0pm_dubins(const State &state1, const State &state2) const
Returns a sequence of turns and straight lines connecting a start and an end configuration.
bool forwards_
Driving direction.
CC_Dubins_Path * cc0pm_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.
std::unique_ptr< CC0pm_Dubins > cc0pm_dubins_
Pimpl Idiom: unique pointer on class with families
double mu_
Angle between a configuration on the hc-/cc-circle and the tangent to the circle at that position.
double radius_
Outer radius of a hc-/cc-circle.
~CC0pm_Dubins_State_Space()
Destructor.