Commit Graph

2128 Commits

Author SHA1 Message Date
Matthias Koefferlein cdd7058866 Mitigating the effect of a locked layout: plain iteration of instances now is possible also with a locked layout. Before, the instances were correctly iterated only if the layout could be sorted. 2024-10-27 23:42:16 +01:00
Matthias Koefferlein 946729f14d Adding forced update to Layout writer to ensure proper files. A warning is given. 2024-10-26 22:46:09 +02:00
Matthias Koefferlein 1407ae13a7 Also provide layout locking for recursive instance iterator 2024-10-26 21:40:41 +02:00
Matthias Koefferlein 0c0baed664 Avoiding a layout lock on Region::empty. 2024-10-26 21:24:01 +02:00
Matthias Koefferlein a83e58b8de Solving potential thread collision issues upon Layout::update. 2024-10-26 21:21:28 +02:00
Matthias Koefferlein 049c0b73b0 Debugging, added tests for new recursive shape iterator. 2024-10-25 23:13:40 +02:00
Matthias Koefferlein bea707a9df Releasing the lock when the iterator is at end - otherwise a finished iterator could still block the layout (potential Ruby GC issue) 2024-10-25 00:40:42 +02:00
Matthias Koefferlein c1757c472e First steps towards fix: locking layout while recursive shape iterator is alive. 2024-10-25 00:36:28 +02:00
Matthias Köfferlein 78ec69f7b7
Merge pull request #1890 from KLayout/issue-1886
Issue #1886 fixed (doc update)
2024-10-19 16:31:30 +02:00
Matthias Koefferlein eeb05e47a5 Issue #1886 fixed (doc update) 2024-10-12 21:00:07 +02:00
Matthias Koefferlein 0dd7dfb48a Fixed issue #1874 (crash when copying a cell to another layout) 2024-09-28 17:53:26 +02:00
Matthias Koefferlein 4c33032f93 Merge branch 'better-not-break' 2024-09-22 20:08:10 +02:00
Matthias Köfferlein 2d57feeae8
Merge pull request #1851 from KLayout/bugfix/issue-1832
Bugfix/issue 1832
2024-09-21 20:33:53 +02:00
Matthias Köfferlein ff0a2b8ab7
Merge pull request #1850 from KLayout/wip
Wip
2024-09-21 20:33:21 +02:00
Matthias Köfferlein cb984fb4b5
Merge pull request #1865 from KLayout/bugfix/issue-1864
Fixing issue #1864 (Copy & paste allows creating a recursive hierarchy)
2024-09-21 20:32:59 +02:00
Matthias Koefferlein b194d509cc Merge branch 'master' of github.com:KLayout/klayout 2024-09-20 23:49:27 +02:00
Matthias Koefferlein 43235a1ac2 Fixed CentOS7 builds 2024-09-20 23:49:16 +02:00
Matthias Koefferlein 5ece4d74ae Fixing issue #1864 (Copy & paste allows creating a recursive hierarchy) 2024-09-20 23:07:09 +02:00
Matthias Koefferlein a20611b4c0 Skip polygon splitting for triangles and boxes 2024-09-18 23:53:13 +02:00
Matthias Koefferlein e2718c5a54 Enhancing polygon splitting
With this enhancement, the area ratio in DRC can
be configured as a negative value. This indicates
to take the outer manhattan approximation of the
polygons. This way, skinny diagonals are not
resolved into many small triangles.
2024-09-18 23:18:23 +02:00
Matthias Koefferlein 531071765f Fixed issue #1860 (problem with undo after delete layer) 2024-09-18 19:11:04 +02:00
Matthias Koefferlein ca9b1d779d Print file name before warning from stream readers, compress warnings if necessary, add file name to errors 2024-09-16 23:48:30 +02:00
Matthias Koefferlein 97dcf0aa0b Porting polygon generator from std::deque to std::list with support by 'splice' ... should fix the problem 2024-09-14 16:21:07 +02:00
Matthias Koefferlein 9e55a664fb [debug] timers with ns resolution 2024-09-14 10:45:28 +02:00
Matthias Koefferlein fc729584e1 Maybe std::deque::size was the problem 2024-09-13 23:28:16 +02:00
Matthias Koefferlein 153d1e3541 Trying to improve stability under PCell debugging conditions inside the IDE 2024-09-13 14:31:45 +02:00
Matthias Köfferlein 53b7c985f0
Merge pull request #1849 from KLayout/feature/issue-1836
Implemented solution for issue #1836 (Allow the usage of Cell.shapes(…
2024-09-08 22:24:40 +02:00
Matthias Köfferlein b3fd5153fb
Merge pull request #1842 from KLayout/bugfix/issue-1835
Bugfix/issue 1835
2024-09-08 22:23:44 +02:00
Matthias Koefferlein 680874c8e3 More variants of Layout#properties_id + added Layout#properties_hash and Layout#properties_array. Clarification of documentation. 2024-09-08 19:45:10 +02:00
Matthias Koefferlein 074238b116 Do not include 'purge_devices' in Netlist#simplify as such devices may be intentionally included as spare or dummy devices. If you want to remove them, use 'purge_devices' on 'netlist' and/or 'schematic' 2024-09-08 17:18:12 +02:00
Matthias Koefferlein ac2d20ae76 Implemented fix for issue #1832 (enhancements for Netlist#simplify and Netlist#combine_devices) 2024-09-08 00:25:24 +02:00
Matthias Koefferlein 20099a38b9 Fixing second part - small L,R and C were not handled properly 2024-09-08 00:25:18 +02:00
Matthias Koefferlein bf965a7806 Implemented solution for issue #1836 (Allow the usage of Cell.shapes(LayerInfo(...)))
- For Cell#shapes, LayerInfo is an accepted argument now
- If the layer does not exist, it is created (non-const version)
  or an error is raised (const version)
