5a42081f6a
write "long zero" for END record padding padding
2021-08-11 00:35:14 -07:00
c0e7d11ea2
remove old note
2021-08-11 00:34:37 -07:00
90ea0c2195
fix read_point_list when using numpy
2021-07-30 23:24:58 -07:00
f3be3deadb
Add tests
2021-07-30 23:24:45 -07:00
9c5b902a33
ignore missing numpy typing info
2021-07-30 22:47:28 -07:00
fd9f16d705
add implicit_closed arg to read_point_list()
...
The process for closing a point list depends on the delta type, so it
needs to happen at read time. However, paths aren't implicity closed, so
it needs to be an input option.
2021-07-30 22:47:12 -07:00
48d52f56c7
cast is_vertical to bool
2021-07-30 21:26:48 -07:00
d73e13d13b
Allow nonzero value count when using modal (but don't read any values)
2021-07-30 21:26:34 -07:00
a64f2726d0
Don't attempt to decode magic bytes
...
Since they're wrong, they're likely not decodable anyways.
2021-07-21 01:10:33 -07:00
25fe2067cd
Fix error check to not include properties
2021-07-11 17:14:19 -07:00
f8a65968cb
use new email
2021-07-11 17:12:54 -07:00
748bb497d1
strip newlines from version string
2021-07-11 17:12:46 -07:00
08ab2b41d5
bump version to v0.11
2021-01-08 09:44:19 -08:00
ba6b04d82d
fix version import
2021-01-08 09:43:47 -08:00
f9b8bf823b
bump version to v0.10
2020-11-03 01:28:20 -08:00
b996f5f27e
use VERSION.py instead of plain VERSION file
...
reduces reliance on package_data
2020-11-03 01:27:47 -08:00
60f879a1ad
style fixes (per flake8)
2020-10-16 19:00:00 -07:00
4a878aa7bf
fix type definition for modals
2020-10-16 18:59:45 -07:00
c1b79485a7
Bump version to v0.9
2020-09-10 20:04:15 -07:00
3ca999fa2e
documentation updates
2020-09-10 20:03:19 -07:00
3627b63658
Make records store their associated Property records.
...
Previously, `Property` records were (incorrectly) just associated with
the library or cell.
This requires a change to how `CellName`s are handled by `OasisLayout`,
since they can have associated properties. They now have their own
non-record object (like `XName`s did before) which holds the properties.
There is also now a `FileModals.property_target` attribute which tracks
which record new `Property` rescords should be associated with.
2020-09-10 20:03:01 -07:00
167b16e1c9
fix writing of property values
2020-09-10 19:55:03 -07:00
2c2013a0fc
move typing imports to top of file
2020-09-10 19:54:25 -07:00
a80ac6199a
Record type 17 (Placement) should not allow modal angle or magnification
2020-09-10 19:54:03 -07:00
97f2bb1238
add docs
to gitignore
2020-07-03 13:27:57 -07:00
bc15a66ecc
remove extra assignments to *_count and *_vector, and adjust validity checks
2020-07-03 13:27:34 -07:00
5ac774c386
drop OS tags from package
2020-07-03 13:22:29 -07:00
4b7b6b82c1
bump version to v0.8
2020-05-20 21:09:15 -07:00
94555c1b6e
Update modal coordinates even if we are in relative mode
2020-05-20 21:07:29 -07:00
86c1e4cd3b
bump version to v0.7
2020-05-19 00:52:52 -07:00
fdf5e9f598
enable type checking for downstream
2020-05-19 00:51:40 -07:00
fab80c8517
cosmetic change to code
2020-05-19 00:51:24 -07:00
492d6416db
Docstring updates: CTrapezoid info, Polygon+Path point_list description improvement, and better description of where x and y point to
2020-05-19 00:51:10 -07:00
aaef122178
fixup array equality checking in the case where _USE_NUMPY is false but we somehow still get an ndarray
...
mostly happens during testing
2020-05-19 00:49:42 -07:00
55638fcde5
fix placement rotation (float modulo int was always returning 0??)
2020-05-19 00:48:22 -07:00
99283aaaf0
enable passing in str where an AString or NString is needed.
2020-05-19 00:47:17 -07:00
705926d443
Add UnfilledModalError, records.verify_modal(), and .get_*() methods.
...
The .get_*() methods are used to verify that we aren't reading from a
pattern with un-filled modals.
The GeometryMixin class was also added here and provides some additional
convenience methods: get_xy() to get an (x,y) tuple and
get_layer_tuple() to get a (layer, datatype) tuple.
2020-05-19 00:42:42 -07:00
e4a62a0f32
fix write_interval for bounded intervals
2020-05-19 00:22:53 -07:00
715fe7ea24
fix non-numpy write_point_list
2020-05-19 00:21:50 -07:00
d25f3f1598
enable str() casts on NString and AString
2020-05-19 00:21:23 -07:00
e909aa958d
fix equality for things which may or may not be numpy arrays
2020-05-19 00:20:59 -07:00
411012079d
bifurctae read_bool_byte and write_bool_byte into _np_* and _py_* variants
2020-05-19 00:20:38 -07:00
f15499030d
only write the first byte -- probably no different but clearer
2020-05-19 00:17:31 -07:00
73310fe993
import repetitions at top level
2020-05-19 00:16:29 -07:00
3a2d889360
add mypy_cache to gitignore
2020-05-17 17:27:11 -07:00
3b01117329
Bump version number to v0.6
2020-04-18 15:55:20 -07:00
4c5f649eec
Force mypy to ignore a bunch of simple situations it's not smart enough to reason about
2020-04-18 15:52:36 -07:00
25b2cecec9
Minor changes to satisfy type checker
2020-04-18 15:50:58 -07:00
c9adca61b6
get_pathext may return None
2020-04-18 15:44:44 -07:00
1a259a1c19
Improve ctrapezoid validity checking
...
width/height might be None; check them against each other only if they
aren't. Also, perform checks after dedup/adjust.
2020-04-18 15:43:25 -07:00