topola/src
Ellen Emilia Anna Zscheile 7799c50829 feat(math): implement search for boundaries of partitions in cyclic partitioned lists.
e.g. find the bounds of false, true in [false, true, true, false, false]
under the condition that the blocks in partitions of a single value are connected,
meaning when considering the list as cyclic, there are at most 2 blocks (for value true, false).
This implements only the binary case.

Exponential search was suggested by Harold Aptroot <@harold@mastodon.gamedev.place>

Example/motivating use case: detecting which parts of the exterior of a Polygon
  face towards a point, and which parts don't, in particular finding the (extremal) points
  contained in the tangents. This use case is implemented in `poly_ext_tangent_points`.

Signed-off-by: Ellen Emilia Anna Zscheile <fogti+devel@ytrizja.de>
2025-05-01 15:28:20 +02:00
..
autorouter feat(autorouter/invoker): Create trait to display debug information on navmesh 2025-05-01 01:59:31 +02:00
board fix(geometry/compound): rename CompoundEntryKind -> CompoundEntryLabel 2025-04-30 14:18:22 +02:00
drawing fix(geometry/compound): rename CompoundEntryKind -> CompoundEntryLabel 2025-04-30 14:18:22 +02:00
geometry fix(geometry/compound): rename CompoundEntryKind -> CompoundEntryLabel 2025-04-30 14:18:22 +02:00
interactor feat(autorouter/invoker): Create trait to display debug information on navmesh 2025-05-01 01:59:31 +02:00
layout fix(geometry/compound): rename CompoundEntryKind -> CompoundEntryLabel 2025-04-30 14:18:22 +02:00
math feat(math): implement search for boundaries of partitions in cyclic partitioned lists. 2025-05-01 15:28:20 +02:00
router feat(autorouter/invoker): Create trait to display debug information on navmesh 2025-05-01 01:59:31 +02:00
specctra fix(specctra/design): handle polygon seg between first and last dot properly 2025-04-17 18:51:29 +02:00
graph.rs refactor(geometry): introduce CompoundEntryKind to suppport entry metadata 2025-04-30 14:11:31 +02:00
lib.rs chore: cargo fmt 2025-02-10 11:28:19 +01:00
stepper.rs chore(licensing): add REUSE license headers to `**.{rs,md,toml}` files 2024-12-29 22:47:00 +01:00
triangulation.rs chore: apply clippy fixes 2025-03-25 00:17:57 +01:00