Class ReedsSheppCurvesHC
Defined in File reeds_shepp_curves_hc.h
Inheritance Relationships
Base Type
public f2c::pp::TurningBase
(Class TurningBase)
Class Documentation
-
class ReedsSheppCurvesHC : public f2c::pp::TurningBase
Reeds-Shepp’s curves planner with continuous curves.
Public Functions
-
virtual F2CPath createSimpleTurn(const F2CRobot &robot, double dist_start_pos, double start_angle, double end_angle) override
Create a turn.
- Parameters:
dist_start_pos – Distance between start and end point
start_angle – Angle when going into the headland (0 deg is the angle of the headland)
end_angle – Angle when going out of the headland
-
F2CPath createTurn(const F2CRobot &robot, const F2CPoint &start_pos, double start_angle, const F2CPoint &end_pos, double end_angle)
Create a turn that goes from one point with a certain angle to another point.
Start and end point are connected with a line that creates the inferior border of the turn.
- Parameters:
start_pos – Start point
start_angle – Start angle
end_pos – End point
end_angle – End angle
- Returns:
Path with the computed turn
-
F2CPath createTurnIfNotCached(const F2CRobot &robot, double dist_start_pos, double start_angle, double end_angle)
Generate a turn if it has not been computed before.
- Parameters:
dist_start_pos – Distance between start and end point
start_angle – Angle when going into the headland (0 deg is the angle of the headland)
end_angle – Angle when going out of the headland
-
double getDiscretization() const
Get discretization distance from points in the turn.
-
void setDiscretization(double d)
Set discretization distance from points in the turn.
-
bool getUsingCache() const
Get if turns are being cached or not.
-
void setUsingCache(bool c)
Set if cache should be used when planning same turn as before.
Public Static Functions
-
static std::vector<double> transformToNormalTurn(const F2CPoint &start_pos, double start_angle, const F2CPoint &end_pos, double end_angle)
Transform the turn parameters representation from two points with two angles to one distance and two angles.
- Parameters:
start_pos – Start point
start_angle – Start angle
end_pos – End point
end_angle – End angle
- Returns:
Vector with the values of the new representation
-
virtual F2CPath createSimpleTurn(const F2CRobot &robot, double dist_start_pos, double start_angle, double end_angle) override