Commit Graph

436 Commits

Author SHA1 Message Date
Jan Petykiewicz
d7a8bd7e0d Allow b_count=None 2020-05-17 23:00:25 -07:00
Jan Petykiewicz
22b2834d55 Documentation improvements 2020-05-17 22:59:54 -07:00
Jan Petykiewicz
f9fb7ccad3 move gdsii import below standard packages 2020-05-17 17:22:50 -07:00
Jan Petykiewicz
15dc00b63f small example updates 2020-05-17 14:13:42 -07:00
Jan Petykiewicz
5bd1e85d89 add experimental support for dxf 2020-05-17 14:13:01 -07:00
Jan Petykiewicz
f260fe1374 comment fixup 2020-05-17 14:12:38 -07:00
Jan Petykiewicz
8a404a2602 Allow setting subpattern identifier in constructors 2020-05-17 14:12:27 -07:00
Jan Petykiewicz
8302286a7a allow using a string for the layer
Can't use it in gdsii, but no reason to forbit it in masque...
2020-05-17 14:11:47 -07:00
Jan Petykiewicz
247b31a9d6 Don't include None in referenced_patterns_by_id() by default 2020-05-17 14:05:19 -07:00
Jan Petykiewicz
09cef1e754 add some more formats to gitignore 2020-05-16 19:59:17 -07:00
Jan Petykiewicz
5c6c10d2be fix repetition __repr__ 2020-05-12 14:17:50 -07:00
Jan Petykiewicz
f312f50751 some typing clarifications 2020-05-12 14:17:35 -07:00
Jan Petykiewicz
ee8f015172 add subpattern_t type (generalizattion of SubPattern and GridRepetition) 2020-05-12 14:17:17 -07:00
Jan Petykiewicz
6b09fc0c20 make section comments more prominent 2020-05-11 20:31:35 -07:00
Jan Petykiewicz
a440f2e256 add Shape.set_layer() 2020-05-11 20:31:21 -07:00
Jan Petykiewicz
c236fdb81b Add __repr__ methods to most objects`
These are closer to what __str__ should be and will likely change in the
future.
2020-05-11 20:31:07 -07:00
Jan Petykiewicz
c79eee2a8c Stricter locking (lock contained ndarrays and turn lists into tuples) 2020-05-11 19:29:00 -07:00
Jan Petykiewicz
79990e3806 cosmetic changes 2020-05-11 19:10:00 -07:00
Jan Petykiewicz
157df47884 Improve type annotations based on mypy errors 2020-05-11 19:09:35 -07:00
Jan Petykiewicz
bd4085365f Path should create a Path, not a Polygon 2020-05-11 19:04:25 -07:00
Jan Petykiewicz
9bfb3bef9f avoid unnecessarily nested classes
Still provide a class variable for convenience
2020-05-11 19:03:55 -07:00
Jan Petykiewicz
d33afc2bfd disambiguate some variable names 2020-05-11 19:01:02 -07:00
Jan Petykiewicz
f8e347c997 fix scale -> scale_by 2020-05-11 19:00:25 -07:00
Jan Petykiewicz
8493364e9c Use a tuple for .identifier 2020-05-11 18:59:47 -07:00
Jan Petykiewicz
00394a62f0 Formally allow instances to point to None (i.e. an 'empty' pattern) 2020-05-11 18:58:57 -07:00
Jan Petykiewicz
f8c49cdb5e Add setter/getter for .pattern to catch wrong types 2020-05-11 18:52:17 -07:00
Jan Petykiewicz
fa8fc52dd6 Improve consistency of ndarray members 2020-05-11 18:49:30 -07:00
Jan Petykiewicz
9fa527ea11 improve handling of patterns with no bounding box 2020-05-11 18:42:31 -07:00
Jan Petykiewicz
334633662e Remove extra __author__ declarations 2020-05-11 18:41:13 -07:00
Jan Petykiewicz
df179c9233 Improve type annotations for layer 2020-05-11 18:39:02 -07:00
Jan Petykiewicz
95ab0934b7 bump version to v1.3 2020-03-14 15:54:20 -07:00
Jan Petykiewicz
e9244055c6 Add type check for SubPattern's pattern arg 2020-03-14 15:53:35 -07:00
Jan Petykiewicz
a4f556c3b3 clarify docs for referenced_patterns_by_id() 2020-03-14 15:53:05 -07:00
Jan Petykiewicz
e684bd0e40 add Pattern.find_toplevel()
Topological sort for lists of Pattern objects, useful for finding top
cell of gds
2020-03-14 15:52:49 -07:00
Jan Petykiewicz
9f27a5093a add Pattern.referenced_patterns_by_name() 2020-03-14 15:52:10 -07:00
jan
5adabfd25a Docstring format change
(new param and return format)
Also some minor code formatting fixes in utils
2020-02-17 21:02:53 -08:00
jan
20981f10b9 Fix error name
InvalidDataError -> PatternError
2020-02-16 18:17:28 -08:00
jan
a930c65d42 fix gridrepetition mirror 2020-02-10 10:09:07 -08:00
Jan Petykiewicz
2a53d8ef4d bump version to 1.2 2020-02-07 23:49:53 -08:00
Jan Petykiewicz
0db70d2c50 Change GridRepetition rotation/mirrored/scale properties so that they consistently apply only to the individual instances; the rotate()/mirror()/scale_by() functions apply to the full array. Add *_elements() versions of the functions 2020-02-07 23:01:14 -08:00
Jan Petykiewicz
64b8e4dec8 Fix duplicates in gds with multiple top-level cells
Since the different patterns we are handed might reference the same
Patterns, we have to deepcopy the entire list at once so that we
don't make multiple copies of them.
2020-01-07 22:17:00 -08:00
jan
5ba67af816 bump version to 1.1 2019-12-31 13:56:18 -08:00
Jan Petykiewicz
25c9e591cb shapes: unlock before modifying during deepcopy 2019-12-13 21:18:31 -08:00
Jan Petykiewicz
f2e6548d21 fix locking issue in __deepcopy__ 2019-12-13 21:18:31 -08:00
Jan Petykiewicz
e0db621595 allow locking of all objects 2019-12-13 21:18:31 -08:00
Jan Petykiewicz
09711116a7 allow more freedom in pattern names (e.g. names which violate spec, longer suffixes, filter warning, etc) 2019-12-12 01:48:36 -08:00
Jan Petykiewicz
0118bf0eb3 update ellip_grating.py example to use new gdsii interface 2019-12-12 01:48:36 -08:00
Jan Petykiewicz
df9c4b52f4 add some todos 2019-12-12 01:48:24 -08:00
Jan Petykiewicz
fcc4770534 Mirroring fix for gdsii import 2019-12-11 21:16:31 -08:00
Jan Petykiewicz
97b7eda21a Force repetition counts to be integers 2019-12-06 22:28:11 -08:00