Ellen Emilia Anna Zscheile
ed06170db5
feat: Debug print various TopoNavmesh structures / updates
...
- feat(autorouter/execution): Debug-print the whole TopoNavmesh on completion
- feat(router/ng/poly): Emit log output on route_to_exit success
2025-06-27 15:15:26 +02:00
Ellen Emilia Anna Zscheile
a561b278fc
feat(router/ng/router): Implementation of the topological router
...
- feat(autorouter): Prepare for population of planar Topo-Navmesh with existing routes
See also issue #166 .
- feat(topola-egui): Add dialog for topological navmesh layer selection
- feat(router/ng/eval): Optionally restrict set of allowed TopoNavmesh edges
- fix(router/ng/eval): Use poly_ext_handover
2025-06-27 15:15:24 +02:00
Ellen Emilia Anna Zscheile
c8848ef269
refactor(topola-egui): Move InteractiveEvent handling from Viewport into Workspace
2025-06-27 06:51:20 +02:00
Ellen Emilia Anna Zscheile
c66089bca9
fix(interactor/interactor): Factor out the logic for on-event activity updates
2025-06-27 06:12:38 +02:00
Ellen Emilia Anna Zscheile
a4b1b3893c
feat: Add interaction stepper for route building
2025-06-27 06:02:05 +02:00
fogti
e2aaa932fc
Translated using Weblate (German)
...
Currently translated at 100.0% (54 of 54 strings)
Translation: Topola/Topola
Translate-URL: https://translate.codeberg.org/projects/topola/topola/de/
2025-06-25 18:14:42 +00:00
Outbreak2096
c1191ad90b
Translated using Weblate (Chinese (Simplified Han script))
...
Currently translated at 100.0% (54 of 54 strings)
Translation: Topola/Topola
Translate-URL: https://translate.codeberg.org/projects/topola/topola/zh_Hans/
2025-06-25 18:14:42 +00:00
Mikolaj Wielgus
03ed35cbc4
fix(drawing/drawing): Fix squeezing through under bends by flipping CW/CCW
...
I don't know what was the original cause of this bug, but this seems to
solve the problem.
2025-06-25 20:11:49 +02:00
Mikolaj Wielgus
868d05ab6f
chore: Convert the screencast from WEBM to GIF
...
Easier to display from Markdown.
2025-06-19 17:32:31 +02:00
Mikolaj Wielgus
019620dc17
chore: Add screencast of topo-navmesh routing
2025-06-19 16:21:49 +02:00
Mikolaj Wielgus
9c7c56aa12
chore: Add navmesh and topo-navmesh screenshots to assets
...
This is for the June 2025 development update.
2025-06-19 02:39:11 +02:00
Mikolaj Wielgus
6f20994dab
feat(topola-egui): Add checkbox to hide pathfinding scores
2025-06-18 18:07:43 +02:00
Ellen Emilia Anna Zscheile
896deb1777
docs(math/polygon_tangents): Fix `CachedPolyExt` doc-comment
2025-06-12 23:33:30 +02:00
Ellen Emilia Anna Zscheile
03d85b8566
feat(math/polygon_tangents): Implement polygon handover
...
Fixes #240
2025-06-12 23:33:30 +02:00
Ellen Emilia Anna Zscheile
371d13e7e1
fix(math/polygon_tangents): Fix usual triangle case
...
See also issue #238 .
This does not fix the case where all nodes of the convex hull lie on some tangent.
2025-06-12 23:33:30 +02:00
Ellen Emilia Anna Zscheile
bbd8d78089
refactor(math/polygon_tangents): Reduce code duplication
2025-06-12 23:33:30 +02:00
Ellen Emilia Anna Zscheile
353ee9a7ab
fix(specctra-core): Actually use Keepouts structure
2025-06-12 23:27:52 +02:00
Ellen Emilia Anna Zscheile
9ea058bd0a
fix(specctra-core): Proper support for all kinds of keepouts
2025-06-12 20:08:08 +02:00
Mikolaj Wielgus
3ec15db5bc
docs(router/thetastar): Add some explanatory comments
2025-06-12 16:45:07 +02:00
Mikolaj Wielgus
1630ed1a45
refactor(router/thetastar): Store edge ids in `Vec<...>` instead of `VecDeque<...>`
2025-06-12 16:45:07 +02:00
Mikolaj Wielgus
437e2f96d1
fix(router/navcord): Correctly take into account length of final termseg
2025-06-12 16:45:07 +02:00
Mikolaj Wielgus
d0c304adbd
feat(router/thetastar): Implement Theta* search algorithm
...
Closes https://codeberg.org/topola/topola/issues/121
2025-06-12 16:45:07 +02:00
Mikolaj Wielgus
1fea359a40
refactor(router/astar): Rewrite A* like a more typical state machine
2025-06-12 16:45:07 +02:00
Mikolaj Wielgus
0702b7eb8c
refactor(router/astar): Use getters instead of `pub` members
2025-06-12 16:45:07 +02:00
Ellen Emilia Anna Zscheile
cfd20ed381
feat: Implement line (segment) intersection check
2025-06-11 16:37:57 +02:00
Ellen Emilia Anna Zscheile
1505513552
feat(drawing/drawing): Store boundaries in Drawing
2025-06-10 15:37:47 +02:00
Ellen Emilia Anna Zscheile
33eb593fe9
fix(specctra-core): Fix boundary parsing
...
see also https://gitlab.com/kicad/code/kicad/-/blob/master/pcbnew/specctra_import_export/specctra.h , class BOUNDARY
2025-06-07 13:13:49 +02:00
Ellen Emilia Anna Zscheile
3c807b5078
refactor(specctra/design): Resolve image once per component
2025-06-02 22:57:45 +02:00
Ellen Emilia Anna Zscheile
2e84380344
chore(router/draw): Make API of 'extend_head' more ergonomic
2025-06-01 14:02:28 +02:00
Ellen Emilia Anna Zscheile
3ae298e4e9
feat(topola-egui): AppearancePanel active_layer selection should be explicit
2025-06-01 02:16:41 +02:00
Ellen Emilia Anna Zscheile
d1bcf22e96
feat(math/polygon_tangents): Add unit tests for triangle case
2025-05-30 21:32:13 +02:00
Ellen Emilia Anna Zscheile
eff197d410
chore: Update committed.toml
2025-05-30 21:06:42 +02:00
Ellen Emilia Anna Zscheile
c41627b023
chore(math/polygon_tangents): Fix clippy warnings
2025-05-30 21:04:43 +02:00
Ellen Emilia Anna Zscheile
42cf8f3a69
fix(math/cyclic_search): Use classic binary search instead
...
It is unnecessary to use exponential search here, and the
computation complexity of binary search is easier to understand
and obvious O(log n).
This degrades performance minimally in biased edge cases,
and improves performance in the hopefully common
"roughly half of values are false, and other half is true" case.
2025-05-30 21:04:30 +02:00
Ellen Emilia Anna Zscheile
864cf9085a
fix(drawing/band): BandTermsegIndex computation should be fallible
...
Fixes #221 .
2025-05-26 14:51:23 +02:00
Ellen Emilia Anna Zscheile
56cc737b82
fix(autorouter/autoroute): Only route each pin-pin connection at most once
...
Fixes #219 .
2025-05-26 14:17:11 +02:00
Mikolaj Wielgus
8647df026d
refactor(geometry/edit): "merge" instead of "apply" edit on another edit
...
This is just a small terminological distinction.
2025-05-26 02:44:26 +02:00
Mikolaj Wielgus
e92864d58b
fix(router/astar): Do not panic if navnode visit fails, just skip it
...
I have renamed some trait functions to make it clearer what they do, and
clarified some comments.
2025-05-25 18:04:18 +02:00
Mikolaj Wielgus
24d119ad04
refactor(router/navmesh): Rename "navvertex" to "navnode"
...
Easier to pronounce.
2025-05-25 18:01:26 +02:00
Ellen Emilia Anna Zscheile
8d0681c07d
fix(topola-egui): Fix click-based selection of pins
...
- Do intersection calculation between DotShape and Rect=AABB properly
2025-05-21 01:02:12 +02:00
Mikolaj Wielgus
464e8abb89
docs(router/astar): Make some small improvements to docs
2025-05-21 00:29:13 +02:00
Mikolaj Wielgus
e79078e971
fix(router/router): Calculate A* navedge cost correctly
...
The length of the past head depends on what was previously in the same
scan, so it can't be relied on. Instead, we just add the length of the
bend that is immediately before the probe.
2025-05-21 00:29:13 +02:00
Mikolaj Wielgus
b75101cb83
fix(router/router): Replace LoS-based A* termination with correctly searched one
2025-05-21 00:29:13 +02:00
Ellen Emilia Anna Zscheile
ded1ec8ece
fix(router/draw): Undo modification of old cane head on failure
2025-05-20 01:05:05 +02:00
Ellen Emilia Anna Zscheile
ee19ae934f
fix(drawing/bend): Improve handling of almost equal points in perp_dot_product
2025-05-20 00:13:07 +02:00
Ellen Emilia Anna Zscheile
d553fd6ba7
fix(router): attempt to fix autorouter
2025-05-17 16:32:15 +02:00
Outbreak2096
7a246be3a1
Translated using Weblate (Chinese (Simplified Han script))
...
Currently translated at 100.0% (53 of 53 strings)
Translation: Topola/Topola
Translate-URL: https://translate.codeberg.org/projects/topola/topola/zh_Hans/
2025-05-17 10:45:25 +00:00
fogti
82d78b3a15
Translated using Weblate (German)
...
Currently translated at 100.0% (53 of 53 strings)
Translation: Topola/Topola
Translate-URL: https://translate.codeberg.org/projects/topola/topola/de/
2025-05-17 10:45:25 +00:00
Ellen Emilia Anna Zscheile
bdebdacd8a
chore: Fix 'unused' imports/code warnings
2025-05-17 12:45:03 +02:00
Ellen Emilia Anna Zscheile
2394fa6256
feat(geometry/geometry): Add convenience GetPetgraphIndex impls
2025-05-17 02:43:19 +02:00