37 std::unique_ptr<obj::SGObjective> ptr;
40 ptr = std::make_unique<obj::NSwathModified>();
43 ptr = std::make_unique<obj::NSwath>();
46 ptr = std::make_unique<obj::SwathLength>();
49 ptr = std::make_unique<obj::FieldCoverage>();
52 ptr = std::make_unique<obj::Overlaps>();
59 std::unique_ptr<f2c::pp::TurningBase> turn_planner;
62 turn_planner = std::make_unique<f2c::pp::DubinsCurves>();
65 turn_planner = std::make_unique<f2c::pp::DubinsCurvesCC>();
68 turn_planner = std::make_unique<f2c::pp::ReedsSheppCurves>();
71 turn_planner = std::make_unique<f2c::pp::ReedsSheppCurvesHC>();
93 fast_hl_rings =
cells;
97 mainland =
const_hl.generateHeadlandArea(
99 auto hl_swaths =
const_hl.generateHeadlandSwaths(
101 fast_hl_rings = hl_swaths[floor(0.5*opt.
hg_swaths)];
127 const Options& opt,
bool local_crs) {
155 const Options& opt,
bool local_crs) {