22b2834d55
Documentation improvements
2020-05-17 22:59:54 -07:00
f9fb7ccad3
move gdsii import below standard packages
2020-05-17 17:22:50 -07:00
15dc00b63f
small example updates
2020-05-17 14:13:42 -07:00
5bd1e85d89
add experimental support for dxf
2020-05-17 14:13:01 -07:00
f260fe1374
comment fixup
2020-05-17 14:12:38 -07:00
8a404a2602
Allow setting subpattern identifier in constructors
2020-05-17 14:12:27 -07:00
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
247b31a9d6
Don't include None in referenced_patterns_by_id() by default
2020-05-17 14:05:19 -07:00
09cef1e754
add some more formats to gitignore
2020-05-16 19:59:17 -07:00
5c6c10d2be
fix repetition __repr__
2020-05-12 14:17:50 -07:00
f312f50751
some typing clarifications
2020-05-12 14:17:35 -07:00
ee8f015172
add subpattern_t type (generalizattion of SubPattern and GridRepetition)
2020-05-12 14:17:17 -07:00
6b09fc0c20
make section comments more prominent
2020-05-11 20:31:35 -07:00
a440f2e256
add Shape.set_layer()
2020-05-11 20:31:21 -07:00
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
c79eee2a8c
Stricter locking (lock contained ndarrays and turn lists into tuples)
2020-05-11 19:29:00 -07:00
79990e3806
cosmetic changes
2020-05-11 19:10:00 -07:00
157df47884
Improve type annotations based on mypy errors
2020-05-11 19:09:35 -07:00
bd4085365f
Path should create a Path, not a Polygon
2020-05-11 19:04:25 -07:00
9bfb3bef9f
avoid unnecessarily nested classes
...
Still provide a class variable for convenience
2020-05-11 19:03:55 -07:00
d33afc2bfd
disambiguate some variable names
2020-05-11 19:01:02 -07:00
f8e347c997
fix scale -> scale_by
2020-05-11 19:00:25 -07:00
8493364e9c
Use a tuple for .identifier
2020-05-11 18:59:47 -07:00
00394a62f0
Formally allow instances to point to None (i.e. an 'empty' pattern)
2020-05-11 18:58:57 -07:00
f8c49cdb5e
Add setter/getter for .pattern to catch wrong types
2020-05-11 18:52:17 -07:00
fa8fc52dd6
Improve consistency of ndarray members
2020-05-11 18:49:30 -07:00
9fa527ea11
improve handling of patterns with no bounding box
2020-05-11 18:42:31 -07:00
334633662e
Remove extra __author__ declarations
2020-05-11 18:41:13 -07:00
df179c9233
Improve type annotations for layer
2020-05-11 18:39:02 -07:00
95ab0934b7
bump version to v1.3
2020-03-14 15:54:20 -07:00
e9244055c6
Add type check for SubPattern's pattern arg
2020-03-14 15:53:35 -07:00
a4f556c3b3
clarify docs for referenced_patterns_by_id()
2020-03-14 15:53:05 -07:00
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
9f27a5093a
add Pattern.referenced_patterns_by_name()
2020-03-14 15:52:10 -07:00
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
20981f10b9
Fix error name
...
InvalidDataError -> PatternError
2020-02-16 18:17:28 -08:00
a930c65d42
fix gridrepetition mirror
2020-02-10 10:09:07 -08:00
2a53d8ef4d
bump version to 1.2
2020-02-07 23:49:53 -08:00
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
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
5ba67af816
bump version to 1.1
2019-12-31 13:56:18 -08:00
25c9e591cb
shapes: unlock before modifying during deepcopy
2019-12-13 21:18:31 -08:00
f2e6548d21
fix locking issue in __deepcopy__
2019-12-13 21:18:31 -08:00
e0db621595
allow locking of all objects
2019-12-13 21:18:31 -08:00
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
0118bf0eb3
update ellip_grating.py example to use new gdsii interface
2019-12-12 01:48:36 -08:00
df9c4b52f4
add some todos
2019-12-12 01:48:24 -08:00
fcc4770534
Mirroring fix for gdsii import
2019-12-11 21:16:31 -08:00
97b7eda21a
Force repetition counts to be integers
2019-12-06 22:28:11 -08:00
f3669f2dfd
fixup mirroring for subpatterns
2019-12-06 22:19:16 -08:00