Commit Graph

778 Commits

Author SHA1 Message Date
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
Szpachlarz e706134ed0 cli: create basic cli application
it is possible to load design and history,
 not yet possible to export results.
2024-07-07 12:05:53 +02:00
Mikolaj Wielgus 2368feded1 egui: fix saving history files 2024-07-06 15:02:59 +02:00
Mikolaj Wielgus 3a7e504c29 egui: implement loading history in WASM 2024-07-06 00:08:35 +02:00
Mikolaj Wielgus 0745604658 egui: put sender and receiver in wrapper objects 2024-07-05 18:02:54 +02:00
Mikolaj Wielgus e9ba5cd9b3 specctra: move file opening code outside, operate on `BufRead` instead 2024-07-04 23:55:58 +02:00
Mikolaj Wielgus fd23be7a8a router: step on successful probes 2024-07-04 13:52:26 +02:00
Mikolaj Wielgus b48ce70aad egui: add timer to control update frequency 2024-07-04 01:02:40 +02:00
Mikolaj Wielgus def3f84d6a egui,autorouter,router: highlight current obstacle 2024-07-04 00:39:08 +02:00
Mikolaj Wielgus b6cb89c017 egui,autorouter,router: display infringement shapes (aka. "ghosts") 2024-07-03 21:00:50 +02:00
Mikolaj Wielgus 727eb37c6e router: have probing and visiting as separate states
This feels overengineered, but I need something like this for better
debuginfo.
2024-07-03 18:12:07 +02:00
Mikolaj Wielgus 806742736a cleanup: get rid of `*Trait` names for traits, use verbs and sentences 2024-07-03 13:40:37 +02:00
Mikolaj Wielgus b1f60847b3 drawing: move head length measurement methods to new refstruct 2024-07-03 03:37:14 +02:00
Mikolaj Wielgus 3c03b2dfa1 geometry: create `MeasureLength` trait to measure lengths 2024-07-02 23:33:29 +02:00
Mikolaj Wielgus 27d1c9e712 router: step on every probe, not only navvertices 2024-07-02 02:36:42 +02:00
Mikolaj Wielgus 3c578ccada egui: display both CW and CCW navvertices separately 2024-07-01 21:21:08 +02:00
Mikolaj Wielgus 47c888d21b egui,autorouter,router: restore highlighting active navmesh edges 2024-07-01 18:56:41 +02:00
Mikolaj Wielgus 03f996721d egui: restore drawing yellow dots at routing source and target 2024-07-01 14:09:17 +02:00
Mikolaj Wielgus edf81feccc egui: restore highlighting selected node shapes 2024-07-01 12:12:27 +02:00
Mikolaj Wielgus 2259a75d92 egui,autorouter: restore displaying navmesh 2024-07-01 00:50:24 +02:00
Mikolaj Wielgus ee6eeac6d8 egui: step through every band routing step, once per frame
At last! We finally have that implemented without concurrency.
2024-06-29 22:40:06 +02:00
Mikolaj Wielgus 6cadcd3b41 egui: remove most of usages of shared-state parallelism 2024-06-29 17:11:29 +02:00
Mikolaj Wielgus fd5a95103d autorouter: step through every band routing step, not merely over bands 2024-06-29 03:07:20 +02:00
Mikolaj Wielgus ea991314b2 board: remove `.remove_band()` method 2024-06-28 19:35:25 +02:00
Mikolaj Wielgus 00b997b60e egui: fix compilation error -- import `Trace` from trace, not tracer 2024-06-28 17:15:52 +02:00
Mikolaj Wielgus da1438195a router: create new `Router` object, a wrapper over `Layout` 2024-06-28 14:46:15 +02:00