Mikolaj Wielgus
|
c492bd1dda
|
Parametrize routing using `RouteStrategy` trait
|
2023-09-02 06:05:13 +02:00 |
Mikolaj Wielgus
|
bea6d84878
|
Implement `AstarStrategy` trait to not borrow A* context multiple times
|
2023-09-02 01:44:35 +02:00 |
Mikolaj Wielgus
|
b5f9a5957a
|
Route with A* step by step instead of only after A*
|
2023-09-01 01:35:48 +02:00 |
Mikolaj Wielgus
|
cd5365c26f
|
Pass `width` as an argument instead of holding it in `Route`
|
2023-08-31 21:17:25 +02:00 |
Mikolaj Wielgus
|
e5ba7401c1
|
Move routing methods to the `Route` struct
Commented out shove/squeeze features for now.
|
2023-08-31 20:33:34 +02:00 |
Mikolaj Wielgus
|
9f201d2c3d
|
Make `Head`, `Segbend`, `Bow` copyable
Having to move or borrow tem, especially `Head`, makes it really
difficult to appease the borrow checker.
|
2023-08-31 07:27:42 +02:00 |
Mikolaj Wielgus
|
1d5b428bf9
|
Split out drawing routines from `Router` into `Draw`
|
2023-08-30 06:34:56 +02:00 |
Mikolaj Wielgus
|
247b78087c
|
Add methods to unroute or undraw segbends
|
2023-08-29 21:11:03 +02:00 |
Mikolaj Wielgus
|
f2346eedb8
|
Run `cargo fix`
This hasn't cleaned up all the unused import, but it's a good start.
|
2023-08-29 05:02:45 +02:00 |
Mikolaj Wielgus
|
ceef3a7fb7
|
Take `&impl Interior` argument in path removal method
|
2023-08-29 01:59:11 +02:00 |
Mikolaj Wielgus
|
47aadfcdd3
|
Introduce `Segbend`, a seg-dot-bend triple
|
2023-08-29 01:49:37 +02:00 |
Mikolaj Wielgus
|
79a26cb324
|
Split `Walk` trait into `Interior` and `Ends` traits
|
2023-08-28 22:54:03 +02:00 |
Mikolaj Wielgus
|
84a7f5d873
|
Make `Bow` don't borrow the graph
|
2023-08-28 19:17:57 +02:00 |
Mikolaj Wielgus
|
47b3ffba08
|
Some small improvements to iteration in graph and layout code
|
2023-08-28 04:12:25 +02:00 |
Mikolaj Wielgus
|
14f6b9f870
|
Implement basic A* routing
|
2023-08-27 21:14:42 +02:00 |
Mikolaj Wielgus
|
9196d95546
|
Triangulate only after drawing finishes
Otherwise we'll end up with the (not yet implemented) pathfinding
algorithm trying to route traces with themselves.
|
2023-08-26 22:25:01 +02:00 |
Mikolaj Wielgus
|
a1afd19fcb
|
Implement Petgraph's graph traits on a Spade's triangulation
|
2023-08-25 23:39:44 +02:00 |
Mikolaj Wielgus
|
658bb112c2
|
Move Delaunay triangulation to a new `Mesh` struct
|
2023-08-24 21:23:37 +02:00 |
Mikolaj Wielgus
|
8456259b38
|
Rename `Layout` to `Router`, `Mesh` to `Layout`
|
2023-08-24 03:32:50 +02:00 |