Commit Graph

259 Commits

Author SHA1 Message Date
Mikolaj Wielgus 69317384dd Separate dot and bend arounds. Keep an edge to the core from each bend 2023-07-21 05:40:04 +02:00
Mikolaj Wielgus 16990517b2 Make segs nodes instead of edges
This simplifies logic. Nodes store data as weights, while edges now only
describe relations between nodes with dataless enums -- labels.
2023-07-19 19:47:56 +02:00
Mikolaj Wielgus b5f85068df Store all relevant indexes as neighbors instead of in weights 2023-07-15 16:39:46 +02:00
Mikolaj Wielgus 26112724c7 Make bends nodes
This is necessary because bends may have more than two neighbors: apart
from the ends, there's also the node around which the bend is wrapped
(not yet made a neighbor, will be done in subsequent commits).
2023-07-14 12:40:30 +02:00
Mikolaj Wielgus bedd7c744a Add some utility functions for working with `Index`es and `Weight`s 2023-07-14 00:17:46 +02:00
Mikolaj Wielgus dabe364420 Pass around routing state with a new `Head` struct 2023-07-13 18:18:46 +02:00
Mikolaj Wielgus 0770917a41 Implement bending on bends
There's some ugly constants added here and there, will clean this up
later.
2023-07-12 11:15:54 +02:00
Mikolaj Wielgus dfcfc99413 Implement routing *into* dots 2023-07-12 01:01:59 +02:00
Mikolaj Wielgus cf6460a3db Initial commit
Very basic routing routines and data model. No pathfinding implemented
yet.
2023-07-12 01:01:25 +02:00