src
fields2cover
route_planning
single_cell_swaths_order_base.cpp
Go to the documentation of this file.
1
//=============================================================================
2
// Copyright (C) 2021-2024 Wageningen University - All Rights Reserved
3
// Author: Gonzalo Mier
4
// BSD-3 License
5
//=============================================================================
6
7
#include <algorithm>
8
#include "
fields2cover/route_planning/single_cell_swaths_order_base.h
"
9
10
namespace
f2c::rp
{
11
12
F2CSwaths
SingleCellSwathsOrderBase::genSortedSwaths
(
13
const
F2CSwaths
&
swaths
, uint32_t variant)
const
{
14
// Always sort swaths to work with them in the same direction.
15
F2CSwaths
new_swaths =
swaths
.clone();
16
if
(new_swaths.
size
() > 0) {
17
new_swaths.
sort
();
18
this->
changeStartPoint
(new_swaths, variant);
19
this->
sortSwaths
(new_swaths);
20
new_swaths.
reverseDirOddSwaths
();
21
}
22
return
new_swaths;
23
}
24
25
void
SingleCellSwathsOrderBase::changeStartPoint
(
26
F2CSwaths
&
swaths
, uint32_t variant)
const
{
27
if
(variant & 1) {
28
swaths
.reverse();
29
}
30
if
(variant & 2) {
31
swaths
[0].reverse();
32
}
33
}
34
35
36
37
}
// namespace f2c::rp
38
f2c::types::Swaths::size
size_t size() const
Definition:
Swaths.cpp:78
5_route_planning.swaths
swaths
Definition:
5_route_planning.py:58
f2c::rp::SingleCellSwathsOrderBase::changeStartPoint
virtual void changeStartPoint(F2CSwaths &swaths, uint32_t variant) const
Definition:
single_cell_swaths_order_base.cpp:25
f2c::types::Swaths::reverseDirOddSwaths
void reverseDirOddSwaths()
Definition:
Swaths.cpp:136
f2c::rp::SingleCellSwathsOrderBase::genSortedSwaths
virtual F2CSwaths genSortedSwaths(const F2CSwaths &swaths, uint32_t variant=0) const
Definition:
single_cell_swaths_order_base.cpp:12
f2c::rp
Route planning algorithms' namespace.
Definition:
boustrophedon_order.h:14
f2c::types::Swaths::sort
void sort()
Definition:
Swaths.cpp:127
single_cell_swaths_order_base.h
f2c::rp::SingleCellSwathsOrderBase::sortSwaths
virtual void sortSwaths(F2CSwaths &swaths) const =0
f2c::types::Swaths
Definition:
Swaths.h:20
fields2cover
Author(s):
autogenerated on Fri Apr 25 2025 02:18:31