Commit Graph

853 Commits

Author SHA1 Message Date
Mikolaj Wielgus b2c9305cea autorouter: add new compare command to be used for sorting later 2024-08-05 04:33:51 +02:00
Mikolaj Wielgus 43b48e78e3 router: use `Step` trait for `Astar` too 2024-08-04 18:50:58 +02:00
Mikolaj Wielgus ece9c4aa5a autorouter,router: put stepper finishing in `Step` trait too 2024-08-04 16:36:11 +02:00
Mikolaj Wielgus 7830806834 router: use `Step` and new `StepBack` traits in `Route` and `Trace` 2024-08-03 19:17:00 +02:00
Mikolaj Wielgus 1305487c7f autorouter: use new `Step` trait for stepping 2024-08-03 16:40:04 +02:00
Mikolaj Wielgus 5b32797022 autorouter: return a different status every time routing a band finishes 2024-08-01 12:56:24 +02:00
Mikolaj Wielgus 49bfbf1ed7 readme: add link to the Website in text 2024-07-29 16:37:46 +02:00
Mikolaj Wielgus fcffb76de4 autorouter: create new command: Remove Selected Bands 2024-07-25 01:46:54 +02:00
Mikolaj Wielgus b568f2d790 autorouter: split selection into pin selection and band selection 2024-07-24 14:59:28 +02:00
Mikolaj Wielgus 3bf4d2cdb1 autorouter,board: use both band uids and band termsegs 2024-07-24 02:27:11 +02:00
Mikolaj Wielgus f7126dfa33 egui,autorouter: implement selecting bands 2024-07-23 13:36:57 +02:00
Mikolaj Wielgus 5da6ec4463 drawing: create methods for obtaining UIDs for bands 2024-07-23 02:03:55 +02:00
Mikolaj Wielgus 95c1c0b8b9 drawing: use shared band traversal code 2024-07-23 00:02:20 +02:00
Mikolaj Wielgus 61babd179a egui: fix selection of polys and vias 2024-07-22 11:10:52 +02:00
Mikolaj Wielgus ca27804c64 drawing: move band length measurement to new band refobject 2024-07-21 16:45:36 +02:00
Mikolaj Wielgus 57c970e22e drawing: obtain `HeadRef` via new trait for abstract reference objects 2024-07-21 14:49:43 +02:00
Mikolaj Wielgus 0552dd3f33 egui: put debug visualization checkboxes in a dropdown menu 2024-07-21 13:59:08 +02:00
Mikolaj Wielgus 4e064439f9 gitignore: ignore SES files 2024-07-21 13:56:14 +02:00
Mikolaj Wielgus 00a68f1c67 cleanup: remove mistakenly staged SES files 2024-07-20 00:20:12 +02:00
Mikolaj Wielgus a644ac276b egui: add widget to control showing bboxes 2024-07-19 23:11:38 +02:00
Mikolaj Wielgus 4f8bf8f686 gitignore: ignore KiCad archive and lock files 2024-07-18 14:33:49 +02:00
Mikolaj Wielgus 0dacb99c9e tests: shorten the paths to test projects 2024-07-18 14:18:42 +02:00
Mikolaj Wielgus c17c004aae cli: hard-code routing only the first layer by default
A temporary measure before we provide better layer control and prevent
duplication of routes.
2024-07-16 20:39:19 +02:00
Mikolaj Wielgus a9f42e1d8f cli: by default, assume output filename is input's with .ses extension 2024-07-16 20:33:40 +02:00
Mikolaj Wielgus 87fd5d5d05 cli: make command file argument named and optional 2024-07-16 15:45:42 +02:00
Mikolaj Wielgus 2ebd9b411b install: explain how to run Topola without installing 2024-07-15 22:17:23 +02:00
mikolaj 35286bb0ba install: fix punctuation and markup 2024-07-15 14:33:03 +02:00
Mikolaj Wielgus ace5709e5d cleanup: `cargo fix`, `cargo fmt` to reduce number of error messages 2024-07-15 13:14:17 +02:00
Mikolaj Wielgus 44d9d3dd83 install: explain how to use the CLI and how to view its results 2024-07-15 12:52:43 +02:00
Mikolaj Wielgus 358c1fefdf install: provide succint instructions for installing from source 2024-07-15 12:04:29 +02:00
Mikolaj Wielgus b0068c5f09 cli: rename the CLI binary to from `topola-cli` to shorter `topola` 2024-07-15 12:02:17 +02:00
Mikolaj Wielgus cd6c9fbe76 sdl2-bench: remove the SDL2 bench (aka. SDL2 demo) entirely
First, from now on I'm going to call the "SDL2 demo" the "SDL2 bench",
as a demo is software that exists to demonstrate, whereas its purpose
lately has been only fast prototyping, as we switched to make all demo
animations in the Egui port anyway.

Second, I'm removing the SDL2 bench anyway as it's a maintenance burden
that lost its utility. It's also affected by a bug in Pathfinder that
makes it impossible to zoom beyond a certain threshold which would
require someone to dig into Pathfinder's codebase, a task I don't think
anyone is interested in.
2024-07-15 01:31:45 +02:00
Mikolaj Wielgus 1e21a501d8 contributing: move installation instructions to INSTALL.md 2024-07-15 01:23:45 +02:00
Mikolaj Wielgus 925e3d5266 cargo: toggle `disable_contracts` feature on by default 2024-07-15 01:23:45 +02:00
Szpachlarz 08c444d16d cargo: add crate description 2024-07-13 15:16:09 +02:00
Szpachlarz f72eac2636 Add: --help and --version commands 2024-07-13 15:09:45 +02:00
Szpachlarz 8d2db0a0dc cli: implement SES export 2024-07-13 14:48:38 +02:00
Tomasz Cichoń 9e2a0acab0 specctra: add export of bends (downgraded to line segment chains) 2024-07-12 15:14:15 +02:00
Tomasz Cichoń e28b7f7f9d geometry, egui: fixes and cleanup of math related to bend shapes 2024-07-12 12:01:21 +02:00
Tomasz Cichoń 8c3a3f1e72 specctra, egui: add menu option for specctra session export 2024-07-10 17:17:26 +02:00
mikolaj 299d11b05f contributing: some small copyediting 2024-07-09 21:46:39 +00:00
Mikolaj Wielgus be9ff3a85a layout: rename "zone" to "poly"
We'll keep the term "zone" for higher-level concepts.
2024-07-09 23:09:39 +02:00
Mikolaj Wielgus 71a2a3ebbf sdl2-demo: fix compilation errors 2024-07-09 19:53:52 +02:00
Mikolaj Wielgus 47e1f7760e tests: adjust loading design file to the new `BufRead` interface 2024-07-09 18:57:37 +02:00
Mikolaj Wielgus 3fd31746af drawing: make not having infringables the default when adding canes
The previous commit only did it for inserted canes.
2024-07-09 18:56:34 +02:00
Mikolaj Wielgus 1c07eb96ac drawing: for now, make adding canes have no infringables 2024-07-09 17:01:29 +02:00
Mikolaj Wielgus c34cd730c5 egui: add keyboard shortcuts and basic action abstraction 2024-07-09 13:10:02 +02:00
Mikolaj Wielgus c36ccc287a autorouter: improve error handling by removing some unwraps 2024-07-08 13:25:58 +02:00
Mikolaj Wielgus f4054783d1 cleanup: remove committed output file and commented-out code 2024-07-08 02:06:55 +02:00
Mikolaj Wielgus b9a99237a1 egui: clear selection when routing is initiated 2024-07-08 02:01:17 +02:00