- Cell#clear also accepts a LayerInfo object
- Layout#clear and Layout#delete_layer also accept
  a LayerInfo parameter

Rationale for supporting the clear and delete_layer methods:
These cases do nothing if the layer does not exist, so there
is a benefit of using them: it is not required to check first
if the layer exists.
2024-09-07 20:29:43 +02:00
Matthias Koefferlein 716aa3c87b Fixing issue #1835 (saving a PCell as cell renders a layout that cannot be read) 2024-09-01 21:18:49 +02:00
Matthias Koefferlein 7dd7a96683 Fixed issue #1840: start is renamed to _start and finish is renamed to _finish, also some other methods that are purely internal. Python + Ruby is modified. 2024-09-01 19:48:13 +02:00
Matthias Koefferlein 793c892b2b Reworking documentation of LayoutToNetlist 2024-09-01 17:47:25 +02:00
Matthias Koefferlein 6a8be82e77 Added missing explicit template instantiations 2024-08-11 00:39:23 +02:00
Matthias Koefferlein 890904dfd0 Had to split dbHierProcessor as gcc choked on the many explicit template instantiations 2024-08-10 23:40:51 +02:00
Matthias Köfferlein bccc421f3d
Merge pull request #1821 from KLayout/feature/issue-1816
Feature/issue 1816
2024-08-10 13:33:25 +02:00
Matthias Koefferlein 82b3030352 const versions of Layout#cell and Layout#top_cell(s) 2024-08-06 18:19:31 +02:00
Matthias Koefferlein 35219469d6 Debugging and first tests for DRC 2024-08-04 21:03:19 +02:00
Matthias Koefferlein 29f82854fb Fixed DRC update 2024-08-04 19:23:31 +02:00
Matthias Koefferlein f653764dc0 Bugfix (typo): ParameterState#icon was named 'tooltip' 2024-08-04 18:55:53 +02:00
Matthias Koefferlein c63e41e732 GSI binding 2024-08-04 18:37:31 +02:00
Matthias Koefferlein c23c4045ba Basic implementation 2024-08-04 17:57:50 +02:00
Matthias Koefferlein 7510728a71 First API steps 2024-08-03 23:18:57 +02:00
Matthias Köfferlein d1121faecb
Merge pull request #1809 from KLayout/feature/issue-1776
First draft for fix of issue #1776 (undo/redo by list)
2024-07-31 07:10:18 +02:00
Matthias Köfferlein 8ab398dc58
Merge pull request #1811 from KLayout/wip
Wip
2024-07-30 18:59:09 +02:00
Matthias Köfferlein ba899b391c
Merge pull request #1808 from KLayout/bugfix/issue-1784
Proposal for fixing issue #1784 (Spice throws error at midline semico…
2024-07-30 18:58:28 +02:00
Matthias Köfferlein 31fc1d8d79
Merge pull request #1805 from KLayout/bugfix/issue-1804
Fixed issue #1804 (Instantation path highlight mismatch with view win…
2024-07-30 18:57:48 +02:00