mirror of
https://github.com/storytold/figcraft.git
synced 2026-11-08 19:42:05 +00:00
The `.jam` importer routed every elbowed connector itself, so one drawn around a layer by hand in FigJam came in routed through it. FigJam saves the path as `connectorControlPoints`: one per run between the first and the last, each a point on its run (in the connector's parent's coordinates) with the run's axis; the first run leaves the start's side and the last arrives at the end's. They become the `ConnectorPath::Runs` a board connector reshaped by hand has, walked by `figcraft_doc::route_along`, so the path is kept exactly. Points that don't make such a path (off both axes, two runs the same way in a row, a first or last run sideways to its side, more runs than a hand could make) leave the connector to the router as before, and only connectors routed here count in the "own routing" note. `figcraft_doc::attach_points` and `MAX_RUNS` are exported for it. Docs: file-format-parity.md, boards-parity.md. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>