Matthias Koefferlein
8901359957
Merge branch 'master' into devel
2025-09-06 13:26:11 +02:00
Matthias Köfferlein
71929bf2be
Merge pull request #2143 from KLayout/feature/issue-2141
...
Feature/issue 2141
2025-09-06 13:25:28 +02:00
Matthias Koefferlein
90ed8a2390
Excluding degenerated edges from polygons so we don't consider them corners, addressing duplicate corners with zero distance.
2025-09-05 23:48:49 +02:00
Matthias Koefferlein
a9d52b7a70
Fixing case of point vs. edge in projecting mode
2025-09-05 08:05:27 +02:00
Matthias Koefferlein
aed28098f2
First solution, needs more testing
2025-09-04 23:30:39 +02:00
Matthias Koefferlein
af6762b52d
Fixing issue #2134 ('merged' on edge layers not working in DRC)
2025-09-04 21:58:46 +02:00
Matthias Koefferlein
3b86448a0a
Fixed issue #2133 (crash in editor search&replace)
2025-09-04 21:36:54 +02:00
Matthias Koefferlein
50cad403b2
Doc updates (vias, paths)
2025-09-04 20:46:30 +02:00
Matthias Koefferlein
3d8eaf8dbf
Changed via key binding to 'O'
2025-09-04 20:27:43 +02:00
Matthias Koefferlein
e6692a2fd0
Added LayoutView#layer_list_name as read access for LayoutView#rename_layer_list
2025-09-04 19:59:57 +02:00
Matthias Koefferlein
128f92c427
Doc update
2025-09-04 19:53:36 +02:00
Matthias Koefferlein
7f29cf91df
Removing GSI methods which are no longer required as they are included in the base class now, added + fixed GSI unit tests for LayoutView
2025-09-04 19:50:51 +02:00
Matthias Koefferlein
b3123d385a
Updating samples to include focus pages
2025-09-04 19:24:49 +02:00
Matthias Koefferlein
b9115fc0a2
WIP: Enhancements to EditorOptionsPages API
...
- Make RBA::LayoutViewBase derived from Dispatcher, so we can pass LayoutView
to methods asking for a dispatcher
- For this, the Dispatcher needs to be the first base class of LayoutViewBase
and gsiDeclLayDispatcher is moved to laybasic
- API for editor options pages and message passing (callbacks)
2025-09-03 00:02:18 +02:00
Matthias Koefferlein
0447080d17
WIP: polishing geometry of modal editor options widget
2025-09-02 21:21:00 +02:00
Matthias Koefferlein
a24e2431a2
WIP: automatically calling ungrab_mouse on deactivation of plugin
2025-09-02 20:28:55 +02:00
Matthias Koefferlein
2b04ecb1f7
WIP: experimental - modal editor options pages
2025-09-02 00:45:42 +02:00
Matthias Koefferlein
53a7414757
Merge branch 'master' into devel
2025-08-31 21:53:43 +02:00
Matthias Köfferlein
70ba27c8f2
Merge pull request #2131 from KLayout/vias-development
...
Vias development
2025-08-31 21:53:12 +02:00
Matthias Koefferlein
1e570351fb
Refactoring (GSI base class for EditorOptionsPage), preparations for 'focus_page' feature
2025-08-31 20:37:48 +02:00
Matthias Koefferlein
a7518f5452
Fixing Python module builds
2025-08-31 19:38:22 +02:00
Matthias Koefferlein
84c518b057
Trying to fix Python module builds
2025-08-31 18:18:32 +02:00
Matthias Koefferlein
e21eb6aafc
Typo fixed
2025-08-31 17:52:04 +02:00
Matthias Koefferlein
4d9f924466
Refactoring: providing GSI binding to plugin base class, so the super implementation can be called.
2025-08-31 17:49:13 +02:00
Matthias Koefferlein
57a4984959
WIP: refactoring of heavy Plugin GSI binding functions
2025-08-31 15:50:26 +02:00
Matthias Koefferlein
43454962d4
Improving ruler snapping (after move_transform, snap to objects, visual snap details hint ...)
2025-08-30 23:30:51 +02:00
Matthias Koefferlein
53c173d01e
[consider merging] avoid a warning on writing cells/files in 'under_construction' mode when there is nothing to update
2025-08-30 21:49:27 +02:00
Matthias Koefferlein
6a9269a9ae
[consider merging] Bugfix: internal error when copying while move/copy operation of images and rulers
2025-08-30 21:30:15 +02:00
Matthias Koefferlein
0187abfafc
[consider merging] Bugfix: internal error when trying to replace a shape in a standalone Shapes collection while preserving properties
2025-08-30 19:37:12 +02:00
Matthias Koefferlein
7f7a5bd3ac
Bugfix: properly integrating newborn plugins
2025-08-30 18:55:16 +02:00
Matthias Koefferlein
340c1ef6e9
Some refactoring, editor options are shown more consistently now
...
Specifically, in move mode, now the editor options
are shown too. This makes sense as some of these
options there are also effective in move mode.
2025-08-30 18:39:41 +02:00
Matthias Koefferlein
f1c16a0242
Adding samples for new plugin features, doc update.
2025-08-30 14:53:46 +02:00
Matthias Koefferlein
e396b6ec29
WIP: bug fixes and more tests
2025-08-30 13:35:01 +02:00
Matthias Koefferlein
b133bde1c7
WIP: doc updates
2025-08-30 13:24:30 +02:00
Matthias Koefferlein
7d2113ffe1
Some debugging, tests added
2025-08-30 00:34:35 +02:00
Matthias Koefferlein
3eff75433c
WIP
2025-08-29 17:50:03 +02:00
Matthias Koefferlein
c77a732875
WIP: more features exposed for plugins (snapping)
2025-08-28 23:38:04 +02:00
Matthias Koefferlein
90e25a7b75
WIP: debugging and polishing editor options pages interface for plugins
2025-08-27 00:12:55 +02:00
Matthias Koefferlein
c5d5557072
WIP: debugging config page setup in plugins
2025-08-26 22:36:48 +02:00
Matthias Koefferlein
88178fabd9
[consider merging] Bugfix on Plugin registration
...
This bug happened when a plugin package was installed. In
this case, the plugin was installed dynamically. The effect
was for example that the grid in a view became invisible.
Problem was, that the plugin registration re-generated all
plugins from the view, but did not reconfigure them. Hence
the grid had the default setting which was invisible grid.
2025-08-26 21:06:25 +02:00
Matthias Koefferlein
9e0d1d7ea7
WIP: new GSI declarations
2025-08-25 23:06:18 +02:00
Matthias Koefferlein
acfc2aae09
WIP: preparing integration of editor options pages and config pages into plugin API
2025-08-25 00:04:56 +02:00
Matthias Koefferlein
ac9a589d6f
WIP: two convenience methods for plugin API
2025-08-24 22:29:47 +02:00
Matthias Koefferlein
26682c1a38
Trying again to fix Windows builds
2025-08-24 21:54:42 +02:00
Matthias Koefferlein
2806efd803
Trying again to fix Windows builds
2025-08-24 21:43:59 +02:00
Matthias Koefferlein
626f5809bc
Trying to fix Windows builds
2025-08-24 21:22:33 +02:00
Matthias Koefferlein
f55a4824b7
Disabling features that are not used currently.
2025-08-23 23:05:14 +02:00
Matthias Koefferlein
b079398b02
Added an editor hooks example for Ruby
2025-08-23 22:52:42 +02:00
Matthias Koefferlein
972514454b
Added a Python sample for editor hooks
2025-08-23 20:54:20 +02:00
Matthias Koefferlein
cad905eb63
Ruby via PCell sample
2025-08-23 20:45:08 +02:00
Matthias Koefferlein
e2e4c1a827
Via PCell samples
2025-08-23 20:37:35 +02:00
Matthias Koefferlein
91946165fd
Hardening: more consistent handling of current layer index in layer view (was deferred before and getter wasn't getting the latest value sometimes)
2025-08-23 20:36:49 +02:00
Matthias Koefferlein
e1c9de67d8
Adding sample via PCell for Python
2025-08-23 19:39:03 +02:00
Matthias Koefferlein
4821a5d71a
[consider merging] Bugfix on Plugin registration
...
This bug happened when a plugin package was installed. In
this case, the plugin was installed dynamically. The effect
was for example that the grid in a view became invisible.
Problem was, that the plugin registration re-generated all
plugins from the view, but did not reconfigure them. Hence
the grid had the default setting which was invisible grid.
2025-08-23 17:33:11 +02:00
Matthias Koefferlein
d89aae6d97
Properly handling editor hooks on edit layer change - also on via
2025-08-23 16:08:42 +02:00
Matthias Koefferlein
ee89bc43c4
Refactoring of edt services, bug fixes
2025-08-23 00:41:37 +02:00
Matthias Koefferlein
ee0b5e3bd9
[consider merging] fixing a crash on 'show parameter names' in PCell dialog
2025-08-22 23:54:01 +02:00
Matthias Koefferlein
3068c1da29
WIP: introducing grids in vias
2025-08-22 23:46:24 +02:00
Matthias Koefferlein
d77eb32db4
WIP: computation of via size, bug fixes
2025-08-22 23:21:53 +02:00
Matthias Koefferlein
3df715f078
WIP: some debugging
2025-08-21 22:32:22 +02:00
Matthias Koefferlein
59432fb6ed
WIP: some rework, targetting proper use of recent attributes when entering an editor tool
2025-08-21 21:56:15 +02:00
Matthias Koefferlein
9137919894
WIP: Implementing initial via
2025-08-20 23:51:03 +02:00
Matthias Koefferlein
d3d2eda54a
WIP: undo, backspace implementation, bug fixes
2025-08-19 23:12:43 +02:00
Matthias Koefferlein
57cd512bf9
WIP: via up and via down
2025-08-18 23:33:44 +02:00
Matthias Koefferlein
331d16ab7c
WIP: fixing undo, implement layout cleanup
2025-08-18 23:21:18 +02:00
Matthias Koefferlein
39c8e0ca15
WIP: some refactoring, introducing cut layer in via definition
2025-08-18 22:53:45 +02:00
Matthias Koefferlein
33ffa6367f
WIP: updating via cell at the front of a path segment.
2025-08-17 22:54:11 +02:00
Matthias Koefferlein
42d32ecbb7
Some refactoring - putting some methods into db::Cell
2025-08-17 22:53:17 +02:00
Matthias Koefferlein
99462792bb
Fixed a few build warnings.
2025-08-17 22:52:40 +02:00
Matthias Koefferlein
d8e271339e
WIP: some refactoring, vias switch layers now.
2025-08-17 21:50:02 +02:00
Matthias Koefferlein
0da4f694ca
WIP: cleanup of handling of multi-CV cases for editing (use and switch to active CV), reuse previous configuration on switch or use of layer in editor features.
2025-08-17 19:44:59 +02:00
Matthias Koefferlein
a1feb676ee
WIP
2025-08-16 23:01:12 +02:00
Matthias Koefferlein
61ee2305eb
[consider merging] Fixed marker display - don't render error layers, that's more difficult because of font selection etc., use contour for text labels
2025-08-16 22:35:41 +02:00
Matthias Koefferlein
6fdad4649a
WIP
2025-08-16 21:44:41 +02:00
Matthias Koefferlein
a4f3d9a33b
[consider merging] More robust reading of session files and image strings
2025-08-16 20:01:32 +02:00
Matthias Koefferlein
5d253d3094
WIP
2025-08-16 19:17:58 +02:00
Matthias Koefferlein
0e1ba44eaf
WIP
2025-08-16 18:05:32 +02:00
Matthias Koefferlein
8c53fb934e
Merge branch 'devel' into vias-development
2025-08-16 16:49:36 +02:00
Matthias Koefferlein
491dd3bb26
Basic implementation of the 'layer binding' feature of issie #2116
2025-08-15 22:58:03 +02:00
Matthias Koefferlein
a73aa1115f
Preparations
2025-08-15 21:25:53 +02:00
Matthias Koefferlein
437c48c1fb
Some refactoring (getting rid of an unused attribute)
2025-08-15 17:36:00 +02:00
Matthias Koefferlein
5bd74b73bb
Enhancement: 'select highlighted objects' from properties dialog (object tree context menu)
2025-08-15 17:06:33 +02:00
Matthias Koefferlein
872eaabb75
Enhancement: 'relative' option of properties dialog is persisted now.
2025-08-15 15:24:00 +02:00
Matthias Koefferlein
ef2b164e1a
Bugfix: properly supporting Undo on 'apply technology' (layer properties were cleared)
2025-08-15 15:00:10 +02:00
Matthias Koefferlein
5eb8c760d8
Merge branch 'master' into devel
2025-08-15 14:21:13 +02:00
Matthias Köfferlein
681d7eeb4b
Merge pull request #2118 from KLayout/feature/issue-2110
...
Feature/issue 2110
2025-08-15 14:20:26 +02:00
Matthias Köfferlein
c77fa56768
Merge pull request #2114 from KLayout/bugfix/issue-2111
...
Fixing issue #2111 (internal error on tesselation R extractor)
2025-08-15 14:19:59 +02:00
Matthias Koefferlein
513f87c07f
Reverted drawing of text strings to text plane for cell names as then 'hide texts' would disable them.
2025-08-12 23:38:33 +02:00
Matthias Koefferlein
2e1afc846a
Small bug fixed
2025-08-10 23:33:02 +02:00
Matthias Koefferlein
55171859cf
Fixed display under presence of layer transformations
2025-08-10 21:34:17 +02:00
Matthias Koefferlein
fdb28800f7
Introducing fallback transformation variants for empty layer lists. This allows editing layouts without any layers and only instances.
2025-08-10 21:29:53 +02:00
Matthias Koefferlein
7667932a00
Some adjustments:
...
* Fixed instance marker when the cell is made from empty ones only
* 'fit' will include empty instances
2025-08-10 16:49:51 +02:00
Matthias Koefferlein
bdbf690764
Added some tests
2025-08-10 16:11:57 +02:00
Matthias Koefferlein
0e263ff4d8
Implemented solution for #2110 (small cells and ghost cells)
...
The solution consists of a second path to bounding boxes of
cells - namely "bbox_with_empty". This bounding box is a
(0,0;0,0)-box if the cell is empty. Correspondingly, empty
and ghost cells are displayed as single points. Ghost cells
also behave like hidden cells now.
2025-08-10 15:33:50 +02:00
Matthias Koefferlein
2c873bcbce
WIP
2025-08-10 15:15:50 +02:00
Matthias Koefferlein
0bc904515c
WIP
2025-08-10 15:13:10 +02:00
Matthias Koefferlein
75125b7a85
WIP
2025-08-10 14:34:22 +02:00
Matthias Koefferlein
1c15d851ee
WIP
2025-08-10 13:59:26 +02:00
Matthias Koefferlein
786d231acd
WIP
2025-08-10 13:51:47 +02:00
Matthias Koefferlein
651fc8cbc7
WIP
2025-08-10 13:49:22 +02:00
Matthias Koefferlein
b4bbc26d6a
WIP
2025-08-10 13:43:19 +02:00
Matthias Koefferlein
29cc603466
WIP
2025-08-09 23:54:01 +02:00
Matthias Koefferlein
cb70620ad1
Fixing issue #2111 (internal error on tesselation R extractor)
...
Problem was a runaway triangulation case where outside edges
exist without being segments.
2025-08-09 18:40:24 +02:00
Matthias Koefferlein
6232db33b4
Fixing issue #2112
2025-08-09 00:52:55 +02:00
Matthias Koefferlein
8da28a0f72
Trying to fix issue #2108
2025-08-06 18:57:33 +02:00
Matthias Koefferlein
b60210e076
Python stubs regenerated
2025-08-05 23:28:17 +02:00
Matthias Koefferlein
7ac32cec0b
Removing debug code.
2025-08-05 20:58:07 +02:00
Matthias Koefferlein
847ec03f52
Bugfix: macros will be executed automatically again after package installation. Maybe less restarts needed.
2025-08-05 20:57:38 +02:00
Matthias Koefferlein
4dbc103523
Bugfix: File watcher was dropping files when they were temporarily unavailable
2025-08-04 18:47:39 +02:00
Matthias Koefferlein
f289fa9483
A small enhancement (dbu argument in LayoutToNetlist#evaluate_nets), maybe fixing issues on old Ruby versions
2025-08-03 22:11:59 +02:00
Matthias Koefferlein
b6fba7bb69
Bug fixes, new test details
2025-08-03 21:31:55 +02:00
Matthias Koefferlein
7c0934ec8a
Fixing unit tests after making byte array and strings equal citizens in variants
2025-08-03 20:33:47 +02:00
Matthias Koefferlein
381baf7453
Merge remote-tracking branch 'origin/master' into feature/measurements
2025-08-03 19:53:06 +02:00
Matthias Koefferlein
8a5e83bf5d
Consistently differenting between double and int values as property keys (otherwise there may be a confusing mix present in the property repository)
2025-08-03 19:46:31 +02:00
Matthias Koefferlein
4773bb3227
Added a test for cumulative antenna ratio
2025-08-03 18:00:25 +02:00
Matthias Koefferlein
bade7489d8
Fixing doc
2025-08-03 15:23:49 +02:00
klayoutmatthias
642cbd6831
[consider merging] fixing Qt-less builds
2025-08-03 14:19:02 +02:00
Matthias Koefferlein
c8568e8aed
DRC binding for property computation, filtering
2025-08-03 13:55:14 +02:00
GavinAnderberg
55b58a20cc
Correct typo gsiDeclDbNetlist.cc
...
Corrected a typo that has the docs say the Netlist.read method 'Writes the netlist to the given file'. It now accurately matches the function behavior.
2025-08-02 19:55:31 -04:00
Matthias Koefferlein
2193f28e2a
WIP
2025-08-02 23:38:43 +02:00
Matthias Koefferlein
73681755ed
Rename some functions, DRC binding for 'evaluate_nets'
2025-08-02 23:06:22 +02:00
Matthias Koefferlein
61aa08cd64
Added tests for more features
2025-08-02 22:23:03 +02:00
Matthias Koefferlein
a224c11833
WIP: bugfix
2025-08-02 22:14:53 +02:00
Matthias Koefferlein
c3ba0acc02
Added unit test
2025-08-02 21:43:39 +02:00
Matthias Koefferlein
8151feac56
Some debugging, skipping clusters without shapes on primary layer for example
2025-08-02 21:28:48 +02:00
Matthias Koefferlein
d001f7fa04
Introducing variables to property filters, computation functions, generalizing net function for net measurement
2025-08-02 19:50:11 +02:00
Matthias Koefferlein
e82ebf6733
WIP: measure_net function for LayoutToNetlist
2025-08-02 19:17:23 +02:00
Matthias Koefferlein
8e95f6a8e1
Fixing a few doc issues, updating DRC doc.
2025-08-02 16:19:12 +02:00
Matthias Koefferlein
ffafebcaae
Adding 'merge_props' and 'merged_props' to DRC
2025-08-02 16:12:49 +02:00
Matthias Koefferlein
f9ea9af466
Fixed unit tests
2025-08-02 15:13:23 +02:00
Matthias Koefferlein
d1e1f626c7
WIP (join properties on merge for flat regions)
2025-08-02 13:36:17 +02:00
Matthias Koefferlein
4b79c4c362
Fixing backward compatibility issue with pseudo-labels
...
Problem: pseudo-labels are represented by polygons with
properties. If those get merged onto normal polygons
with "join_properties_on_merge", these are regarded
labels and translated to texts later. We avoid this
by skipping all objects with pseudo-label properties
on region merge in "join_properties_on_merge" mode.
2025-08-01 22:59:38 +02:00
Matthias Koefferlein
786c60a28e
Fixing unit tests
2025-07-31 23:54:55 +02:00
Matthias Koefferlein
37f9feaadd
WIP: joining of properties in deep region
2025-07-31 22:38:48 +02:00
Matthias Koefferlein
653384fce5
WIP
2025-07-31 21:16:35 +02:00
Matthias Koefferlein
b89ff76a84
Fixing issue #2102 (internal error on R extraction)
...
Problem was a conceptual problem: the triangulation for
Hertel-Mehlhorn decomposition must not contain internal
vertexes. So we need a different solution for including
vertex ports.
2025-07-30 23:24:34 +02:00
Matthias Koefferlein
9d4e3c525b
Fixed issue #2100 (wrong coordinates on PEX nodes)
2025-07-29 23:17:54 +02:00
Matthias Koefferlein
1ff6f36076
Shapes#insert(region) now supports properties
2025-07-29 23:10:15 +02:00
Matthias Koefferlein
c0bdc2874a
'put' function is property computation processors
2025-07-29 21:11:34 +02:00
Matthias Koefferlein
792c06b3a2
WIP: unit tests for new features
2025-07-28 23:40:01 +02:00
Matthias Koefferlein
3a612f9b04
WIP: integration of new features
2025-07-28 23:11:21 +02:00
Matthias Koefferlein
8d7919e054
WIP
2025-07-28 22:38:44 +02:00
Matthias Koefferlein
2a50c87969
WIP
2025-07-27 22:49:21 +02:00
Matthias Koefferlein
5b3ce9ff30
[consider merging] tl::Variant now considers byte arrays and strings equivalent for sloppy compare. This is important for Ruby string property keys as they are often kept as byte arrays when not UTF-8 encoded.
2025-07-27 22:15:52 +02:00
Matthias Koefferlein
ede15ffcc0
WIP
2025-07-27 19:48:38 +02:00
Matthias Koefferlein
427ac0ae16
WIP
2025-07-27 17:43:01 +02:00
Matthias Koefferlein
1c1555f31c
Fixed unit tests
2025-07-26 18:25:36 +02:00
Matthias Koefferlein
80276f8799
Refactoring: shape processors now allow modifying properties
2025-07-26 18:09:31 +02:00
Matthias Koefferlein
2369c69f69
Implemented feature request: a method to clear properties on shapes, instances, cells and layout
2025-07-26 15:26:47 +02:00
Matthias Koefferlein
d4e3872142
DRC::def_output: A simple yet useful extension to obtain the output layout and to manipulate it (within limits)
2025-07-21 22:21:33 +02:00
Matthias Koefferlein
cb4511b721
Fixed a pending TODO from issue #1470
2025-07-21 20:56:32 +02:00
Matthias Koefferlein
2d5778a860
'tap': do not consider texts as detecting them requires capturing a large area - which is against performance
2025-07-21 20:40:01 +02:00
Matthias Koefferlein
57025a7f9f
Added fill tests with differen origins and tiled mode
2025-07-19 22:37:38 +02:00
Matthias Koefferlein
e48e030521
Fixing DRC fill in tiled mode - must not use overlapping tiles with shifting origin
2025-07-19 22:30:06 +02:00
Matthias Koefferlein
1a9c12ce18
Merge branch 'master' into devel
2025-07-19 21:27:52 +02:00
Matthias Koefferlein
9d4a578a5e
Merge branch 'bugfix/issue-2088'
2025-07-19 19:00:33 +02:00
Matthias Köfferlein
71202ea9d3
Merge pull request #2098 from KLayout/bugfix/issue-2094
...
Fixing issue #2094 (slow insert into Shapes)
2025-07-19 18:58:04 +02:00
Matthias Köfferlein
ff7d7f20ee
Merge pull request #2089 from KLayout/bugfix/issue-2087
...
Bugfix/issue 2087
2025-07-19 18:57:25 +02:00
Matthias Köfferlein
131f36a4e0
Merge pull request #2084 from KLayout/feature/issue-2044
...
Feature/issue 2044
2025-07-19 18:57:10 +02:00
Matthias Köfferlein
316a58eca5
Merge pull request #2079 from KLayout/bugfix/issue-2075
...
Fixing issue #2075 (strm2oas ignores def net routing wire extensions)
2025-07-19 18:56:35 +02:00
Matthias Koefferlein
4ab64ca5d3
Fixing issue #2094 (slow insert into Shapes)
...
Solution is to use a temporary container instead
of locking (only if needed).
2025-07-19 15:08:09 +02:00
Matthias Koefferlein
e6fa072bee
Fixing 'tap' feature
...
After introducing the "do not select shapes
or instances if they overlap the viewport entirely"
feature, 'tap' was not finding shapes which extended
beyond the view's borders.
This got fixed and for 'tap', such shapes are
considered again.
2025-07-18 23:00:23 +02:00
Matthias Koefferlein
d0b935d9e5
Fixed issue #2088 in reader and writer
...
Reader fix: the reader will not error out duplicate cell
names, but rename the cells.
Writer fix: the writer will uniquify cell names *after*
illegal character substitution.
2025-07-15 22:52:49 +02:00
Matthias Koefferlein
1dc0a56633
Bugfix on layout query
...
The following query did not render the correct box
for top-level objects:
select path_dtrans*shape.dbbox.center,cell_name from shapes on layer 1/0 from instances of .*..
Reason was that "path_dtrans" returned a ICplxTrans for top
level instead of a DCplxTrans object.
2025-07-13 21:42:35 +02:00
Matthias Koefferlein
67994a2f8a
Introducing convenience method ObjectInstPath#cell
2025-07-13 21:27:26 +02:00
Matthias Koefferlein
83913f07bd
Updated documentation
2025-07-13 21:20:37 +02:00
Matthias Koefferlein
87bc1a60e1
Introducing macro attributes and Macro#current
2025-07-13 21:14:53 +02:00
Matthias Koefferlein
cc796317a0
Safeguard against broken code table in OASIS CBLOCKs
2025-07-13 19:31:47 +02:00
Matthias Koefferlein
a6a012beac
Added DRC full scale tests, first is Greyhound with M1 IHP fill
2025-07-12 22:02:44 +02:00
Matthias Koefferlein
e7bc997e9f
Further compressing fill cell arrays in x direction
2025-07-12 14:28:42 +02:00
Matthias Koefferlein
76f7c620f6
[consider merging] Enabling Shapes-based RecursiveShapeIterators for MT-use
...
This fixes a crash when using DRC fill in tiled mode with multiple
threads.
2025-07-12 13:59:06 +02:00
Matthias Koefferlein
70a609e995
[consider merging] Bugfix in polygon rasterizer
2025-07-11 23:57:03 +02:00
Matthias Koefferlein
46f9fba0ab
Generalizing fill tool code
2025-07-11 23:56:40 +02:00
Matthias Koefferlein
7a06bfd66a
Bugfix
2025-07-10 23:32:19 +02:00
Matthias Koefferlein
9bc49dd5a3
Added fill_pattern's 'margin' feature. This allows keeping a distance to features outside of the fill region in a more consistent way.
2025-07-10 00:31:25 +02:00
Matthias Koefferlein
d5f1017f83
More efficient computation of remaining fill area
2025-07-10 00:24:24 +02:00
Matthias Koefferlein
7dafdb2316
Fixing bug in first place. Needs testing.
2025-07-08 23:36:44 +02:00
Matthias Koefferlein
15120760fe
Handling of ghost cells in strm2x merge
...
Ghost cells act as anchors for top cells of the other
layout in "," merges. Unlike other cells which are
renamed.
2025-07-07 21:52:57 +02:00
Matthias Koefferlein
d382629e8e
Proposal for a fix of issue #2044 and #2066
...
The solution is to separate the meaning of "," and "+" layout
file combination operators in strm2x tools:
* "+" does "blending"
* "," does merge
"+" has priority over "," ('a+b,c' acts as '(a+b),c').
NOTE: LEF caching only happens across "+".
2025-07-05 22:48:05 +02:00
Matthias Koefferlein
0ba6064507
Also supporting DBU check for PCB
2025-07-05 21:17:46 +02:00
Matthias Koefferlein
9e9344fdfa
Introducing a check whether DBU is compatible with a given one in most readers (except PCB)
2025-07-05 21:13:19 +02:00
Matthias Koefferlein
fbca4e6c18
Fixing layout text writer for 'long long' property names on Windows
2025-06-29 22:16:46 +02:00
Matthias Koefferlein
733a0ec4cf
Proper solution for bug fix - wasn't done in the right order before.
2025-06-29 20:23:47 +02:00
Matthias Koefferlein
abeab280a3
[consider merging] fixed a crash happening while blending two OASIS files with ghost cells
2025-06-28 15:50:27 +02:00
Matthias Koefferlein
5a401127a2
Trying to fix MacOS and Windows builds
2025-06-28 15:31:46 +02:00
Matthias Koefferlein
a42e639d83
Trying to fix builds on MacOS
2025-06-27 17:56:45 +02:00
Matthias Koefferlein
7acd11abac
Added test
2025-06-27 17:37:19 +02:00
Matthias Koefferlein
aba1b30c8d
Fixing issue #2075 (strm2oas ignores def net routing wire extensions)
2025-06-27 01:04:19 +02:00
Matthias Koefferlein
6ce61c8654
Fixing type of modal variables for box width and height
2025-06-26 22:54:48 +02:00
Matthias Koefferlein
a08d36b5f5
Consistently replacing 'long' and 'long long' by 64 bit int in OASIS reader/writer, so there should not be a difference between Windows and Linux in reader and writer behavior. Database limitations still apply.
2025-06-26 21:59:28 +02:00
Matthias Koefferlein
5c7ac018a8
Not asking for copy mode for leaf cells isn't a bad idea in general, but it creates confusing behavior when pasting instances into a different layout where the target cell does not exist
2025-06-26 20:54:16 +02:00
Matthias Koefferlein
f3cc7cadc0
Enabling Qt-less DB plugins for Qt-enabled applications
2025-06-26 20:35:39 +02:00
Matthias Koefferlein
eb3be68030
Removing an unused declaration
2025-06-26 20:34:53 +02:00
Matthias Koefferlein
5cd1c187ab
Modified display of devices in LVS xref view, so the primary and secondary parameters are separated
2025-05-31 18:30:13 +02:00
Matthias Koefferlein
f2172d8e2a
Extension of the L2N/LVSDB format to support deleted terminals and parameters
...
Previously, when deleting parameters or terminals from device
definitions, these parameters or terminals re-appeared in the
netlist browser, because they were generated from the
template class (e.g. "A" and "B" from "RES").
An additional token is added that indicates whether to
remove all entries before adding new ones.
This feature is backward-compatible and LVSDB/L2N files have to
be generated from new KLayout versions to make use of that
feature.
2025-05-31 17:33:44 +02:00
Matthias Koefferlein
769b7e9170
Typo fixed
2025-05-29 13:31:36 +02:00
Matthias Koefferlein
98834d8e3b
Reference new golden testdata for LEFDEF/strm2oas test
2025-05-29 12:00:44 +02:00
Matthias Koefferlein
f1cc048a4c
Refreshing stubs
2025-05-29 09:56:11 +02:00
Matthias Köfferlein
45fdaf0a6d
Merge pull request #2049 from KLayout/devel
...
Devel
2025-05-29 09:43:23 +02:00
Matthias Köfferlein
3ce50679fa
Merge pull request #2050 from KLayout/dev-polygon-graph
...
Dev polygon graph
2025-05-29 09:43:06 +02:00
Matthias Köfferlein
6ae3737cd5
Merge pull request #2065 from KLayout/feature/issue-2041
...
Feature/issue 2041
2025-05-29 09:42:46 +02:00
Matthias Koefferlein
9917978566
Merge branch 'master' into dev-polygon-graph
2025-05-28 19:01:42 +02:00
Matthias Koefferlein
ad444c5552
Don't error out on missing MACRO in LEF, but create a dummy macro with size 0,0 instead and issue a warning. This will place nicely with N, but not with other orientations.
2025-05-28 18:58:28 +02:00
Matthias Koefferlein
0cb5f35659
Allowing the polygon neighborhood visitor to specify a variant type for deep mode
2025-05-27 21:07:28 +02:00
Matthias Köfferlein
dfd7d8ec1f
Merge pull request #2061 from KLayout/bugfix/issue-2060
...
Bugfix/issue 2060
2025-05-27 19:17:45 +02:00
Matthias Köfferlein
836c50d6a0
Merge pull request #2062 from KLayout/feature/issue-2055
...
Feature/issue 2055
2025-05-27 19:17:33 +02:00
Matthias Koefferlein
010fa2d5ba
Avoiding a segfault when trying to run Ruby from a non-Ruby thread
2025-05-27 00:48:10 +02:00
Matthias Koefferlein
13bc723831
Fix for MSVC builds
2025-05-25 23:24:38 +02:00
Matthias Koefferlein
6cccb81293
Implemented solution for #2057 (nanometer scalebar)
...
The scale bar switches to nm below 0.1µm. Correspondingly
it will switch to mm above 100µm.
2025-05-25 21:28:11 +02:00
Matthias Koefferlein
534b33be1c
MSVC does not assume UTF-8 encoding by default, hence use explicit bytes
2025-05-25 20:40:45 +02:00
Matthias Koefferlein
bfe49c22e3
Properly using 'long' and 'unsigned long' in tl::sprintf to fit Windows definition of 'long'
2025-05-25 19:42:14 +02:00
Matthias Koefferlein
329ac6c5b7
Merge branch 'master' into devel
2025-05-25 19:37:57 +02:00
Matthias Koefferlein
fb16c8c6f6
Trying to fix a linker issue
2025-05-25 19:01:04 +02:00
Matthias Koefferlein
4a20a30888
Hope to fix dependency on Ruby version rgarding string encoding.
2025-05-25 18:55:52 +02:00
Matthias Koefferlein
125e06bd49
Added doc, added a warning about no pins found at top level.
2025-05-25 17:53:11 +02:00
Matthias Koefferlein
ad80019b12
Adding to_s (aka str(...)) methods to RNetExtractor tech objects
2025-05-25 16:31:20 +02:00
Matthias Koefferlein
dec7ad9da1
[consider merging] properly conveying string encoding for Ruby, so that UTF-8 encoding is maintained when returning such strings from C++
2025-05-25 16:28:46 +02:00
Matthias Koefferlein
094e11897a
Added the new feature: 'flag_missing_ports'
2025-05-24 22:33:18 +02:00
Matthias Koefferlein
aba912107b
Refined solution, so it would allow a larger coordinate range.
2025-05-24 00:09:52 +02:00
Matthias Koefferlein
6d28c78eeb
Fixed issue #2060 - the precision of the check was too low.
2025-05-22 22:48:48 +02:00
Matthias Koefferlein
e96f20a106
Introducing case sensitivity in circuit and netlist queries, makeing 'same_nets' more case sensitivity-aware in case of mixed sensitivity
2025-05-22 22:25:49 +02:00
Matthias Koefferlein
57c2add00a
API enhancement for NetlistCrossReference: obtaining information from one object only (net, circuit), does not need a pair anymore
2025-05-22 20:54:21 +02:00
Matthias Koefferlein
90c4f654b6
API for adding log entries to LVS and L2N databases
2025-05-22 19:57:06 +02:00
Matthias Koefferlein
4dd4524da9
Fixed typo
2025-05-22 19:47:39 +02:00
Matthias Köfferlein
23b049627f
Merge pull request #2040 from KLayout/feature/maly
...
Feature/maly
2025-05-22 19:22:52 +02:00
Matthias Köfferlein
ba640b6d04
Merge pull request #2039 from KLayout/feature/issue-2016
...
First attempt to implement a solution for issue #2016
2025-05-22 19:22:32 +02:00
Matthias Koefferlein
6b8c79c488
Fixed a segfault (thanks, Martin\!)
2025-05-22 18:50:25 +02:00
Henner Zeller
f9e2a9257f
Fix logic error in hex2int.
...
This was probably never noticed as it was the last branch and would
behave benign on valid input.
Signed-off-by: Henner Zeller <hzeller@google.com>
2025-05-19 14:16:18 +02:00
Matthias Koefferlein
9b03a1ba64
More robust tests
2025-05-18 22:41:46 +02:00
Matthias Koefferlein
a2ac8d45de
Postpone decision about "invalid vias are errors."
2025-05-18 22:28:11 +02:00
Matthias Koefferlein
e27e24ff4f
Bugfixing multi-DEF reader with LEF cache, adding a testcase. Making unknown vias an error.
2025-05-18 22:00:39 +02:00
Matthias Koefferlein
4306b24b4a
Normalizing test case for RNetExtractor to reduce jitter
2025-05-18 09:27:10 +02:00
Matthias Koefferlein
a07d742bee
Fixed a problem with via uniquification - via definitions may be DEF local, so we need to clean them between different DEF reads.
2025-05-18 00:48:10 +02:00
Matthias Koefferlein
1fb0f318dc
Added pex lib to bd tools.
2025-05-17 18:49:32 +02:00
Matthias Koefferlein
91cb8826c7
Including more dependencies in build
2025-05-17 18:41:22 +02:00
Matthias Koefferlein
5dd189d413
Including pex dependencies in build
2025-05-17 18:39:16 +02:00
Matthias Koefferlein
ca53d8718b
Fixed some build problems
2025-05-17 17:26:59 +02:00
Matthias Koefferlein
8221923ccb
Added a large (private) testcase for the 'read LEF once' enhancement
2025-05-17 16:50:47 +02:00
Matthias Koefferlein
4206d7ee63
Tried a performance improvement experiment, don't dare to actually use it
2025-05-17 01:00:57 +02:00
Matthias Koefferlein
baed5bd822
Small refactoring
2025-05-17 00:57:36 +02:00
Matthias Koefferlein
5c27fedfe5
Debugging and bug fixes. The 'big example' from issue 2014 now works
2025-05-17 00:44:15 +02:00
Matthias Koefferlein
113c701345
Trying explicit member template instantiation to solve linker issue
2025-05-16 23:23:11 +02:00
Matthias Koefferlein
1c4077449b
Fixed build issue
2025-05-16 18:55:55 +02:00
Matthias Koefferlein
1b98efd7a8
First bug fixes
2025-05-15 23:41:23 +02:00
Matthias Koefferlein
271800ab94
WIP: first implementation. Builds, but needs testing.
2025-05-15 23:27:03 +02:00
Matthias Koefferlein
6cd4b97cd3
Including internal net names in LVS DB
...
Problem: so far, these names have not been conveyed.
But after the net IDs changed in the LVS DB (renumbering),
the names should be retained. Otherwise it is difficult to
relate log level entries or Spice netlists to them.
2025-05-15 21:17:15 +02:00
Matthias Koefferlein
7bee9ebcec
Fixing a linker issue on Windows.
2025-05-11 21:48:01 +02:00
Charlie Lin
e279888f52
Use Py_IncRef in pyaCallables.cc
2025-05-11 09:07:55 -04:00
Matthias Koefferlein
91005d5cb6
Tests for RBA+pex, bug fixes
2025-05-04 20:42:12 +02:00
Matthias Koefferlein
77aa729b06
GSI binding of RNetExtractor, introducing layers for nodes
2025-05-04 19:45:30 +02:00
Matthias Koefferlein
fc25590dd7
Include a simplification step in the net extraction
2025-05-04 17:15:47 +02:00
Matthias Koefferlein
2bc8ac235a
Fixed unit tests
2025-05-04 16:22:03 +02:00
Matthias Koefferlein
f7c7e8b0be
Fixed unit tests
2025-05-04 15:41:26 +02:00
Matthias Koefferlein
aca3095efa
WIP: allowing multiple vertex ports on the same location
2025-05-04 15:38:45 +02:00
Matthias Koefferlein
80ad38f81b
WIP: debugging, tests. Triangulation should be safer now against linear chains of vertexes.
2025-05-04 14:36:34 +02:00
Matthias Koefferlein
f83cd61843
WIP: debugging, tests.
2025-05-04 13:11:46 +02:00
Matthias Koefferlein
bc10bb6b14
WIP: network R extractor, needs testing
2025-05-03 22:36:39 +02:00
Matthias Koefferlein
1932532416
Bug fixes, tests
2025-05-02 15:07:28 +02:00
Matthias Koefferlein
b77b4d7d3c
Bug fixes
2025-05-02 15:02:18 +02:00
Matthias Koefferlein
149b051dce
Providing meta info (boundary per mask) from MALY reader
2025-05-02 14:49:13 +02:00
Matthias Koefferlein
30ac61ea20
Added title support, tests, debugging
2025-05-02 14:25:34 +02:00
Matthias Koefferlein
226ba429f1
WIP: MALY reader, debugging, tests
2025-05-02 13:27:59 +02:00
Matthias Koefferlein
55e2b27bf6
WIP, MALY reader
2025-05-01 23:05:01 +02:00
Matthias Koefferlein
3b85581fae
WIP
2025-04-29 22:59:17 +02:00
Matthias Koefferlein
03873d9b6c
WIP
2025-04-29 22:56:53 +02:00
Matthias Koefferlein
fa30fd0f7b
WIP, MALY reader
2025-04-29 22:19:59 +02:00
Matthias Koefferlein
7820733bd5
WIP
2025-04-29 00:28:46 +02:00
Matthias Koefferlein
cd468d4d67
WIP
2025-04-27 23:00:46 +02:00
Matthias Koefferlein
282f6e9d23
Merge branch 'master' into feature/maly
2025-04-27 20:57:09 +02:00
Matthias Koefferlein
cb649e6ee6
Merge branch 'master' of github.com:KLayout/klayout
2025-04-27 20:56:38 +02:00
Matthias Koefferlein
e76be5b071
WIP
2025-04-27 20:55:11 +02:00
Matthias Köfferlein
e76e9b7d0b
Merge pull request #2017 from KLayout/bugfix/issue-2014
...
Fixed issue #2014 (strm2oas lef/def/gds collect drops cells reference…
2025-04-27 20:53:47 +02:00
klayoutmatthias
6e7eff95e7
Fixed glob feature for Windows.
2025-04-27 19:16:37 +02:00
Matthias Koefferlein
f1b35d0826
WIP (MALY reader)
2025-04-27 16:56:46 +02:00
Matthias Koefferlein
43310e7f49
Updating Python stubs
2025-04-27 16:07:01 +02:00
Matthias Koefferlein
9aa8d79bfc
Enhanced unit test for better debugging
2025-04-27 14:43:53 +02:00
Matthias Köfferlein
c7514ba24d
Merge pull request #2031 from KLayout/bugfix/issue-2011
...
Bugfix/issue 2011
2025-04-27 14:35:37 +02:00
Matthias Köfferlein
efb3b3eb3d
Merge pull request #2030 from KLayout/feature/issue-2024
...
Provide a solution of feature request #2024
2025-04-27 14:35:24 +02:00
Matthias Köfferlein
345f316af5
Merge pull request #2029 from KLayout/bugfix/issue-2026
...
Fixing issue #2026 (after 2.5D display main 2D layout does not displa…
2025-04-27 14:35:14 +02:00
Matthias Köfferlein
89d5bf0df1
Merge pull request #2028 from KLayout/bugfix/issue-2025
...
Fixed issue #2025 (brackets get added on PCell parameters)
2025-04-27 14:34:52 +02:00
Matthias Köfferlein
d8a13037a9
Merge pull request #2023 from KLayout/bugfix/issue-2020
...
Fixing the strict weak ordering issue inside the edge processor
2025-04-27 14:34:37 +02:00
Matthias Koefferlein
07eb49d482
Initializing MALY plugin
2025-04-27 01:11:38 +02:00
Matthias Koefferlein
5077b22963
Bugfix: deep, empty layers still need a layout attached
2025-04-27 00:30:50 +02:00
Matthias Koefferlein
5efcf83640
Bugfix: Deep mode XOR needs to maintain the layout origin of the first argument even if it is empty
2025-04-26 23:24:26 +02:00
Matthias Koefferlein
ffa42653fe
Addressing issue #2011
...
- "report" can now be late in DRC without internal error
Yet, the report will only capture the output layers
after the report statement has been called.
- Text objects don't create zero-area polygons in deep mode
XOR now.
2025-04-26 22:04:50 +02:00
Matthias Koefferlein
2435e774f4
Preventing an internal error when using report after 'input'
2025-04-26 19:05:40 +02:00
Matthias Koefferlein
2bd82af6fe
Provide a solution of feature request #2024
...
- There is a new configuration page entry called
"Min spacing" for the grid. The default value is 4.
The value specifies the grid min spacing in
units of UI font height.
- A bugfix is included: the ruler now is drawn after
the grid, hence is not hidden by it (specifically
in checkerboard pattern mode)
- To allow bigger grid spacing, the ruler now
is allowed to grow bigger than before.
2025-04-26 16:52:39 +02:00
Matthias Koefferlein
148498f840
Fixing issue #2026 (after 2.5D display main 2D layout does not display anymore with visible shapes)
2025-04-26 16:15:25 +02:00
Matthias Koefferlein
d317dc2fe3
Fixed issue #2025 (brackets get added on PCell parameters)
2025-04-24 23:30:50 +02:00
Matthias Koefferlein
f0943dea53
More debugging support
2025-04-24 22:01:56 +02:00
Matthias Koefferlein
8ece7bcce1
Activate pex module, GSI bindings
2025-04-22 22:37:23 +02:00
Matthias Koefferlein
0e99ebc056
Another test case, triangulation extractor behaves strange.
2025-04-20 22:28:55 +02:00
Matthias Koefferlein
93e10d1d72
Doc and small fixes
2025-04-20 21:52:44 +02:00
Matthias Koefferlein
9bf03390de
More robust output for tests, some debugging
2025-04-20 21:23:01 +02:00
Matthias Koefferlein
7f0b2d532d
Bugfixes
2025-04-20 20:07:47 +02:00
Matthias Koefferlein
f71210c64a
WIP, more testcases, debugging
2025-04-20 19:09:24 +02:00
Matthias Koefferlein
88a1ccbcfb
TriangulationRExtractor, some debugging, tests
2025-04-20 16:20:35 +02:00
Matthias Koefferlein
e9c2320f5d
WIP
2025-04-19 23:59:45 +02:00
Matthias Koefferlein
fcd42bd0f1
R network simplify
2025-04-19 23:48:58 +02:00
Matthias Koefferlein
1379d30502
Debugging, Tests
2025-04-19 20:55:15 +02:00