772e42ebf1
references to Pattern should be forward references
2023-10-15 16:18:34 -07:00
8d2d1ffd50
Allow Pattern.ref() to take an Abstract
2023-10-15 16:18:34 -07:00
ceaa4923ef
fix broken import
2023-10-15 16:18:34 -07:00
f40c74adb5
improve docs and variable names
2023-10-15 16:18:34 -07:00
9de382b856
Fix major bugs in presort
2023-10-15 16:18:34 -07:00
169e5a1f12
Lots of doc updates
2023-10-15 16:18:34 -07:00
d79a0a6388
get rid of Pather.mk()
2023-10-15 16:18:34 -07:00
6975787717
remove unused import
2023-10-15 16:18:34 -07:00
c4ff53a0ba
fix isinstance call arg order
2023-10-15 16:18:34 -07:00
3415a16cd1
Give a more explicit error message
2023-10-15 16:18:34 -07:00
0ea3b6625f
add missing end condition
2023-10-15 16:18:34 -07:00
272cfb7e48
fix arclength calculations giving invalid values or non-integral steps
2023-10-15 16:18:34 -07:00
8fe7b14f4b
repr updates
2023-10-15 16:18:34 -07:00
086d07a82d
Add the option to use explicit x= or y= in path_to
2023-10-15 16:18:33 -07:00
d02ea400a0
Move plug/place/interface to Pattern
...
Since Pattern has ports already, these should live in Pattern and get
wrapped elsewhere. Builder becomes a context-holder (holding .library
and .dead) and some code duplication goes away.
2023-10-15 16:18:33 -07:00
4bca0e2638
clean some old code
2023-10-15 16:18:33 -07:00
33377df883
add notes about ports
2023-10-15 16:18:33 -07:00
63e8f0b10e
fix old variable name
2023-10-15 16:18:33 -07:00
99f3b0871a
missing import
2023-10-15 16:18:33 -07:00
d5608786ea
Remove more mentions of AutoSlots
2023-10-15 16:18:33 -07:00
6866d44021
simplify imports and use new approach
2023-10-15 16:18:33 -07:00
a2cc94794e
don't need to deepcopy twice
2023-10-15 16:18:33 -07:00
c2008f2719
Improve arc arclength estimation (untested)
2023-10-15 16:18:33 -07:00
e2c7f8c8cc
various doc updates
2023-10-15 16:18:33 -07:00
04e15f7c85
use retstep instead of subtracting
2023-10-15 16:18:33 -07:00
a5ddfc76ca
speed up get_bounds when called on a manhattan ref
2023-10-15 16:18:33 -07:00
0c0012def0
find_ptransform -> find_port_transform
2023-10-15 16:18:33 -07:00
468322ceb9
add has_ports()
2023-10-15 16:18:33 -07:00
d4bb466ad9
add mutate_other arg
2023-10-15 16:18:33 -07:00
e6ff6daa32
move __repr__ higher
2023-10-15 16:18:33 -07:00
f7f5a62f54
Update comments
2023-10-15 16:18:33 -07:00
e47f9b76b1
remove TODO labels from mypy #3004 comments
2023-10-15 16:18:33 -07:00
b872e19dec
Improve arclength calculation for elliptical arcs
2023-10-15 16:18:33 -07:00
efac8efa90
update some examples
2023-10-15 16:18:33 -07:00
31d97d8df0
add retool()
2023-10-15 16:18:33 -07:00
3b2be804e2
Only remove existing ports
2023-10-15 16:18:33 -07:00
b443a2a41e
add prune_layers and prune_refs
2023-10-15 16:18:33 -07:00
064c3803ed
fix comment
2023-10-15 16:18:33 -07:00
0618be91d4
delete some old code
2023-10-15 16:18:33 -07:00
c55d95505c
improve accuracy of manhattan rotations
2023-10-15 16:18:33 -07:00
97ccd8c303
fix missing tools prop
2023-10-15 16:18:33 -07:00
df4c867e5c
fix bounds
2023-10-15 16:18:33 -07:00
24fc97e7f5
update readme
2023-10-15 16:18:33 -07:00
91465b7175
don't keep track of y-mirroring separately from x
2023-10-15 16:18:33 -07:00
9bc8d29b85
renderbuilder fixes
2023-10-15 16:18:33 -07:00
9a28e1617c
renderpather, get_bounds includes repetitions, Boundable
2023-10-15 16:18:33 -07:00
22e1c6ae1d
fix bounds
2023-10-15 16:18:33 -07:00
87be06dcbe
pattern copy should be deep
2023-10-15 16:18:33 -07:00
bbc61a2fcd
wrong func name
2023-10-15 16:18:33 -07:00
e3c7150e18
missing import
2023-10-15 16:18:33 -07:00