Commit graph

  • 9767ee4e62 [Pattern] improve atomicity of place(), plug(), interface() pather_rework Jan Petykiewicz 2026-03-31 23:00:35 -07:00
  • 395ad4df9d [PortList] plugged() failure shouldn't dirty the ports Jan Petykiewicz 2026-03-31 22:38:27 -07:00
  • 35b42c397b [Pattern.append] don't dirty pattern if append() fails Jan Petykiewicz 2026-03-31 22:37:16 -07:00
  • 6a7b3b2259 [PorList] Error if multiple ports are renamed to the same name Jan Petykiewicz 2026-03-31 22:15:48 -07:00
  • 8d50f497f1 [repetition / others] copies should get their own repetitions Jan Petykiewicz 2026-03-31 22:15:21 -07:00
  • 2176d56b4c [Arc] Error out on zero radius Jan Petykiewicz 2026-03-31 22:03:42 -07:00
  • f1e25debec [Ellipse] force radii to float dtype Jan Petykiewicz 2026-03-31 22:03:19 -07:00
  • 4b07bb9e25 [OASIS] raise PatternError for unsuppored caps Jan Petykiewicz 2026-03-31 21:42:49 -07:00
  • 2952e6ef8f [Arc / Ellipse / Circle] gracefully handle large arclen Jan Petykiewicz 2026-03-31 21:42:16 -07:00
  • c303a0c114 [Ellipse / Arc] improve bounds calculation Jan Petykiewicz 2026-03-31 21:41:49 -07:00
  • f34b9b2f5c [Text] fixup bounds and normalized form Jan Petykiewicz 2026-03-31 21:22:35 -07:00
  • 89cdd23f00 [Arc / Ellipse] make radii hashable Jan Petykiewicz 2026-03-31 21:22:15 -07:00
  • 620b001af5 [ILibrary] fix dedup messing up rotations Jan Petykiewicz 2026-03-31 21:21:16 -07:00
  • 46a3559391 [dxf] fix dxf repetition load Jan Petykiewicz 2026-03-31 21:19:29 -07:00
  • 08421d6a54 [OASIS] repeated property keys should be merged, not overwritten Jan Petykiewicz 2026-03-31 19:00:38 -07:00
  • 462a05a665 [Library] fix dedup() Jan Petykiewicz 2026-03-31 18:58:37 -07:00
  • 2b29e46b93 [Pather] fix port rename/deletion tracking Jan Petykiewicz 2026-03-31 18:49:41 -07:00
  • 2e0b64bdab [Ref / Label] make equality safe for unrelated types Jan Petykiewicz 2026-03-31 17:51:02 -07:00
  • 20c845a881 [Tool] avoid passing port_names down Jan Petykiewicz 2026-03-31 17:12:41 -07:00
  • 707a16fe64 [RenderStep] fix mirroring a planned path Jan Petykiewicz 2026-03-31 17:11:26 -07:00
  • 932565d531 [Repetition] fix ordering Jan Petykiewicz 2026-03-31 17:10:19 -07:00
  • e7f847d4c7 [Pather] make two-L path planning atomic (don't error out with only one half drawn) Jan Petykiewicz 2026-03-31 09:28:48 -07:00
  • 3beadd2bf0 [Path] preserve cap extensions in normalized form, and scale them with scale() Jan Petykiewicz 2026-03-31 09:23:59 -07:00
  • 1bcf5901d6 [Path] preserve width from normalized form Jan Petykiewicz 2026-03-31 09:23:19 -07:00
  • 56e401196a [PathTool] fix pathtool L-shape Jan Petykiewicz 2026-03-31 00:25:14 -07:00
  • 83ec64158a [AutoTool] fix exact s-bend validation Jan Petykiewicz 2026-03-31 00:24:52 -07:00
  • aa7007881f [pack2d] bin-packing fixes Jan Petykiewicz 2026-03-31 00:16:58 -07:00
  • d03fafcaf6 [ILibraryView] don't fail on nested dangling ref Jan Petykiewicz 2026-03-30 23:34:31 -07:00
  • d3be6aeba3 [PortList] add_port_pair requires unique port names Jan Petykiewicz 2026-03-30 23:33:33 -07:00
  • ffbe15c465 [Port / PortList] raise PortError on missing port name Jan Petykiewicz 2026-03-30 23:30:03 -07:00
  • b44c962e07 [Pattern] improve error handling in place() Jan Petykiewicz 2026-03-30 22:11:50 -07:00
  • 20bd0640e1 [Library] improve handling of dangling refs Jan Petykiewicz 2026-03-30 22:10:26 -07:00
  • 4ae8115139 [DeferredDict] implement get/items/values for deferreddict Jan Petykiewicz 2026-03-30 22:07:05 -07:00
  • c2ef3e4217 [test] data_to_ports should accurately preserve ports from a scaled ref Jan Petykiewicz 2026-03-30 21:19:10 -07:00
  • c32168dc64 [ILibraryView / Pattern] flatten() should raise PatternError if asked to preserve ports from a repeated ref Jan Petykiewicz 2026-03-30 21:17:33 -07:00
  • b843ffb4d3 [ILibraryView / Pattern] flatten() shouldn't drop ports-only patterns if flatten_ports=True Jan Petykiewicz 2026-03-30 21:11:00 -07:00
  • 9adfcac437 [Ref] don't shadow ref property Jan Petykiewicz 2026-03-30 21:07:13 -07:00
  • 26cc0290b9 [Abstract] respect ref scale Jan Petykiewicz 2026-03-30 21:06:51 -07:00
  • 548b51df47 [Port] fix printing of None rotation Jan Petykiewicz 2026-03-30 20:25:45 -07:00
  • 06f8611a90 [svg] fix rotation in svg Jan Petykiewicz 2026-03-30 20:24:24 -07:00
  • 9ede16df5d [dxf] fix reading Polyline Jan Petykiewicz 2026-03-30 20:22:40 -07:00
  • add82e955d update dev deps Jan Petykiewicz 2026-03-30 19:39:25 -07:00
  • cfec9e8c76 [euler_bend] speed up integration jan 2026-03-10 00:47:50 -07:00
  • 2275bf415a [Pattern] improve error message when attempting to reference a Pattern jan 2026-03-10 00:31:58 -07:00
  • fa3dfa1e74 [Pattern] improve clarity of .copy()->.deepcopy() jan 2026-03-10 00:31:11 -07:00
  • 75dc391540 [pack2d] don't place rejects jan 2026-03-10 00:29:51 -07:00
  • feb5d87cf4 [repetition.Arbitrary] fix zero-sized bounds jan 2026-03-10 00:29:10 -07:00
  • 5f91bd9c6c [BREAKING][Ref / Label / Pattern] Make rotate/mirror consistent intrinsic transfomations jan 2026-03-09 23:34:25 -07:00
  • db22237369 [PathCap] clean up comment jan 2026-03-09 11:20:04 -07:00
  • a6ea5c08e6 [repetition.Grid] drop b_vector=None handling (guaranteed to be zeros now) jan 2026-03-09 11:19:42 -07:00
  • 3792248cd1 [dxf] improve dxf reader (ezdxf 1.4 related LWPolyLine changes) jan 2026-03-09 11:16:30 -07:00
  • e8083cc24c [dxf] hide ezdxf warnings directly jan 2026-03-09 03:37:42 -07:00
  • d307589995 [ports2data] add note about using id rather than name jan 2026-03-09 03:29:19 -07:00
  • ea93a7ef37 [remove_colinear_vertices / Path] add preserve_uturns and use it for paths jan 2026-03-09 03:28:31 -07:00
  • 495babf837 [Path] revert endcap changes to avoid double-counting jan 2026-03-09 03:27:39 -07:00
  • 5d20a061fd [Path / Polygon] improve normalized_form approach to follow documented order jan 2026-03-09 02:41:41 -07:00
  • 25b8fe8448 [Path.to_polygons] Use linalg.solve() where possible; fallback to lstsq if singular jan 2026-03-09 02:41:15 -07:00
  • f154303bef [remove_colinear_vertices] treat unclosed paths correctly jan 2026-03-09 02:38:33 -07:00
  • 5596e2b1af [tests] cover scale-aware transform jan 2026-03-09 02:35:35 -07:00
  • 6c42049b23 [PortList] actually raise the error jan 2026-03-09 02:34:57 -07:00
  • da20922224 [apply_transform] include scale in transform jan 2026-03-09 02:34:11 -07:00
  • b8ee4bb05d [ell] fix set_rotation check jan 2026-03-09 02:32:20 -07:00
  • 169f66cc85 [rotation_matrix_2d] improve manhattan angle detection jan 2026-03-09 01:16:54 -07:00
  • a38c5bb085 [ports2data] deal with cycles better jan 2026-03-09 01:15:42 -07:00
  • 0ad89d6d95 [DeferredDict] capture value in set_const jan 2026-03-09 01:10:26 -07:00
  • 6c96968341 [Path] improve robustness of intersection calculations jan 2026-03-09 01:09:37 -07:00
  • b7143e3287 [repetition.Grid] fix __le__ comparison of b_vector jan 2026-03-09 01:08:35 -07:00
  • 0cce5e0586 [Ref] misc copy fixes -- don't deepcopy repetition or annotations in __copy__ jan 2026-03-09 01:07:50 -07:00
  • 36cb86a15d [tests] clean unused imports jan 2026-03-09 00:20:29 -07:00
  • 5e0936e15f [dxf] update ezdxf dep jan 2026-03-09 00:18:06 -07:00
  • a467a0baca [Path] simplify conditional jan 2026-03-09 00:17:50 -07:00
  • 564ff10db3 [dxf] add roundtrip dxf test, enable refs and improve path handling jan 2026-03-09 00:17:23 -07:00
  • e261585894 [gdsii] Try to close files if able jan 2026-03-08 23:09:45 -07:00
  • f42114bf43 [gdsii] explicitly cast cap_extensions to int jan 2026-03-08 22:47:22 -07:00
  • 5eb460ecb7 [repetition.Grid] disallow b_vector=None (except when initializing) jan 2026-03-08 22:43:58 -07:00
  • fb822829ec [Polygon] rect() should call rectangle() with positive width/height jan 2026-03-08 22:42:48 -07:00
  • 838c742651 [Path] Improve comparisons: compare vertices jan 2026-03-08 22:41:37 -07:00
  • 9a76ce5b66 [Path] cap_extensions=None should mean [0, 0] when using custom extensions jan 2026-03-08 22:41:11 -07:00
  • 2019fc0d74 [Path] Circular cap extensions should translate to square, not empty jan 2026-03-08 22:40:08 -07:00
  • e3f8d28529 [Path] improve __lt__ for endcaps jan 2026-03-08 22:37:30 -07:00
  • 9296011d4b [Ref] deepcopy annotations and repetitions jan 2026-03-08 22:34:39 -07:00
  • 92d0140093 [Pattern] fix pattern comparisons jan 2026-03-08 22:33:59 -07:00
  • c4dc9f9573 [oasis] comment and code cleanup jan 2026-03-08 22:32:16 -07:00
  • 0b8e11e8bf [dxf] improve manhattan check robustness jan 2026-03-08 22:31:18 -07:00
  • 5989e45906 [apply_transforms] fix handling of rotations while mirrored jan 2026-03-08 21:38:47 -07:00
  • 7eec2b7acf [LazyLibrary] report full cycle when one is detected jan 2026-03-08 21:18:54 -07:00
  • 2a6458b1ac [repetitions.Arbitrary] reassign to displacements when scaling or mirroring to trigger re-sort jan 2026-03-08 20:43:33 -07:00
  • 9ee3c7ff89 [ILibrary] make referenced_patterns more robust to cyclical dependencies jan 2026-03-08 20:01:00 -07:00
  • 3bedab2301 [ports2data] Make port label parsing more robust jan 2026-03-08 19:58:56 -07:00
  • 4eb1d8d486 [gdsii] fix missing paren in message jan 2026-03-08 19:57:49 -07:00
  • 3ceeba23b8 [tests] move imports into functions jan 2026-03-08 19:00:20 -07:00
  • 963103b859 [Pattern / Library] add resolve_repeated_refs jan 2026-03-08 15:15:53 -07:00
  • e5a6aab940 [dxf] improve repetition handling jan 2026-03-08 15:15:28 -07:00
  • 042941c838 [DeferredDict] improve handling of constants jan 2026-03-08 15:05:08 -07:00
  • 0f63acbad0 [AutoSlots] deduplicate slots entries jan 2026-03-08 15:01:27 -07:00
  • a0d7d0ed26 [annotations] fix annotations_eq jan 2026-03-08 14:56:13 -07:00
  • d32a5ee762 [dxf] fix typos jan 2026-03-08 14:51:51 -07:00
  • 19dafad157 [remove_duplicate_vertices] improve handling of degenerate shapes jan 2026-03-08 10:24:25 -07:00
  • 5cb608734d [poly_contains_points] consistently return boolean arrays jan 2026-03-08 10:17:52 -07:00
  • d0b48e6bfc [tests] fix some tests jan 2026-03-08 10:15:09 -07:00