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
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
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 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
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 Koefferlein
125e06bd49
Added doc, added a warning about no pins found at top level.
2025-05-25 17:53:11 +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 Koefferlein
6b8c79c488
Fixed a segfault (thanks, Martin\!)
2025-05-22 18:50:25 +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
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
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 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
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 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
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
1379d30502
Debugging, Tests
2025-04-19 20:55:15 +02:00
Matthias Koefferlein
8a122c8a7d
WIP: bug fixes, one more test
2025-04-18 23:29:29 +02:00
Matthias Koefferlein
71620445ee
Polygon#triangulate now returns a 'raw' region, same for SimplePolygon#triangulate. Working on hm_decomposition (tests, bug fixes etc.)
2025-04-18 15:13:29 +02:00
Matthias Koefferlein
e764716bda
Preserving the hull of simple polygons during insert in a Region, hence skipping the compression
2025-04-18 15:12:30 +02:00
Matthias Koefferlein
c6a4b6aba0
Added a new utility function
2025-04-18 00:15:43 +02:00
Matthias Koefferlein
3ed39e8a4a
Internal vertex ID added, cleanup
2025-04-17 23:40:58 +02:00
Matthias Koefferlein
a2ef7a28f8
WIP
2025-04-17 23:20:37 +02:00
Matthias Koefferlein
94396da117
Fixed problem of on-edge internal vertex/precious vertex
2025-04-16 23:43:27 +02:00
Matthias Koefferlein
4f1b03496b
Handling of points in Convex decomposition
2025-04-16 01:15:18 +02:00
Matthias Koefferlein
60d1fb0685
Porting HM decomposition to new PLC framework
2025-04-16 00:02:25 +02:00
Matthias Koefferlein
76e039bd2a
Removing obsolete dbTriangle/dbTriangles
2025-04-13 23:06:49 +02:00
Matthias Koefferlein
802cf99521
Porting dbTriangleTests
2025-04-13 22:58:37 +02:00
Matthias Koefferlein
627e244443
Refactoring: generalization of Triangles into db::plc::Graph in dbPLC.h
2025-04-13 22:44:14 +02:00
Matthias Koefferlein
291c91fcaa
Merge branch 'dev-polygon-graph' into wip
2025-04-13 17:16:16 +02:00
Matthias Koefferlein
d7193e972c
WIP
2025-04-12 23:59:43 +02:00
Matthias Koefferlein
7b069d17c3
WIP
2025-04-12 22:30:00 +02:00
Matthias Koefferlein
6f9a2da04a
WIP
2025-04-10 23:33:50 +02:00
Matthias Koefferlein
910f697d0b
WIP
2025-04-10 19:15:12 +02:00
Matthias Koefferlein
fa618a5b76
Fixing the strict weak ordering issue inside the edge processor
2025-04-09 23:35:09 +02:00
Matthias Koefferlein
3bd9a96f67
Merge branch 'bugfix/strmxor' into bugfix/issue-2014
2025-04-08 22:55:45 +02:00
Matthias Koefferlein
8150e732af
Hopefully fixing strm2xor finally, added a test
2025-04-08 19:14:01 +02:00
Matthias Koefferlein
789e183be9
Shortcutting hierarchy in case of skipped shapes, this restores the original performance
2025-04-08 00:04:21 +02:00
Matthias Koefferlein
41e9cb5893
Maybe fixing basic issues with strmxor
...
1. Output of shape countsi in deep mode was hierarchical with
output file, flat without
2. Refactoring of XOR (for_merged optimization) needed to
create cover cell variants
2025-04-07 00:53:43 +02:00
Matthias Koefferlein
bcf14ede3e
Fixed issue #2014 (strm2oas lef/def/gds collect drops cells referenced by sky130 spare)
...
Problem was that there was the implicit assumption that
substitution cells would be top cells (or at least: not
child cells of other substitution cells).
2025-04-05 22:06:29 +02:00
Matthias Koefferlein
b0f05b5327
WIP
2025-03-29 23:18:16 +01:00
Matthias Koefferlein
40a0113ce5
Fixing Texts[], EdgePairs[] and Edges[] operators - both in terms of returning xWithProperties and objects with properties at all
2025-03-27 00:27:53 +01:00
Matthias Koefferlein
3aebf90ecd
Texts[n] now also provides a TextWithProperties object. Bugfix: this method was not delivering any objects with properties at all.
2025-03-26 01:22:54 +01:00
Matthias Koefferlein
a24d5388d7
Region[] now returns a PolygonWithProperties object or nil
2025-03-26 00:56:54 +01:00
Matthias Koefferlein
db66a6ee74
Base class of DEdgePairWithProperties was EdgePair, not DEdgePair
2025-03-25 23:43:14 +01:00
Matthias Koefferlein
efeb2c061b
Layout queries support diff as placeholder for the current cell
2025-03-23 16:51:47 +01:00
Matthias Koefferlein
a22f48d87a
Texts#polygons now has an argument to specify a property key that receives the text string
2025-03-23 15:54:18 +01:00
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
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
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
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
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
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
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
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
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
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
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
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
569a8d7c52
First files.
2025-01-29 00:29:15 +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
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 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
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
28260a68b0
WIP
2024-12-24 15:39:27 +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
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
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
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
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 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 Koefferlein
ce4dc08969
Robustness of tests against different hash implementations, documentation update
2024-11-26 23:15:28 +01:00
Matthias Koefferlein
33d1cdc545
Show select expressions in column headers in custom queries
2024-11-24 22:28:01 +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
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
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 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 Köfferlein
78ec69f7b7
Merge pull request #1890 from KLayout/issue-1886
...
Issue #1886 fixed (doc update)
2024-10-19 16:31:30 +02:00