DUNE: Uniform Navigational Environment
2019.02.0
|
Class to parse a rows maneuver and to create and fire each stage.
Public Member Functions | |
RowsStages (const fp64_t lat, const fp64_t lon, const fp64_t bearing, const fp64_t cross_angle, const fp32_t width, const fp32_t length, const fp32_t hstep, const uint8_t coff, const uint8_t alternation, const uint8_t flags, Tasks::Task *task) | |
RowsStages (const IMC::Rows *maneuver, Tasks::Task *task) | |
bool | getNextPoint (double *lat, double *lon, double new_hstep=0) |
bool | getFirstPoint (double *lat, double *lon) |
float | getDistance (double *lat, double *lon) |
std::vector< float > ::const_iterator | getDistancesBegin (void) |
std::vector< float > ::const_iterator | getDistancesEnd (void) |
unsigned | getIndex (void) |
DUNE::Maneuvers::RowsStages::RowsStages | ( | const fp64_t | lat, |
const fp64_t | lon, | ||
const fp64_t | bearing, | ||
const fp64_t | cross_angle, | ||
const fp32_t | width, | ||
const fp32_t | length, | ||
const fp32_t | hstep, | ||
const uint8_t | coff, | ||
const uint8_t | alternation, | ||
const uint8_t | flags, | ||
Tasks::Task * | task | ||
) |
Default constructor.
[in] | lat | Latitude as in IMC::Rows |
[in] | lon | Longitude as in IMC::Rows |
[in] | bearing | Bearing in radians as in IMC::Rows |
[in] | cross_angle | Cross angle in radians as in IMC::Rows |
[in] | width | Width as in IMC::Rows |
[in] | length | Length as in IMC::Rows |
[in] | hstep | Horizontal step as in IMC::Rows |
[in] | coff | Curve offset as in IMC::Rows |
[in] | alternation | Alternation as in IMC::Rows |
[in] | flags | Flags as in IMC::Rows |
[in] | task | pointer to task object (debug and inf) |
DUNE::Maneuvers::RowsStages::RowsStages | ( | const IMC::Rows * | maneuver, |
Tasks::Task * | task | ||
) |
[in] | maneuver | pointer to rows maneuver |
[in] | task | pointer to task object (debug and inf) |
References DUNE::IMC::Rows::alternation, DUNE::IMC::Rows::bearing, DUNE::IMC::Rows::coff, DUNE::IMC::Rows::cross_angle, DUNE::IMC::Rows::flags, DUNE::IMC::Rows::hstep, DUNE::IMC::Rows::lat, DUNE::IMC::Rows::length, DUNE::IMC::Rows::lon, and DUNE::IMC::Rows::width.
float DUNE::Maneuvers::RowsStages::getDistance | ( | double * | lat, |
double * | lon | ||
) |
Get total distance and last point coordinates.
[out] | lat | latitude of last point found |
[out] | lon | longitude of last point found |
|
inline |
Get an iterator to all_distances begin()
|
inline |
Get an iterator to all_distances begin()
bool DUNE::Maneuvers::RowsStages::getFirstPoint | ( | double * | lat, |
double * | lon | ||
) |
Get first point.
[out] | lat | latitude of current point |
[out] | lon | longitude of current point |
|
inline |
Get current point index.
bool DUNE::Maneuvers::RowsStages::getNextPoint | ( | double * | lat, |
double * | lon, | ||
double | new_hstep = 0 |
||
) |
Get next point.
[out] | lat | latitude of current point |
[out] | lon | longitude of current point |
[in] | new_hstep | signals a new hstep to be used for this call |