0ab5674fb9
strans needs starting value (0)
2019-05-20 21:04:07 -07:00
02c3d300e0
Wrap long lines (cosmetic)
2019-05-18 15:05:38 -07:00
75b42f6b63
Use normalize_mirror for all 2d-to-1d mirroring
2019-05-18 15:05:30 -07:00
194a90fe7a
Add Pattern.dfs()
...
Depth-first traversal with hierarchy and transform tracking
2019-05-18 15:05:05 -07:00
76f213a7ce
use .identifier instead of the dynamically-created .ref_name
2019-05-17 20:51:53 -07:00
ca80b14ee4
Fix text get_bounds
...
was addressing list using numpy slices
2019-05-17 01:20:10 -07:00
67c9b510cb
Rename svg functions to reflect their gds counterparts
...
Backwards incompatible!
2019-05-17 01:16:18 -07:00
503a77925e
Move away from __dict__ style save/load
...
Incompatible with previous versions, but necessary given the move to
__slots__.
Also use pickle.HIGHEST_PROTOCOL
2019-05-17 00:44:10 -07:00
28084dfe45
Make name the first argument to Pattern() init
...
Major incompatibility with previous versions!!
2019-05-17 00:42:55 -07:00
a154555902
Add TODO noting that polygon mirroring could be normalized
2019-05-17 00:42:14 -07:00
f00d283c56
Add missing imports
2019-05-17 00:41:43 -07:00
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
2019-05-17 00:41:26 -07:00
2e54cf1080
initialize identifier for text shapes
2019-05-17 00:39:56 -07:00
16c6bfc70a
Cosmetic changes to argument lists
2019-05-17 00:39:46 -07:00
58353b7884
Remove orphaned comment
2019-05-17 00:38:20 -07:00
38f64f7c62
Use __slots__ for class members
...
Also use the other sort of type hints for instance variables
2019-05-17 00:37:56 -07:00
0b962999b2
Add arbitrary identifier for labels and subpattern/repetition
2019-05-17 00:34:01 -07:00
703c1aa6d8
Custom deepcopy for labels
2019-05-17 00:32:51 -07:00
17451cd995
Force dose2dtype to accept only a list of patterns
...
Backwards incompatible, just like the rest of the gdsii rework
2019-05-17 00:30:32 -07:00
1ef8518c60
Fix dose2dtype
...
Was broken during gdsii refactor
2019-05-17 00:28:46 -07:00
a6a3ae797c
Fix Pattern.scale_by() for labels
...
Label offsets weren't being scaled.
2019-05-15 23:51:51 -07:00
4bd5542ce9
Clarify warning when adding suffix
2019-05-15 23:51:17 -07:00
3ff9a8a506
Shorten long names when writing
...
Maybe turn this into an option later?
2019-05-15 23:51:00 -07:00
376cbcce26
Use buffered IO
...
free ~10% speedup on read, probably similar on write
2019-05-15 23:50:31 -07:00
a461446059
Custom deepcopy() implementations to help speed things up
2019-05-15 00:19:37 -07:00
94410dffc9
Fix clockwise (to-perp) path bends
2019-05-15 00:18:43 -07:00
2909b25fd7
Missing args for commit bc43be48bc
(cap_extensions)
2019-05-15 00:17:40 -07:00
a44a7c176e
Add type hints
2019-05-15 00:14:35 -07:00
bc43be48bc
Implement SquareCustom end-caps and gds output
2019-05-15 00:14:17 -07:00
d5665f54a7
Comment and type hint updates
2019-05-15 00:12:34 -07:00
b8b848c28f
add Pattern.is_empty()
2019-05-15 00:11:44 -07:00
0bbcf3823a
Fix .gz suffix detection
2019-05-15 00:11:28 -07:00
347716ec6e
Give shapes unique path-like identifiers when flattening
2019-05-13 23:55:42 -07:00
9ab1372c7b
Allow shapes to carry an arbitrary identifier (Tuple)
2019-05-13 23:55:14 -07:00
380393dbc3
Fix mirror axis for arrays
2019-05-07 00:58:39 -07:00
5741b38ca6
fixup remove_colinear_vertices
2019-05-06 21:07:53 -07:00
ee6699a7de
fix alternate polygon constructors
2019-04-20 15:44:45 -07:00
0018891200
handle defaults for path params
2019-04-20 15:42:42 -07:00
485a7bc29d
General overhaul of gdsii read/write functions
...
- read() and write() now take streams instead of filenames
- readfile() and writefile() were added to handle filenames and can
detect and handle '.gz' suffixed/compressed files.
- write_dose2dtype() and and read_dtype2dose() were removed in favor of
read(use_dtype_as_dose=True) and dose2dtype()
2019-04-20 15:29:56 -07:00
d6d26b4e46
Add modify_originals param and don't modify the pattern by default
2019-04-20 15:26:27 -07:00
783c0c0844
Add support for gds paths
2019-04-20 15:25:19 -07:00
d53c9487ff
Comment and error-checking fixes
2019-04-20 14:19:18 -07:00
8fe8bbd655
Normalization-related fixes
2019-04-20 14:18:52 -07:00
c6fac19fe0
Set standard constructor arg order and add rotation
and mirrored
args where reasonable
2019-04-20 14:18:25 -07:00
8dfb6d4440
Move vertex-cleanup functions to utils and generalize for non-closed paths
2019-04-20 00:35:53 -07:00
79c89b2a4b
Rename empty-named patterns on gdsii save
2019-04-18 01:14:08 -07:00
9ecd34b2f7
Cast offsets to float
2019-04-18 01:12:51 -07:00
8987cf8c44
mirror_signs are per-coordinate, not per-vector
2019-04-18 01:12:33 -07:00
e3586a4574
fix variable names (manhattanize_fast fixes)
2019-04-16 22:24:43 -07:00
c6830abe22
Fix corners in manhattanize_fast
2019-04-16 00:42:48 -07:00