Matthias Koefferlein
853a7d7a13
Refinement of HM fix
2025-10-23 00:25:47 +02:00
Matthias Köfferlein
e3e96c97c7
Merge pull request #2188 from KLayout/feature/issue-2176
...
Implemented solution for issue #2176
2025-10-21 21:52:26 +02:00
Matthias Köfferlein
0ce335d8cf
Merge pull request #2192 from KLayout/bugfix/issue-2191
...
Implemented a fix for issue #2191 (LIBNAME not saved)
2025-10-19 19:45:37 +02:00
Matthias Koefferlein
937e557564
Implemented a fix for issue #2191 (LIBNAME not saved)
...
The fix consists of moving that options into the case-specific
options like DBU, instead of having it in the format-specific,
default writer options. So they can be specified on a per-case
basis and taken from the current layout by default.
Specifically:
* SaveLayoutOptions#gds2_libname is deprecated and replaced
by SaveLayoutOptions#libname
* -ol (buddy tools) is no longer format specific
* The GDS writer takes SaveLayoutOptions#libname, and
if empty, substitutes by the current libname. As last
resort, "LIB" is used, because LIBNAME cannot be an
empty string.
* The libname got removed from the global writer options UI
* In the "Save As" options dialog, it now is part of the global
options and initialized with the current layout's libname.
2025-10-19 13:36:07 +02:00
Matthias Koefferlein
780615ea9d
Implemented solution for issue #2176
...
- On "via" (Key "O"), the application switches into path mode
- A selection menu pops up if multiple layers are possible starting
points below the cursor
As a side effect, "tap" will only display the layer selection menu
if there is more than one layer to be selected.
2025-10-18 22:02:58 +02:00
Matthias Köfferlein
8cc01ca814
Merge pull request #2178 from KLayout/feature/issue-2168
...
Feature/issue 2168
2025-10-18 13:51:25 +02:00
Matthias Koefferlein
ce0d619470
Force update of cell tree after rename of library
2025-10-15 22:35:27 +02:00
Matthias Koefferlein
bbd473ef47
Added 'Cell#change_ref' to modify the library reference of a cell
2025-10-14 23:50:08 +02:00
Matthias Koefferlein
b3cc5d73fe
Renaming a library will also change the references
2025-10-14 23:13:10 +02:00
Matthias Koefferlein
d1e440d565
Doc updates
2025-10-11 21:23:58 +02:00
Matthias Koefferlein
67de518611
'Refresh Libraries' feature in File menu, new GSI method Library#refresh_all (static)
2025-10-11 21:14:56 +02:00
Matthias Koefferlein
5045287712
Bugfixes
2025-10-11 19:26:11 +02:00
Matthias Koefferlein
ff2beaf32f
Bugfix: cells were not replaced by defunc cold proxies after unregistering a lib
2025-10-11 17:54:26 +02:00
Matthias Koefferlein
b3ec482eb8
WIP (also for other issue #2172 )
...
- New virtual method "reload" for Library
- Implementing that for file-based libraries
- Integrating that into "refresh"
- GSI binding for Library#rename, Library#unregister
- Trigger changed event on Library#unregister
- Library#_destroy will unregister the library
- Typos fixed
2025-10-11 16:24:25 +02:00
Matthias Koefferlein
a93d514911
More sanity checks for cell index on various Layout methods
2025-09-28 14:46:30 +02:00
Matthias Koefferlein
0daba4f5e0
Fixing 64 bit coordinate build and incorrect porting of fill tool code.
2025-09-10 23:39:28 +02:00
Matthias Koefferlein
0ddc07392b
[consider merging] suppress normalization of orientation on GSI DPolygon#to_itype and Polygon#to_dtype
2025-09-08 21:16:05 +02:00
Matthias Koefferlein
3d5833d323
Updated doc
2025-09-07 18:49:14 +02:00
Matthias Koefferlein
eb6369f90f
Updated doc
2025-09-07 00:31:08 +02:00
Matthias Koefferlein
cd34125b0c
Bugfixing new implementation of fill tool, added tests for DRC implementation
2025-09-06 22:28:01 +02:00
Matthias Koefferlein
810f5fb8aa
Added basic fill tool tests for exclude_area
2025-09-06 21:25:47 +02:00
Matthias Koefferlein
feda8680ca
WIP: exclude area implemented. Needs optimization.
2025-09-06 19:15:12 +02:00
Matthias Koefferlein
ff6ab4267b
WIP: exclude area for fill functions
2025-09-06 17:58:44 +02:00
Matthias Koefferlein
8901359957
Merge branch 'master' into devel
2025-09-06 13:26:11 +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
50cad403b2
Doc updates (vias, paths)
2025-09-04 20:46:30 +02:00
Matthias Koefferlein
53a7414757
Merge branch 'master' into devel
2025-08-31 21:53:43 +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
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
f55a4824b7
Disabling features that are not used currently.
2025-08-23 23:05:14 +02:00
Matthias Koefferlein
3068c1da29
WIP: introducing grids in vias
2025-08-22 23:46:24 +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
39c8e0ca15
WIP: some refactoring, introducing cut layer in via definition
2025-08-18 22:53:45 +02:00
Matthias Koefferlein
42d32ecbb7
Some refactoring - putting some methods into db::Cell
2025-08-17 22:53:17 +02:00
Matthias Koefferlein
d8e271339e
WIP: some refactoring, vias switch layers now.
2025-08-17 21:50:02 +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
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 Koefferlein
2e1afc846a
Small bug fixed
2025-08-10 23:33:02 +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
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
8da28a0f72
Trying to fix issue #2108
2025-08-06 18:57:33 +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
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
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
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
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
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 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
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
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
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