Commit Graph

673 Commits

Author SHA1 Message Date
jan
6db4bb96db Create an ordering for everything
In order to make layouts more reproducible
Also add pattern.sort() and file.utils.preflight_check()

optionally don't sort elements
elements aren't re-ordered that often, sorting them is slow, and the
sort criteria are arbitrary, so we might want to only sort stuff by name
2024-06-03 17:00:20 -07:00
jan
94aa853a49 add plugged() for manually-aligned ports 2024-06-03 16:57:07 -07:00
bb054b9eee port .copy() should deepcopy 2024-06-03 16:54:25 -07:00
5fb736eb74 add a more descriptive error message 2024-06-03 16:54:15 -07:00
4334d0d50b fix bounds calculation for arrays with manhattan rotation 2024-06-03 16:54:02 -07:00
31863c9799 reduce compression level to improve speed 2024-06-03 16:53:14 -07:00
30982d742b make sure kwargs get passed into gen_straight() 2024-06-03 16:53:03 -07:00
447d4ba35b improve path_into docs and error messages 2024-06-03 16:52:34 -07:00
70a51ed8ef path_into should use destination port's ptype by default 2024-06-03 16:26:12 -07:00
jan
b33c632569 cache base64encode calls since it's actually fairly slow 2024-03-09 18:38:29 -08:00
c115780bc7 bump version to v3.1 2024-03-30 18:02:40 -07:00
66d9a4eff8 add note about github mirror 2024-03-30 18:01:14 -07:00
3a0c49174b improve variable naming 2024-03-30 18:01:14 -07:00
8d122cbd2e add path_into() 2024-03-30 18:01:08 -07:00
383b5a0bef add plug_into arg 2023-11-24 23:55:39 -08:00
jan
24c77fd3c3 remove custom __copy__
no longer necessary now that we're not locking anything
2023-11-18 12:29:36 -08:00
jan
33529f5ed3 pattern shouldn't have an offset 2023-11-18 12:28:51 -08:00
jan
2516f06e40 add missing returns 2023-11-18 12:28:33 -08:00
1f6d78386c pass kwargs down into tool's path() calls 2023-11-12 02:30:11 -08:00
41d670eef3 Add missing f for f-strings 2023-11-12 02:29:52 -08:00
7f927c46b3 another arc fix 2023-10-27 23:31:22 -07:00
55e3066485 Wrap Pattern functions for label, ref, polygon, etc. 2023-10-27 21:59:48 -07:00
c7736a18c3 add missing arc endpoints 2023-10-27 21:55:17 -07:00
aefd79fb5d Pattern should be a forward reference 2023-10-23 10:24:49 -07:00
jan
7353617878 add .x and .y aliases for .offset 2023-10-20 23:19:28 -07:00
jan
f28c31fe29 = should have been + 2023-10-20 23:16:39 -07:00
jan
8ef5e2e852 improve docs 2023-10-20 23:16:02 -07:00
jan
ed433861e3 make sure transform is float-typed 2023-10-20 23:15:38 -07:00
jan
e710fa44b5 improve type annotations 2023-10-20 23:15:13 -07:00
jan
9a7a5583ed Add Tree/TreeView and allow Builder to ingest them 2023-10-20 23:14:47 -07:00
jan
b4d31903c1 update required python version 2023-10-15 23:55:41 -07:00
jan
d6ab8a1f34 Bump version to v3.0. Note that MAJOR BREAKING CHANGES were introduced almost everywhere in this version -- see the readme to understand how everything works now. 2023-10-15 23:12:33 -07:00
jan
83e82db5da doc typo 2023-10-15 23:10:58 -07:00
jan
73ce794fec import pack2d by default 2023-10-15 23:07:37 -07:00
jan
3a6807707b Add more docs 2023-10-15 23:07:28 -07:00
jan
1bdb998085 Generalize underscore into SINGLE_USE_PREFIX 2023-10-15 23:01:47 -07:00
jan
668d4b5d8b docstring updates 2023-10-15 18:31:58 -07:00
jan
2229ee5d25 surface BasicTool and PathTool at top level 2023-10-15 16:24:20 -07:00
jan
6ba44e375b remove todo 2023-10-15 16:21:51 -07:00
jan
f12f14e087 Add RenderPather tutorial, tutorial README, and some minor doc updates 2023-10-15 16:18:34 -07:00
jan
ef3bec01ce Replicate routing using paths 2023-10-15 16:18:34 -07:00
jan
5f5c78455b Add missing final vertex when the path ends in a bend 2023-10-15 16:18:34 -07:00
jan
1c7b0ce5e1 Start working on a pather tutorial 2023-10-15 16:18:34 -07:00
jan
8c14401788 add Library.map_layers 2023-10-15 16:18:34 -07:00
jan
4de82ab2ba fix transition calculation 2023-10-15 16:18:34 -07:00
jan
5a6826f8e5 stop taking in base_name -- tools can set their own cell names 2023-10-15 16:18:34 -07:00
jan
bfd81f777c Cleanup based on flake8 lint 2023-10-15 16:18:34 -07:00
jan
dec084818a some further work on Tool interface 2023-10-15 16:18:34 -07:00
jan
590b6b36bd No need for Builder 2023-10-15 16:18:34 -07:00
jan
80e0c5daa8 path() should return a tree 2023-10-15 16:18:34 -07:00