Commit Graph

47 Commits (247b31a9d60b40dd3f5ee2bc4959ed6ca97aa1b2)

Author SHA1 Message Date
Jan Petykiewicz 247b31a9d6 Don't include None in referenced_patterns_by_id() by default 4 years ago
Jan Petykiewicz ee8f015172 add subpattern_t type (generalizattion of SubPattern and GridRepetition) 4 years ago
Jan Petykiewicz c236fdb81b Add __repr__ methods to most objects`
These are closer to what __str__ should be and will likely change in the
future.
4 years ago
Jan Petykiewicz c79eee2a8c Stricter locking (lock contained ndarrays and turn lists into tuples) 4 years ago
Jan Petykiewicz 79990e3806 cosmetic changes 4 years ago
Jan Petykiewicz 157df47884 Improve type annotations based on mypy errors 4 years ago
Jan Petykiewicz d33afc2bfd disambiguate some variable names 4 years ago
Jan Petykiewicz f8e347c997 fix scale -> scale_by 4 years ago
Jan Petykiewicz 00394a62f0 Formally allow instances to point to None (i.e. an 'empty' pattern) 4 years ago
Jan Petykiewicz 334633662e Remove extra __author__ declarations 4 years ago
Jan Petykiewicz a4f556c3b3 clarify docs for referenced_patterns_by_id() 4 years ago
Jan Petykiewicz e684bd0e40 add Pattern.find_toplevel()
Topological sort for lists of Pattern objects, useful for finding top
cell of gds
4 years ago
Jan Petykiewicz 9f27a5093a add Pattern.referenced_patterns_by_name() 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 e5f28a7a92 Fix Pattern.get_bounds() 5 years ago
Jan Petykiewicz 6801ee7fc0 Account for rotation/mirror in Pattern.dfs() 5 years ago
Jan Petykiewicz b5bd7cd9c8 Pattern.get_bounds() should return None if it's empty
s
5 years ago
Jan Petykiewicz 02c3d300e0 Wrap long lines (cosmetic) 5 years ago
Jan Petykiewicz 194a90fe7a Add Pattern.dfs()
Depth-first traversal with hierarchy and transform tracking
5 years ago
Jan Petykiewicz 503a77925e Move away from __dict__ style save/load
Incompatible with previous versions, but necessary given the move to
__slots__.

Also use pickle.HIGHEST_PROTOCOL
5 years ago
Jan Petykiewicz 28084dfe45 Make name the first argument to Pattern() init
Major incompatibility with previous versions!!
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 a6a3ae797c Fix Pattern.scale_by() for labels
Label offsets weren't being scaled.
5 years ago
Jan Petykiewicz a461446059 Custom deepcopy() implementations to help speed things up 5 years ago
Jan Petykiewicz b8b848c28f add Pattern.is_empty() 5 years ago
Jan Petykiewicz 347716ec6e Give shapes unique path-like identifiers when flattening 5 years ago
Jan Petykiewicz 90a068da80 tabs-to-spaces 5 years ago
jan c50bd8e148 Add GridRepetition: a SubPattern-like object which implements regular spatial arrays.
Also rework masque.file.gdsii to consolidate write() and
write_dose2dtype()
5 years ago
jan 108694551b add support for labels (e.g. GDS TEXT) 6 years ago
jan 4840c321c5 rename param for do_subset 6 years ago
jan 6fda991700 Rewrite/fix apply() implementation 6 years ago
jan 082236b6fd add missing arg 6 years ago
jan cc35ff802e clean up comments 6 years ago
jan 4c3250a2a1 add recursive option to subset 6 years ago
jan f875ae89d7 make sure apply() only hits each pattern one 6 years ago
jan 52adb582dc copy name when using Pattern.subset() 6 years ago
jan 79ac6a59e4 Fix mirror axis in Pattern.mirror() 6 years ago
jan f580e784f7 Add mirroring functions to patterns/subpatterns 6 years ago
jan 37a55e0d9b Add deepcopy() convenience method to Pattern 6 years ago
jan 3e06214b7e Add recursive "apply()" helper to pattern 6 years ago
jan ffbaf8f4c4 Add manhattanization functionality 7 years ago
jan 934bfcd74e Clean up type info 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