Matthias Koefferlein
f977973b85
RecursiveShapeIterator#property and RecursiveShapeIterator#properties
2025-03-23 15:23:19 +01:00
Matthias Koefferlein
71644fa56c
Implementing additional vertexes for triangulation
2025-03-23 11:34:13 +01:00
Matthias Koefferlein
8727c31d36
Merge branch 'bugfix/issue-1996' into wip
2025-03-23 11:11:20 +01:00
Matthias Koefferlein
16be7bf8c1
Merge branch 'bugfix/issue-2002' into wip
2025-03-23 11:10:54 +01:00
Matthias Koefferlein
593678e228
WIP: Polygon#delaunay and variants
2025-03-23 09:55:08 +01:00
Matthias Koefferlein
986474d465
Added one more testcase
2025-03-23 08:57:06 +01:00
Matthias Koefferlein
73364ee406
Solving issue #2002 by allowing variable widths on the path segments due to 45 degree segment snapping.
2025-03-23 00:57:25 +01:00
Martin Köhler
b8a6d0a1cd
Timer::memory_size() implementation for macOS
2025-03-23 00:03:29 +01:00
Matthias Koefferlein
6228668fa1
Fixing issue #1996 : Providing a more robust triangulation
2025-03-22 21:47:22 +01:00
Matthias Koefferlein
a727ed0b1d
Fixed a compiler warning
2025-03-22 20:47:28 +01:00
Matthias Koefferlein
2668b42d29
Separating tl::hfunc from std namespace. Needed to support int128 in tl::Variant for 64bit coordinate builds.
2025-03-22 20:35:15 +01:00
Matthias Koefferlein
561a760881
Updating doc, python stubs, fixed non-Qt builds
2025-03-22 17:51:07 +01:00
Matthias Koefferlein
e6914c78b9
Fixing builds for Qt4
2025-03-22 17:29:16 +01:00
Matthias Koefferlein
2aa88fe29c
Fixed a linker issue on Qt4
2025-03-22 14:09:00 +01:00
Matthias Koefferlein
283a9d0b22
Build fixes for Qt4
2025-03-22 00:02:13 +01:00
Matthias Koefferlein
69a8f3ac11
Preparations for 0.30.
2025-03-21 23:52:08 +01:00
Matthias Koefferlein
6f69efd427
WIP
2025-03-20 23:30:30 +01:00
Matthias Koefferlein
d9343ee530
WIP
2025-03-18 17:28:12 +01:00
Matthias Koefferlein
1f5c2b5132
Marked one test as long runner
2025-03-18 14:44:27 +01:00
Matthias Koefferlein
df631aa970
Some minor refactoring
2025-03-18 00:19:15 +01:00
Matthias Koefferlein
6596008826
instrumenting triangles implementation with Quad Tree, but without effect
2025-03-18 00:10:00 +01:00
Matthias Koefferlein
cd62f62140
WIP (quad tree)
2025-03-16 23:24:06 +01:00
Matthias Koefferlein
4e65b96cb7
WIP (quad tree)
2025-03-16 21:10:15 +01:00
Matthias Koefferlein
f3037d11f3
WIP (quad tree)
2025-03-16 18:16:15 +01:00
Matthias Koefferlein
4aeb94d42e
WIP (quad tree)
2025-03-16 17:13:06 +01:00
Matthias Koefferlein
477e2b5a31
WIP (quad tree)
2025-03-16 16:43:56 +01:00
Matthias Koefferlein
4369835e8b
WIP (quad tree)
2025-03-16 16:36:49 +01:00
Matthias Koefferlein
f1f35ae2a4
WIP (quad tree)
2025-03-16 14:46:03 +01:00
Matthias Koefferlein
5c8e0539ee
WIP (quad tree)
2025-03-16 13:56:16 +01:00
Matthias Koefferlein
54b5d9f5d6
WIP (quad tree)
2025-03-16 13:35:51 +01:00
Matthias Koefferlein
f136fdcde6
WIP
2025-03-16 00:52:57 +01:00
Matthias Koefferlein
d60b296417
Improvement: Device#terminal_ref to get a NetTerminalRef from a Device.
2025-03-14 23:29:09 +01:00
Matthias Koefferlein
d6273f9bbb
[consider merging] avoiding a crash due to recursion in PCell recomputation with macro editor open (IDE generated processEvent calls and these may issue mouse events during execution of a mouse event response code)
2025-03-13 00:01:28 +01:00
Matthias Koefferlein
930e09809b
Added an argument name
2025-03-09 23:20:57 +01:00
Matthias Koefferlein
2baaf322eb
Fixed a few doc typos and default values for 'lmap' on build_nets
2025-03-09 23:20:18 +01:00
Matthias Koefferlein
da88973df9
A number of new methods and variants in LayoutToNetlist
...
The goal is to support texts as native objects in
LayoutToNetlist.
Primarily this means, that instead of using a Region
to identify a layer, it is encouraged to use a
layer index instead. Also, Region is not longer the
only way to represent a layer, Texts is available
too.
It is possible now to retrieve the texts of a net
using "texts_of_net".
Also, the "lmap" parameter of "build_nets" became
optional. If "nil", a layer map is created based
on the layer info attribute of the layers.
2025-03-09 23:07:46 +01:00
Matthias Koefferlein
86202fa23c
WIP: refactoring of LayoutToNetlist for more consistent support of Texts for layers
2025-03-09 19:22:04 +01:00
Matthias Koefferlein
903bd70223
Fixed merge issues
2025-03-06 22:24:05 +01:00
Matthias Koefferlein
87e7d8e493
Merge branch 'master' into devel
2025-03-06 19:35:32 +01:00
Matthias Koefferlein
e06498763a
Fixing issue #1997 .
2025-03-05 19:12:38 +01:00
Matthias Koefferlein
5edb32cc33
Merge branch 'master' of github.com:KLayout/klayout
2025-03-05 18:41:43 +01:00
Matthias Koefferlein
4ebb292b7a
Updating doc, py includes
2025-03-05 18:41:28 +01:00
Matthias Koefferlein
605fa44ca6
Another refinement for DSS bug fix.
2025-03-05 10:26:45 +01:00
Matthias Koefferlein
70af6bd7c9
Another refinement for DSS bug solution
2025-03-04 20:37:58 +01:00
Matthias Koefferlein
7b4e8a3462
Refined solution for DSS remapping bug
2025-03-04 19:50:33 +01:00
Matthias Koefferlein
3893f3be56
Merge branch 'master' of github.com:KLayout/klayout
2025-03-03 18:36:05 +01:00
Matthias Köfferlein
8a01352549
Merge pull request #1992 from KLayout/feature/issue-1989
...
Feature/issue 1989
2025-03-03 18:35:46 +01:00
Matthias Koefferlein
ac1c656bc0
Fixed unit tests
2025-03-03 18:34:43 +01:00
Matthias Koefferlein
20111ce08d
Fixed issue #1993 ('with_area' modifies result of 'join')
...
Root cause was a held layout lock inside the TilingProcessor.
As that object was not always released inside the Ruby
DRC script, the lock was held sometimes longer than
needed and messed with the hierarchy system.
2025-03-03 01:05:04 +01:00
Matthias Koefferlein
fb9e0c4602
Fixed a compile issue
2025-03-02 22:24:04 +01:00
Matthias Koefferlein
5b4848ee50
Merge branch 'master' of github.com:KLayout/klayout
2025-03-02 22:22:05 +01:00
Matthias Köfferlein
2acbbffe19
Merge pull request #1991 from KLayout/feature/configure-lazy-pcell-evaluation
...
Feature/configure lazy pcell evaluation
2025-03-02 22:20:04 +01:00
Matthias Koefferlein
2e150980d5
Bugfix: 'Save all' was not updating the dirty state in the panel tabs
2025-03-02 22:12:18 +01:00
Matthias Koefferlein
414a06c70f
Bugfix: tab title was not updated when current cell is renamed
2025-03-02 20:54:00 +01:00
Matthias Koefferlein
32fe65adc0
[consider merging] Fixed a bug when returning a Region into a layout with cells unselected.
2025-03-02 19:06:48 +01:00
Matthias Koefferlein
01cc54ba49
[consider merging] avoid a crash during certain queries
...
This query used to crash:
"instances of cell .*.* where inst.trans.rot == 2"
on a layout with 1 hierarchy level and some cells with rot 180 degree
2025-03-02 19:06:45 +01:00
Matthias Koefferlein
3185a7aeb2
[consider merging] fixed a potential crash on 'save all'
2025-03-02 19:06:41 +01:00
Matthias Koefferlein
b434eb3239
[consider merging] Fixing two problems with layer mapping
...
1. Mapping "[*/*] 100/0:0/0" (for example) created 0/0
two times when the input contains 100/0 and 0/0. Now
it is a single layer only
2. The mapping table generated from strings now uses
layer indexes from a range that should not collide
with existing layer indexes.
2025-03-02 19:06:37 +01:00
Matthias Koefferlein
1372a7d04e
[consider merging] Bugfix: fixing a crash when editing PCell parameters (QR code PCell in this case) while the macro editor is open
2025-03-02 19:06:31 +01:00
Matthias Koefferlein
c6e7c47d6c
Some bug fixes, updated tests
2025-03-02 18:30:31 +01:00
Matthias Koefferlein
08666aeb82
API implementation ... many, many new functions named 'split_...'
2025-03-02 17:30:47 +01:00
Matthias Koefferlein
79262028ff
[consider merging] Fixed a bug when returning a Region into a layout with cells unselected.
2025-03-01 23:18:29 +01:00
Matthias Koefferlein
850a6f56d3
[consider merging] avoid a crash during certain queries
...
This query used to crash:
"instances of cell .*.* where inst.trans.rot == 2"
on a layout with 1 hierarchy level and some cells with rot 180 degree
2025-02-25 23:35:33 +01:00
Matthias Koefferlein
0e4594c0c3
[consider merging] fixed a potential crash on 'save all'
2025-02-25 22:06:56 +01:00
Matthias Koefferlein
c437d75a01
[consider merging] Fixing two problems with layer mapping
...
1. Mapping "[*/*] 100/0:0/0" (for example) created 0/0
two times when the input contains 100/0 and 0/0. Now
it is a single layer only
2. The mapping table generated from strings now uses
layer indexes from a range that should not collide
with existing layer indexes.
2025-02-25 22:02:11 +01:00
Matthias Koefferlein
50ab169385
Default for lazy eval mode is 'as requested by PCell' for backward compatibility
2025-02-18 23:41:20 +01:00
Matthias Koefferlein
b9079cdfdc
First proposal for a feature to configure lazy PCell evaluation
...
- The PCell page gets an option menu instead of "show parameter names"
- That option goes into that menu
- In addition, there is a "lazy PCell evaluation" submenu with the
modes:
* As requested by PCell (like now)
* Never
* Always
2025-02-18 23:36:30 +01:00
Matthias Koefferlein
7d1ddd95df
More patches
2025-02-16 22:38:29 +01:00
Matthias Koefferlein
f6616dfaf4
WIP: more fixes for Qt 6.8 compatibility
2025-02-16 21:49:05 +01:00
Matthias Koefferlein
c3fe77acd0
Fixing issue #1987 (build failure against Qt6.8)
2025-02-16 20:28:22 +01:00
Matthias Koefferlein
ae5ae25000
Properties filters for EdgePairs and Texts too.
2025-02-16 13:59:50 +01:00
Matthias Koefferlein
1fed2767e8
Property filter for edges too.
2025-02-16 13:35:49 +01:00
Matthias Koefferlein
a219576296
WIP: Region, Edges, EdgePairs and Texts filters can filter by property now, first implementation of Region property filter.
2025-02-16 00:08:35 +01:00
Matthias Koefferlein
54242bc848
Fixed some issues with operator+ and operator+= on Texts, Edges, Regions and EdgePairs with properties
2025-02-15 18:03:15 +01:00
Matthias Koefferlein
e48c6f3660
Edges#each, Edges#each_merged, Region#each, Region#each_merged, Texts#each and EdgePairs#each now deliver objects with properties too.
2025-02-14 22:11:18 +01:00
Matthias Koefferlein
502346608f
[consider merging] Bugfix: fixing a crash when editing PCell parameters (QR code PCell in this case) while the macro editor is open
2025-02-09 22:44:34 +01:00
Matthias Koefferlein
c09184989f
Avoiding call ambiguities when creating Edges, Region, EdgePairs and Texts from arrays of objects with properties.
2025-02-04 23:59:04 +01:00
Matthias Koefferlein
1f44a951f4
Polygon neighborhood compound operation
2025-02-03 20:47:31 +01:00
Matthias Koefferlein
aa67448401
WIP: polygon neighborhood
2025-02-02 23:57:59 +01:00
Matthias Koefferlein
aaae05016e
Fixed unit tests
2025-02-02 21:57:21 +01:00
Matthias Koefferlein
08dbe3aba5
Fixing problem with sorting order of tl::Variant as key in std::map
2025-02-02 19:41:54 +01:00
Matthias Koefferlein
1bd1bb06ce
More support for objects with properties: RDB integration.
2025-02-02 17:00:31 +01:00
Matthias Koefferlein
a282a5d665
Some more tests for properties inside Edges, Regions
2025-01-29 02:42:16 +01:00
Matthias Koefferlein
4fda872048
Fixed unit tests
2025-01-29 02:29:13 +01:00
Matthias Koefferlein
375ac6364b
More support for properties inside Edges, Texts, EdgePairs. WIP
2025-01-29 01:59:00 +01:00
Matthias Koefferlein
dfc7d6bef4
Enhancing Python/Ruby API for better support with properties
2025-01-29 00:59:28 +01:00
Matthias Koefferlein
d9233caa42
Fixed issue #1981
2025-01-29 00:56:37 +01:00
Matthias Koefferlein
f3bed8d4f2
Merge branch 'master' into devel
2025-01-25 21:41:30 +01:00
Matthias Koefferlein
2b2eb2e524
Fixed issue #1976 (crash on cross mode, lw > 1 and oversampling)
2025-01-22 00:24:57 +01:00
Matthias Koefferlein
2a47006a84
C++11 compatibility
2025-01-21 17:07:51 +01:00
Matthias Koefferlein
33b54f3f88
Merge branch 'master' into devel
2025-01-19 22:04:55 +01:00
Matthias Koefferlein
18c86cb204
Supporting log levels <0 on command line too, consistent behavior or log dialog
2025-01-17 10:49:54 +01:00
Matthias Koefferlein
44038cec9e
Updating .pyi files
2025-01-17 10:47:06 +01:00
Matthias Köfferlein
253270aaa3
Merge pull request #1973 from KLayout/feature/issue-1971
...
Feature/issue 1971
2025-01-17 10:10:19 +01:00
Matthias Köfferlein
b4dc9a6b1d
Merge pull request #1968 from KLayout/bugfix/issue-1967
...
Bugfix/issue 1967
2025-01-17 10:10:03 +01:00
Matthias Koefferlein
a75eca5511
Fixing issue #1971 : providing log levels -10 to disable warnings and -20 to disable errors too.
2025-01-16 20:42:53 +01:00
Matthias Koefferlein
07da5a3cf2
More details on Python doc involving class properties.
2025-01-16 20:42:14 +01:00
Matthias Koefferlein
629aef6d06
Fixing an issue with Python class property setters (only helps debugging, does not solve the issue)
2025-01-16 20:41:24 +01:00
Matthias Koefferlein
063040695a
Preparing tests for GSI class properties
2025-01-16 20:40:42 +01:00
Matthias Koefferlein
05ba1743d7
Adding 'Logger#set_verbosity' alias as it is difficult to implement class property setters in Python
2025-01-16 20:40:01 +01:00
Matthias Koefferlein
ddbb138872
Fixed issue #1967 (Net tracer bug)
2025-01-11 21:47:33 +01:00
Matthias Koefferlein
73dc31244a
Merge branch 'master' into devel
2025-01-04 21:51:37 +01:00
Matthias Koefferlein
bccf68504f
Implemented a solution for #1963 (locking cells)
...
A cell can be locked using
cell.locked = true
and unlocked again using
cell.locked = false
Also, cell.is_locked? can be used to test the locked state.
In locked state writing shapes and instances is forbidden
and doing so would raise an exception.
Also, cells cannot be deleted when locked. However, Layout#clear
and Layout#_destroy are always available.
Cells can still be renamed, even if locked.
2025-01-04 21:44:11 +01:00
Matthias Koefferlein
2d5ddd794c
Merge branch 'master' of github.com:KLayout/klayout
2025-01-04 19:36:43 +01:00
Matthias Köfferlein
53d290c1f8
Merge pull request #1960 from KLayout/bugfix/issue-1959
...
Fixing issue #1959
2025-01-04 19:35:48 +01:00
Matthias Köfferlein
64bfe9f118
Merge pull request #1958 from KLayout/bugfix/issue-1953
...
Fixing bug #1953 (inconsistent behavior of callback) maybe
2025-01-04 19:35:36 +01:00
Matthias Köfferlein
9e98b0de63
Merge pull request #1956 from KLayout/bugfix/issue-1955
...
Fixing bug #1955
2025-01-04 19:35:23 +01:00
Matthias Koefferlein
5d57cb5eed
Updating copyright to 2025
2025-01-04 19:32:33 +01:00
Matthias Koefferlein
c9da9dc6e0
Updating copyright to 2025
2025-01-04 19:28:56 +01:00
Matthias Koefferlein
826b811249
More generic object-with-properties GSI methods
2025-01-04 19:24:32 +01:00
Matthias Koefferlein
322b9419ad
API harmonization (scaled method)
2025-01-04 19:24:18 +01:00
Matthias Koefferlein
d036791cec
For consistency: Edge::scaled returns a DEdge now
2025-01-04 19:23:17 +01:00
Matthias Koefferlein
233d70d085
Transformation of objects with properties, GSI binding, bug fixing, tests
2025-01-01 22:49:50 +01:00
Matthias Koefferlein
8a9d7c6d15
[consider merging] Restricting transformation of shape refs and detecting some issues related to that.
2025-01-01 19:56:34 +01:00
Matthias Koefferlein
8c935409ea
Added a test for net neighborhood, predicable order of results of edge neighborhood scanner.
2024-12-31 16:37:01 +01:00
Matthias Koefferlein
c112f78b1c
WIP: edge and edge pairs with properties, tests, conversion constructors, edge neighborhood tests with properties.
2024-12-30 23:47:34 +01:00
Matthias Koefferlein
d406488bbb
Restoring original behavior of 'ignore properties' in width check
2024-12-30 21:19:43 +01:00
Matthias Koefferlein
58d3efeea4
Fixing compile issues
2024-12-29 23:12:44 +01:00
Matthias Koefferlein
941c0fff90
Fixing compile issues
2024-12-29 22:48:34 +01:00
Matthias Koefferlein
8eb181c05f
Refactoring compound ops to support properties in general.
2024-12-29 21:41:02 +01:00
Matthias Koefferlein
75e4282f01
Introducing PolygonWithProperties etc. in gsi
2024-12-29 17:07:56 +01:00
Matthias Koefferlein
1be436b764
WIP
2024-12-28 23:40:52 +01:00
Matthias Koefferlein
e26de4cc42
WIP
2024-12-28 23:38:20 +01:00
Matthias Koefferlein
f2dc78f438
API enhanced for new properties ID scheme, updated doc and tests
2024-12-28 17:13:43 +01:00
Matthias Koefferlein
e6ac66f8aa
Providing a more efficient event for property ID changes
2024-12-26 23:11:59 +01:00
Matthias Koefferlein
4beb8db15a
WIP: bug fixes, stability of tests
2024-12-26 21:45:28 +01:00
Matthias Koefferlein
5281397b17
Fixed some tests
2024-12-26 00:42:39 +01:00
Matthias Koefferlein
b4d1aa131c
Refactoring OASIS reader which wasn't working in non-editable mode
2024-12-25 22:51:56 +01:00
Matthias Koefferlein
34febff383
Added a test for property ID by name, value and name/value retrieval.
2024-12-25 21:04:07 +01:00
Matthias Koefferlein
d2a1d28c55
[consider merging] Fixed another typo in documentation
2024-12-25 17:50:14 +01:00
Matthias Koefferlein
53084e4d43
[consider merging] Fixed a typo in documentation
2024-12-25 17:49:28 +01:00
Matthias Koefferlein
1278ffeb77
WIP - refined tl::Variant::equal and less implementation, fixed tests
2024-12-25 17:36:29 +01:00
Matthias Koefferlein
dc73b8145f
WIP
2024-12-24 17:13:01 +01:00
Matthias Koefferlein
1cd7c6f985
WIP
2024-12-24 15:42:17 +01:00
Matthias Koefferlein
28260a68b0
WIP
2024-12-24 15:39:27 +01:00
Matthias Koefferlein
acdb18039b
WIP: OASIS reader tests debugging.
2024-12-24 13:07:02 +01:00
Matthias Koefferlein
f5fea29cc9
WIP: OASIS reader tests debugging.
2024-12-24 12:56:13 +01:00
Matthias Koefferlein
c6a097ae61
WIP
2024-12-24 11:45:16 +01:00
Matthias Koefferlein
128a00896e
WIP
2024-12-24 11:19:21 +01:00
Matthias Koefferlein
dd7aa9b84f
WIP: massive refactoring of properties repo and OASIS reader
...
Target is to reduce the properties repository to a singleton.
Hence, there is no need to translate property IDs and it
is possible to retrieve properties everywhere.
The OASIS reader is refactored to avoid property renaming
and change of property definitions per ID.
2024-12-24 00:00:43 +01:00
Matthias Koefferlein
9ea7e68576
WIP
2024-12-22 23:21:04 +01:00
Matthias Koefferlein
487a198ec9
WIP: OASIS reader refactoring for new properties repository concept
2024-12-22 17:28:54 +01:00
Matthias Koefferlein
19e44e071c
[consider merging] Bugfix: view was not refreshed if properties changed and property selectors were present
2024-12-22 15:17:10 +01:00
Matthias Koefferlein
f095374455
WIP: switching prop id change notification to events
2024-12-22 15:16:35 +01:00
Matthias Koefferlein
6db836e405
WIP: refactoring of properties repository
2024-12-22 14:23:07 +01:00
Matthias Koefferlein
86d2ee6efe
Fixing issue #1959
...
Problem was an overflow (inf) that got converted to 0
by "ceil".
2024-12-20 00:43:29 +01:00
Matthias Koefferlein
d9048f7976
Fixing bug #1953 (inconsistent behavior of callback) maybe
...
Problem was that the final callback coming (two times) from
"apply" was not updating the widget states (visibility etc.)
2024-12-18 22:13:04 +01:00
Matthias Koefferlein
5e2f4eb243
Fixing bug #1955
...
Problem was caused by a leaking PolygonIteratorDelegate that locked the
DSS layout object. Solved by wrapping in PolygonIterator and
changing the interface such that PolygonIteratorDelegegate is no
longer useful.
2024-12-16 22:58:48 +01:00
Matthias Koefferlein
58376b3391
Fixing issue #1948 (crash on dragging a cell) - problem was the popup which Qt does not like during drag-and-drop operations.
2024-12-08 19:36:37 +01:00
Matthias Koefferlein
bb635c3c59
Fixing pyi stubs for Box#moved and added defaults for Box#enlarge/enlarged
2024-12-02 22:23:14 +01:00
Matthias Koefferlein
dd5214dc6e
Fixing issue #1942 (PythonStandalone Package stubs errors), adding defaults for Box#enlarge and Box#enlarged (bonus)
2024-12-02 22:01:51 +01:00
Matthias Koefferlein
998a780676
Fixing bug #1941 (crash with navigator open)
2024-12-02 21:44:18 +01:00
Matthias Koefferlein
f53658ea4c
Handling problem of redundant key bindings
...
For example, @toolbar.ruler and edit_menu.modes.ruler was
redundant in a sense that they point to the same action,
hence, each entry in the key_binding config was overriding
the other one.
To solve this, there now is a primary entry, which is the
edit_menu one. Only that entry is effective and listed
in key_bindings.
2024-12-02 21:29:05 +01:00
Matthias Koefferlein
2bc913140d
Refined solution for partial mode snap, so grid does not have priority over edge or vertex snapping for 'snap to objects'
2024-12-02 19:42:12 +01:00
Matthias Koefferlein
e51a89b708
Python stubs update
2024-12-01 10:25:06 +01:00
Matthias Koefferlein
c25896ef40
Add-on: don't select texts if they are not shown
2024-11-30 21:54:01 +01:00
Matthias Koefferlein
2c6eca04d6
selecting shapes only if edges are visible too
2024-11-30 21:45:41 +01:00
Matthias Koefferlein
d361030048
Clearing status bar message when nothing is selected
2024-11-30 21:36:43 +01:00
Matthias Koefferlein
692967921a
Selecting instances only if one edge is visible
...
This is supposed to avoid that you select guard ring
cells for example and move them while working
on small details.
2024-11-30 21:35:06 +01:00
Matthias Koefferlein
e35aa97191
Added 'read_bytes' without options and 'write_bytes'. Added tests for write_bytes and for Ruby. Doc fixed.
2024-11-30 18:46:25 +01:00
Matthias Köfferlein
41383e4642
Merge pull request #1920 from rocallahan/readbytes
...
Add a Layout.read_bytes() method that reads a layout from a byte array
2024-11-30 17:47:03 +01:00
Matthias Koefferlein
6861b68964
Merge branch 'extended-transient-selection-config'
2024-11-30 08:27:01 +01:00
Matthias Köfferlein
637660ca69
Merge pull request #1933 from KLayout/wip
...
Wip
2024-11-30 08:23:35 +01:00
Matthias Köfferlein
ec21809cc3
Merge pull request #1916 from KLayout/maybe-pex-support
...
Some add-ons for potential application in the PEX context
2024-11-28 20:43:40 +01:00
Matthias Köfferlein
66d97bb5f1
Merge pull request #1928 from KLayout/feature/issue-1923
...
Feature/issue 1923
2024-11-28 20:43:01 +01:00
Matthias Köfferlein
1a5e8c9b36
Merge pull request #1927 from KLayout/bugfix/issue-1925
...
Fixed issue #1925 (MAGIC import fails)
2024-11-28 20:42:25 +01:00
Matthias Koefferlein
22d8709c06
Compatibility of tests with Windows
2024-11-26 23:24:12 +01:00
Matthias Koefferlein
ce4dc08969
Robustness of tests against different hash implementations, documentation update
2024-11-26 23:15:28 +01:00
Matthias Köfferlein
926dac96c6
Merge pull request #1910 from KLayout/bugfix/issue-1907
...
Bugfix/issue 1907
2024-11-26 21:06:04 +01:00
Matthias Koefferlein
5ebbee981b
Windows compatibility
2024-11-26 21:02:02 +01:00
Matthias Koefferlein
8737933939
Qt4 compatibility
2024-11-26 20:58:06 +01:00
Matthias Koefferlein
e533a34a08
Fixing the problem of (sometimes) slow transient selection (edit mode, top level selection only, large and interleaving arrays)
2024-11-25 23:23:48 +01:00
Matthias Koefferlein
33d1cdc545
Show select expressions in column headers in custom queries
2024-11-24 22:28:01 +01:00
Matthias Koefferlein
76800ea9bd
Removed an incorrect comment
2024-11-24 22:16:27 +01:00
Matthias Koefferlein
9e340943b7
Adding 'copy to clipboard' in search & replace results list and export function
2024-11-24 22:14:24 +01:00
Matthias Köfferlein
09aecdd639
Merge pull request #1919 from mschweikardt/master
...
typos in manual
2024-11-24 19:49:25 +01:00
Matthias Koefferlein
d5bebda6af
Formatting key-bindings and menu visibility in klayoutrc differently (one entry per line), so they are easier to edit
2024-11-24 18:31:19 +01:00
Matthias Koefferlein
5578b01f03
Some refactoring with the goal to support "move by" with "clone interactive"
2024-11-23 23:38:53 +01:00
Matthias Koefferlein
84c4f31a9c
Improve snapping in partial mode when snapping to objects
2024-11-23 20:33:15 +01:00
Matthias Koefferlein
dc9b3bb398
More consistent handling of special paths (like data: URLs) for technology components.
2024-11-23 19:19:23 +01:00
Matthias Koefferlein
1c23d77073
By default, layer properties are initialized when no .lyp file is specified in a technology
...
You can turn this feature off by disabling the "Initialize other layers with default properties"
option on the techology's "General" page.
2024-11-23 15:19:33 +01:00
Matthias Koefferlein
983611172c
Fixed some icons (navigation icons in netlist browser, edit icon in package manager)
2024-11-22 23:30:45 +01:00
Matthias Koefferlein
abe578562f
Extended (transient) selection config
...
- Line style can be configured for selection + transient selection
- Transient selection has it's own styles
2024-11-21 23:10:59 +01:00
Martin Köhler
7dcba4cebc
Bugfix/issue 1930: Fixed type from char to int
2024-11-19 17:23:06 +00:00
Matthias Koefferlein
476ec3a714
Implemented solution for #1923 ('move', 'moved')
...
1. Added move and moved to Point and DPoint
2. dx/dy is 0 by default now
3. arguments of move and moved are called
v (vector) and dx/dy consistently
2024-11-17 22:04:28 +01:00
Matthias Koefferlein
85caa4b397
Fixed issue #1925 (MAGIC import fails)
2024-11-17 21:42:29 +01:00
Matthias Koefferlein
0f438cdbd2
On same name, creating a RDB category would return the original one.
2024-11-13 18:26:06 +01:00
Matthias Koefferlein
fecb8a8c8a
RDB tests for Python too
2024-11-13 18:22:55 +01:00
Matthias Koefferlein
105751e2cf
Trying to become compatible with Python 3.13 on Windows
2024-11-13 00:47:27 +01:00
Robert O'Callahan
db56b0293e
Add a Layout.read_bytes() method that reads a layout from a byte array in Python or Ruby.
...
This is much more convenient and a bit more efficient than writing the bytes
to a temporary file and reading that back in. It's useful when we have received
a layout over the network or embedded in some file.
This makes a copy of the bytes but there doesn't seem to be any way to avoid that
currently.
2024-11-05 03:15:40 +00:00
Matthias Schweikardt
3778ab157f
typos in manual
2024-11-03 09:25:58 +01:00
Matthias Koefferlein
dd0949867f
Some convenience features: transformations in EdgeNeighborhood, added Matrix transformation support for edge pairs.
2024-11-01 17:34:46 +01:00
Matthias Koefferlein
2629700566
RBA tests, reproducible order of edge events, all edges are reported - even those which do not have neighbors.
2024-10-31 23:43:27 +01:00
Matthias Koefferlein
3073c1917f
Some enhancements: internal merging, tests
2024-10-31 22:55:46 +01:00
Matthias Koefferlein
0cca9afc7e
Generalization: providing output functionality.
2024-10-31 21:34:17 +01:00
Matthias Koefferlein
9f2a2075c7
Implementing full support for compound operations in EdgeNeighborhood, including foreign()
2024-10-29 23:18:01 +01:00
Matthias Koefferlein
ac1126f5c4
update documentation
2024-10-29 21:01:31 +01:00
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 Koefferlein
0d2379ad75
WIP: debugging, added polygon callback for EdgeNeighborhoodVisitor
2024-10-24 17:55:56 +02:00
Matthias Koefferlein
7af91fa2b5
Further debugging
2024-10-23 22:53:16 +02:00
Matthias Koefferlein
f7dde684f0
WIP: some basic debugging
2024-10-23 18:38:26 +02:00
Matthias Koefferlein
46b44e6287
WIP: builds, but not tested yet.
2024-10-21 23:35:34 +02:00
Matthias Koefferlein
422c88207c
WIP
2024-10-21 22:16:16 +02:00
Matthias Koefferlein
a983603dbc
Preparing 0.29.8
2024-10-20 19:57:03 +02:00
Matthias Köfferlein
2d1658cbfa
Merge pull request #1906 from KLayout/issue-1899
...
Issue 1899
2024-10-20 16:50:25 +02:00
Matthias Köfferlein
05c13e66b0
Merge pull request #1904 from KLayout/bugfix/issue-1902
...
Bugfix/issue 1902
2024-10-20 13:28:50 +02:00
Matthias Köfferlein
d5358c87ae
Merge pull request #1903 from KLayout/wip
...
Wip
2024-10-20 13:25:39 +02:00
Matthias Köfferlein
6c82177dfa
Merge pull request #1883 from KLayout/issue-1869
...
Fixed issue #1869 by adding a new option, -to or --top-output to strmxor
2024-10-20 13:22:12 +02:00
Matthias Koefferlein
761388f680
Updating definitions for Qt5 too - some additional operator bindings show up.
2024-10-19 23:15:37 +02:00
Matthias Koefferlein
0328c7e9bd
Updating Qt binding files
2024-10-19 20:35:43 +02:00
Matthias Koefferlein
60294d9226
Implemented solution for issue #1900 (help/about dialog content selectable)
2024-10-19 17:27:56 +02:00
Matthias Koefferlein
c6a9a59247
Maybe fixing second part of issue #1902 .
2024-10-19 17:20:49 +02:00
Matthias Koefferlein
f213e96d4a
Partial fix for issue #1902
2024-10-19 17:12:53 +02:00
Matthias Köfferlein
9cf3c528a3
Merge pull request #1888 from KLayout/issue-1885
...
Fixed #1885
2024-10-19 16:32:42 +02:00
Matthias Köfferlein
6b906b9582
Merge pull request #1889 from KLayout/issue-1877
...
Fixed issue #1877 (rounding introduces DRC error in LEF/DEF via)
2024-10-19 16:31:43 +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 Köfferlein
63dfaccff9
Merge pull request #1891 from KLayout/issue-1887
...
issue #1887 fixed (doc update)
2024-10-19 16:31:12 +02:00
Matthias Koefferlein
dc0f549ab4
Embedding fix for issue #1892 which is closely related to #1877
2024-10-14 23:41:55 +02:00
Matthias Koefferlein
7b7e98d49a
Fixed issue #1877 (rounding introduces DRC error in LEF/DEF via)
2024-10-12 21:44:49 +02:00
Matthias Koefferlein
19b2aea471
Fixed #1885
...
Now, the default of --subst-char in strm2oas is "don't substitute".
You can explicitly specify "don't substitute" using "--subst-char="
(without value).
2024-10-12 21:19:09 +02:00
Matthias Koefferlein
eeb05e47a5
Issue #1886 fixed (doc update)
2024-10-12 21:00:07 +02:00
Matthias Koefferlein
dae0c16bf6
issue #1887 fixed (doc update)
2024-10-12 20:55:17 +02:00
Matthias Koefferlein
8dab13eb42
In DRC, with '@+' as target layout, maintain the original active cell view. This way, DRC can be re-run on the original layout, but each time generating a new output cellview.
2024-10-06 19:08:38 +02:00
Matthias Koefferlein
f25693373e
Small doc update
2024-10-06 19:07:42 +02:00
Matthias Koefferlein
b44ff4b8e8
Avoid a potential hard assertion in debug mode
2024-10-06 19:07:17 +02:00
Matthias Koefferlein
d7abbaca36
Fixed issue #1869 by adding a new option, -to or --top-output to strmxor
2024-10-06 18:33:53 +02:00
Matthias Köfferlein
3167af31c4
Merge pull request #1881 from KLayout/bugfix/issue-1880
...
Enhancing GDS2 writer float conversion such that less rounding occurs
2024-10-06 18:21:26 +02:00
Matthias Köfferlein
71a9e131a1
Merge pull request #1876 from KLayout/issue-1870
...
Bugfix for issue #1870 : do not allow editing on invalid layers
2024-10-06 18:20:45 +02:00
Matthias Koefferlein
1289db7ebd
Enhancing GDS2 writer float conversion such that less rounding occurs
2024-10-04 17:47:37 +02:00
Matthias Koefferlein
4be134e293
LEF/DEF reader recognizes existing layers by name now
...
This is helpful as it assigns layer/datatype numbers
automatically. If only a name is given for a layer
(i.e. "OUTLINE"), it will not match any previously
loaded layer and layer matching goes by layer/datatype
first.
This way, every "reload" added a new "OUTLINE" layer.
2024-10-03 18:50:00 +02:00
Matthias Koefferlein
10baec009c
Bugfix for issue #1870 : do not allow editing on invalid layers
2024-09-28 18:11:53 +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
a0b8e4bea1
Updating stubs, DRC documentation
2024-09-22 21:11:21 +02:00
Matthias Koefferlein
4c33032f93
Merge branch 'better-not-break'
2024-09-22 20:08:10 +02:00
Matthias Koefferlein
ec5de7b7f1
Compatibility with Python 3.13.
2024-09-22 02:38:33 +02:00
Matthias Koefferlein
2e58421fb3
Fixed builds without Qt and without libpng
2024-09-22 01:40:03 +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
45a2803777
Merge branch 'wip' into better-not-break
2024-09-18 23:54:20 +02:00
Matthias Koefferlein
c6b2dba847
Updating tests
2024-09-18 23:53:51 +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 Köfferlein
ff708186ec
Merge pull request #1855 from KLayout/issue-1853
...
Issue 1853 (slow Cell#write any Layout#write with huge polygons)
2024-09-16 23:24:08 +02:00
Matthias Koefferlein
56e88805a0
Refusing to write files with empty string and to a path that is a directory - the latter would rename the directory and later try to remove it
2024-09-15 17:15:25 +02:00
Matthias Koefferlein
c917831eb0
Fixed issue #1857 (crash when closing window with properties dialog open)
2024-09-15 17:00:31 +02:00
Matthias Koefferlein
491048db4c
Fixed new Python module handling for standalone module case
2024-09-15 16:28:43 +02:00
Matthias Koefferlein
20d599b1de
Mute noisy diagnostics with Python debug builds, avoid post-Finalize Python API access by pre-Finalize cleanup of modules. This avoids an assertion in Python debug builds and is a better style anyway.
2024-09-15 16:28:39 +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
16b6328f1c
Fixed new Python module handling for standalone module case
2024-09-14 16:16:58 +02:00
Matthias Koefferlein
f1f3c64ab1
Mute noisy diagnostics with Python debug builds, avoid post-Finalize Python API access by pre-Finalize cleanup of modules. This avoids an assertion in Python debug builds and is a better style anyway.
2024-09-14 15:33:03 +02:00
Matthias Koefferlein
79dd2084ce
tl::list enhancement
2024-09-14 13:52:25 +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
d70389c0c7
Merge pull request #1848 from KLayout/bugfix/issue-1847
...
Fixing bug #1847 (problem with fresh bindkey configuration)
2024-09-08 22:24:08 +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
68d15e01af
DRC: more variants for layer#insert - labels, DBU-unit types
2024-09-08 19:16:40 +02:00
Matthias Koefferlein
d902f5d53d
Apply property changes before switching tree node in properties editor
2024-09-08 18:48:12 +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
4f72d3353f
Fixed new Python module handling for standalone module case
2024-09-08 00:24:56 +02:00
Matthias Koefferlein
1e28e30e71
Mute noisy diagnostics with Python debug builds, avoid post-Finalize Python API access by pre-Finalize cleanup of modules. This avoids an assertion in Python debug builds and is a better style anyway.
2024-09-07 21:27:50 +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
2c1d742275
Fixing bug #1847 (problem with fresh bindkey configuration)
2024-09-07 19:18:01 +02:00
Matthias Koefferlein
a4467cfd3e
Fixed a small bug: when deleting the only top cell, you could not create new cells as an error was issued saying 'no layout present'
2024-09-01 21:27:25 +02:00
Matthias Koefferlein
bc78f4a0e9
Added test.
2024-09-01 21:26:44 +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
be7c4538ba
Fixed a crash in the properties editor
...
This crash happened sometimes when clicking on the
node elements (e.g. "Boxes" or "Instances") of the
object tree, the node was the second or further one
and the category clicked at was containing one
item only.
2024-09-01 18:10:14 +02:00
Matthias Koefferlein
793c892b2b
Reworking documentation of LayoutToNetlist
2024-09-01 17:47:25 +02:00
Matthias Koefferlein
a8bedf7116
DRC doc update
2024-08-14 18:35:41 +02:00
Matthias Koefferlein
421999d8b5
update py stubs
2024-08-14 08:08:09 +02:00
Matthias Köfferlein
77782e4f1c
Merge pull request #1825 from KLayout/wip
...
Some enhancements to "Descend" and "Ascend"
2024-08-13 08:06:24 +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 Koefferlein
7a7ee8492b
Some enhancements to "Descend" and "Ascend"
...
- Ascend now ascends further up if a child cell is
selected as top level cell
- Descend now looks into transiently selected shapes
or instances too (mouse hover mode)
- New feature "Descend into" which combines "Descend"
with "make new top".
- Fixed a compiler warning in layLayoutViewBase.cc
2024-08-10 14:58:02 +02:00
Matthias Köfferlein
857fbc873c
Merge pull request #1824 from KLayout/bugfix/issue-1823
...
Fixed bug #1823 (select_all not working)
2024-08-10 13:33:48 +02:00
Matthias Köfferlein
ea6ffb9b0c
Merge pull request #1822 from KLayout/feature/issue-1819
...
Feature/issue 1819
2024-08-10 13:33:36 +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
aada3424a9
Fixed non-Qt builds
2024-08-09 17:45:24 +02:00
Matthias Koefferlein
f218c009a0
Fixed bug #1823 (select_all not working)
...
1. Fixed "LayoutView#select_all"
2. Box selection now will select texts at their origin again:
this way it is included in the bounding box. Point mode still
takes the text's glyph area.
2024-08-08 23:26:05 +02:00
Matthias Koefferlein
a601447d5f
Properties dialog: stop handling 'Enter' key - use 'Ok' to close it
2024-08-08 20:46:22 +02:00
Matthias Koefferlein
d31c9dbf6c
Bugfix: avoid a segfault in the property editor due to invalid array access (difficult to reproduce).
2024-08-07 22:38:25 +02:00
Matthias Koefferlein
4631a806ef
Provide a warning message when closing the window while an operation is ongoing.
2024-08-07 00:48:42 +02:00