jan
8c3b3311f7
round().astype() -> rint(...)
2 years ago
jan
75adceda8b
Remove object locking/unlocking.
...
- It was *slow*. Often >50% of runtime for large designs.
- It didn't catch all corner cases. True immutability would require
language-level support.
- (minor) It doesn't play nice with type checking via mypy.
2 years ago
jan
a4aa50d814
fix another instance where numpy prohibits using `not bounds`
2 years ago
jan
20be409341
fix numpy complaining about .any() / .all()
2 years ago
jan
a4fe3d9e2e
Use ArrayLike and NDArray wherever possible. Some type fixes and some related corner cases
2 years ago
jan
89f327ba37
reformat some multiline arg lists and add missing 'None' return types
2 years ago
Jan Petykiewicz
4796676a4e
use ArrayLike when accepting pseudo-ndarrays
3 years ago
Jan Petykiewicz
f364970403
style and type fixes (per flake8)
...
could potentially fix some bugs in `Library` class and dxf reader
4 years ago
Jan Petykiewicz
c6684936cf
Improve docs, error messages, and type annotations
4 years ago
Jan Petykiewicz
f51144ae6a
misc doc/import/typing fixes
4 years ago
Jan Petykiewicz
49a3b4e322
add support for annotations
...
and other fixes
4 years ago
Jan Petykiewicz
d14182998b
various fixes
4 years ago
Jan Petykiewicz
629a6a9ba2
enable per-shape repetitions
4 years ago
Jan Petykiewicz
bab40474a0
Add repetitions and split up code into traits
4 years ago
Jan Petykiewicz
8302286a7a
allow using a string for the layer
...
Can't use it in gdsii, but no reason to forbit it in masque...
4 years ago
Jan Petykiewicz
6b09fc0c20
make section comments more prominent
4 years ago
Jan Petykiewicz
a440f2e256
add Shape.set_layer()
4 years ago
Jan Petykiewicz
c79eee2a8c
Stricter locking (lock contained ndarrays and turn lists into tuples)
4 years ago
Jan Petykiewicz
157df47884
Improve type annotations based on mypy errors
4 years ago
Jan Petykiewicz
334633662e
Remove extra __author__ declarations
4 years ago
Jan Petykiewicz
df179c9233
Improve type annotations for layer
4 years ago
jan
5adabfd25a
Docstring format change
...
(new param and return format)
Also some minor code formatting fixes in utils
4 years ago
Jan Petykiewicz
e0db621595
allow locking of all objects
5 years ago
Jan Petykiewicz
032c410b43
Add mirror_x to extrinsic properties
...
It's not implemented for Polygon shapes, since I haven't thought about
how to normalize those for reflection yet
5 years ago
Jan Petykiewicz
16c6bfc70a
Cosmetic changes to argument lists
5 years ago
Jan Petykiewicz
38f64f7c62
Use __slots__ for class members
...
Also use the other sort of type hints for instance variables
5 years ago
Jan Petykiewicz
9ab1372c7b
Allow shapes to carry an arbitrary identifier (Tuple)
5 years ago
Jan Petykiewicz
8fe8bbd655
Normalization-related fixes
5 years ago
Jan Petykiewicz
e3586a4574
fix variable names (manhattanize_fast fixes)
5 years ago
Jan Petykiewicz
c6830abe22
Fix corners in manhattanize_fast
5 years ago
Jan Petykiewicz
5bce2005b6
Add docstring for manhattanize_fast
6 years ago
Jan Petykiewicz
ab483fc9d4
Remove pyclipper dependency; remove shape.cut()
6 years ago
jan
86068102d9
Clarify that layer can be a tuple
6 years ago
jan
d5a255a9d7
Add mirror() to shapes
...
Might need to fix ordering on Text.to_polygons()
6 years ago
jan
e2b05d7c86
add fast approximate manhattanization function
7 years ago
Jan Petykiewicz
9308454ad4
allow cutting any shape, always require pyclipper
7 years ago
Jan Petykiewicz
b3f99ee123
abs when thresholding raster for manhattanization
7 years ago
jan
a817bf6642
Remove debug code
7 years ago
jan
10cd0778b8
Add copy() method to Shape
7 years ago
jan
ffbaf8f4c4
Add manhattanization functionality
7 years ago
jan
b99509289a
Let layer be a tuple of ints (or just a single int like before)
7 years ago
jan
0a7c26bb08
No need to subclass 'object' in python3
7 years ago
jan
5bf486ac81
Add all files to repository
8 years ago