Boustrophedon Cellular decomposition [choset2000coverage]. More...
#include <boustrophedon_decomp.h>

Public Member Functions | |
| F2CMultiLineString | genSplitLines (const F2CCells &cells, const obj::DecompObjective &obj=obj::DecompObjective()) override |
Public Member Functions inherited from f2c::decomp::TrapezoidalDecomp | |
| F2CMultiLineString | genSplitLines (const F2CCells &cells, const obj::DecompObjective &obj=obj::DecompObjective()) override |
| double | getSplitAngle () const |
| Get split angle used to decompose the field. More... | |
| void | setSplitAngle (double ang) |
| Set split angle used to decompose the field. More... | |
Public Member Functions inherited from f2c::decomp::DecompositionBase | |
| virtual F2CCells | decompose (const F2CCells &cells, const obj::DecompObjective &obj=obj::DecompObjective()) |
| Decompose F2CCells into simpler F2CCells. More... | |
| virtual F2CCells | merge (const F2CCells &cells, const obj::DecompObjective &obj) |
| virtual F2CCells | split (const F2CCells &cells, const obj::DecompObjective &obj) |
| virtual | ~DecompositionBase ()=default |
Private Member Functions | |
| bool | isLinePartOfLinearRing (const F2CLinearRing &ring, const F2CLineString &line) const |
Additional Inherited Members | |
Protected Attributes inherited from f2c::decomp::TrapezoidalDecomp | |
| double | split_angle {0.0} |
Boustrophedon Cellular decomposition [choset2000coverage].
Each point in the geometry is checked if it is a critical point. A critical point is defined as a point that split or merge cells in the split_angle . If it is a critical point, split lines are created in the perpendicular to the split_angle.
Definition at line 23 of file boustrophedon_decomp.h.
|
overridevirtual |
Split the field into several cells that are easier to cover
| cells | Original cells |
Implements f2c::decomp::DecompositionBase.
Definition at line 36 of file boustrophedon_decomp.cpp.
|
private |
Definition at line 12 of file boustrophedon_decomp.cpp.