55 Commits

Author SHA1 Message Date
30cfa0da31 Bump version to v3.3 2025-03-12 23:11:35 -07:00
6c76e1f5cf Add R90 and R180 constants for rotation shorthand 2025-03-12 23:04:51 -07:00
8d671ed709 bump version to v3.2
Highlights:
- Pather.path_into() for connecting into existing ports
- Pattern.plugged() for removing ports which were manually pathed into
  each other.
- Defined ordering/comparsions to enable sorting patterns and shapes
- numpy 2.0 compatibility
- Fix bounds calculation for arrays with manhattan rotations
- Bugfixes for DXF and OASIS
- Speed improvement for default Library.get_name() and GDS writing
2024-07-29 21:00:40 -07:00
4c721feaec re-exports: import x as x 2024-07-28 19:34:17 -07:00
c115780bc7 bump version to v3.1 2024-03-30 18:02:40 -07:00
jan
9a7a5583ed Add Tree/TreeView and allow Builder to ingest them 2023-10-20 23:14:47 -07:00
jan
d6ab8a1f34 Bump version to v3.0. Note that MAJOR BREAKING CHANGES were introduced almost everywhere in this version -- see the readme to understand how everything works now. 2023-10-15 23:12:33 -07:00
jan
3a6807707b Add more docs 2023-10-15 23:07:28 -07:00
jan
668d4b5d8b docstring updates 2023-10-15 18:31:58 -07:00
jan
2229ee5d25 surface BasicTool and PathTool at top level 2023-10-15 16:24:20 -07:00
jan
9a28e1617c renderpather, get_bounds includes repetitions, Boundable 2023-10-15 16:18:33 -07:00
jan
93ab0a942d misc fixes 2023-10-15 16:18:33 -07:00
jan
6b240de268 delete FlatBuilder (Builder subsumes it) 2023-10-15 16:18:33 -07:00
jan
5f24ceb13f add RenderPather 2023-10-15 16:18:33 -07:00
jan
08291da167 fixes 2023-10-15 16:18:33 -07:00
jan
f0a71bfb8b redo library class naming 2023-10-15 16:18:33 -07:00
jan
45265faec4 oneshot available at toplevel 2023-10-15 16:18:33 -07:00
jan
cbfbdf66a1 get rid of NamedPattern in favor of just returning a tuple 2023-10-15 16:18:33 -07:00
4fc2e67b62 Turn Builder into a subset of Pather 2023-10-15 16:18:32 -07:00
abc721cf67 ergonomics 2023-10-15 16:18:32 -07:00
a8da0fc429 add FlatBuilder 2023-10-15 16:18:32 -07:00
cb87543e0c import ports2data at top level 2023-10-15 16:18:32 -07:00
963918d1d9 various fixes and cleanup
mainly involving ports_to_data and data_to_ports
2023-10-15 16:18:32 -07:00
b75c8de0c4 lots of fixes to get test_rep running 2023-10-15 16:18:32 -07:00
a6cb276468 add AbstractView 2023-10-15 16:18:32 -07:00
3b8866732b PortsRef -> Abstract 2023-10-15 16:18:32 -07:00
6b01b43559 flake8-aided fixes 2023-10-15 16:18:32 -07:00
557c6c98dc more wip -- most central stuff is first pass done 2023-10-15 16:18:32 -07:00
jan
9efb6f0eeb wip 2023-10-15 16:18:32 -07:00
c7f3e7ee52 Remove support for dose
Since there isn't GDS/OASIS level support for dose, this can be mostly
handled by using arbitrary layers/dtypes directly. Dose scaling isn't
handled as nicely that way, but it corresponds more directly to what
gets written to file.
2023-10-15 16:18:32 -07:00
jan
7ca017d993 wip again 2023-10-15 16:18:32 -07:00
jan
7aaf73cb37 WIP: make libraries and names first-class! 2023-10-15 16:18:32 -07:00
5b5cbe94d3 Move from setuputils and setup.py to hatch and pyproject.toml 2023-01-11 17:37:36 -08:00
177f9952a5 Add builder submodule, Device and Port definitions, and DeviceLibrary 2020-11-09 22:09:47 -08:00
3653a33534 add implementation notes 2020-11-09 21:55:46 -08:00
ccb42e220f cosmetic and doc changes 2020-11-01 19:45:57 -08:00
b9322be77f move VERSION into a .py file that gets directly parsed by setup.py
avoids possible issues with pyinstaller
2020-11-01 19:45:31 -08:00
aa5696d884 Add Library management functionality 2020-09-26 17:37:23 -07:00
a02dfdc982 remove dependency list from top-level comment 2020-09-26 00:44:56 -07:00
49a3b4e322 add support for annotations
and other fixes
2020-09-20 16:32:17 -07:00
e330c34a0c import layer_t at top level 2020-09-20 16:32:17 -07:00
bab40474a0 Add repetitions and split up code into traits 2020-09-20 16:32:16 -07:00
ee8f015172 add subpattern_t type (generalizattion of SubPattern and GridRepetition) 2020-05-12 14:17:17 -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
e0db621595 allow locking of all objects 2019-12-13 21:18:31 -08:00
f471374b68 Use separate VERSION file 2019-09-27 21:03:52 -07:00
628845ca4b Bump version to 0.5 2019-04-07 17:53:32 -07:00
jan
c50bd8e148 Add GridRepetition: a SubPattern-like object which implements regular spatial arrays.
Also rework masque.file.gdsii to consolidate write() and
write_dose2dtype()
2019-03-31 20:57:10 -07:00
3ebb87bfc7 fix location of svgwrite dependency 2018-11-13 23:33:16 -08:00
ab483fc9d4 Remove pyclipper dependency; remove shape.cut() 2018-11-13 23:32:26 -08:00