devkit_f2c_planner.test_contour_rows

Unit tests for _run_contour_f2c() (shapely offset rows; no fields2cover involved).

Functions

contour_rows([reference_xy, obstacles_xy])

Run _run_contour_f2c() on the fixture field; returns rows in local xy metres.

row_y(row)

Classes

ContourRowsTest([methodName])

class devkit_f2c_planner.test_contour_rows.ContourRowsTest(methodName='runTest')[source]

Bases: TestCase

setUp()[source]

Hook method for setting up the test fixture before exercising it.

test_curved_reference_gives_rows_at_constant_distance()[source]

Rows follow the reference: every point of a row is a whole number of tool widths away from it.

test_every_row_stays_inside_the_field()[source]
test_headland_insets_the_rows_from_the_boundary()[source]
test_headland_wider_than_the_field_falls_back_to_the_full_boundary()[source]
test_max_rows_each_side_limits_the_row_count()[source]
test_obstacle_splits_rows_and_no_fragment_enters_it()[source]
test_reference_line_outside_the_field_returns_no_rows()[source]
test_reference_line_with_one_point_returns_no_rows()[source]
test_rows_are_spaced_by_the_tool_width_and_span_the_field()[source]
test_snake_order_alternates_row_direction()[source]
test_without_snake_every_row_keeps_the_reference_direction()[source]
devkit_f2c_planner.test_contour_rows.contour_rows(reference_xy: list | None = None, obstacles_xy: list | None = None, **kwargs) → list[source]

Run _run_contour_f2c() on the fixture field; returns rows in local xy metres.

devkit_f2c_planner.test_contour_rows.row_y(row: list) → float[source]