Matthias Koefferlein
d7bdbae60b
WIP: more refactoring
2023-01-19 12:20:58 +01:00
Matthias Koefferlein
fb60e01f45
WIP: refactoring. Goal is to supply a netlist builder object for caching netlist build information
2023-01-19 12:08:50 +01:00
Matthias Koefferlein
c16082654f
WIP: fixed unit tests
2023-01-19 01:05:26 +01:00
Matthias Koefferlein
d230691ae4
WIP: bug fixing, new tests for property filters
2023-01-19 00:56:17 +01:00
Matthias Koefferlein
75c20aa03a
WIP: fixed unit tests
2023-01-19 00:29:30 +01:00
Matthias Koefferlein
8ac08778c2
WIP: reworked and implemented a property translation/selection/enabling scheme for the shape containers + GSI binding.
2023-01-19 00:25:07 +01:00
Matthias Koefferlein
500051ef1d
WIP: bug fix
2023-01-18 17:07:53 +01:00
Matthias Koefferlein
4edf4ab1f7
WIP: Added support for size with properties
2023-01-18 16:22:36 +01:00
Matthias Koefferlein
71d2d9ef3f
WIP: tests for complex DRC ops with properties
2023-01-18 15:46:09 +01:00
Matthias Koefferlein
f1646a79fe
WIP: preparations for generic DRC with properties
2023-01-18 15:24:00 +01:00
Matthias Koefferlein
9f6f0e2d43
[BUGFIX] WIP: property support for DRC functions, bugfix: DRC check against raw (non-merged semantics) second input did not work
2023-01-18 12:34:47 +01:00
Matthias Koefferlein
c3383cf7df
WIP: enabling properties for DRC checks, refactoring
2023-01-18 02:23:15 +01:00
Matthias Koefferlein
1b7b077cea
WIP: refactoring, started implementing DRC checks with property support
2023-01-18 01:36:22 +01:00
Matthias Koefferlein
40267dddb6
WIP: polygons to edges with properties
2023-01-17 19:07:32 +01:00
Matthias Koefferlein
8fb4e36809
WIP: refactoring, preparing polygon-to-edge with properties
2023-01-17 17:08:36 +01:00
Matthias Koefferlein
f0e20ad258
WIP: cleanup
2023-01-17 14:17:42 +01:00
Matthias Koefferlein
5ff187a56d
WIP: fixed unit tests
2023-01-17 12:37:12 +01:00
Matthias Koefferlein
5cd322b04c
[CONSIDER MERGING TOO] rectified solution for text/polygon interaction
2023-01-17 12:36:56 +01:00
Matthias Koefferlein
dfac3b1b44
WIP: Implemented property support for two-boolean
2023-01-17 11:24:08 +01:00
Matthias Koefferlein
72bb6d4a26
WIP: bug fix for deep region merge property computation - was missing on root connector clusters
2023-01-17 10:21:28 +01:00
Matthias Koefferlein
dc2ae953ed
WIP: bug fixes
2023-01-17 02:38:15 +01:00
Matthias Koefferlein
7f2200cab5
WIP: Bug fixes, refactoring
2023-01-17 01:37:10 +01:00
Matthias Koefferlein
99887a15f0
WIP: refactoring, enabling properties for flat processing
2023-01-17 01:00:27 +01:00
Matthias Koefferlein
58ab6ce9fd
WIP: fixed tests, dropped property constraint on XOR and OR (not implemented properly), added 'ignore' property constraint - in the 'no properties' case, properties are passed from the first input.
2023-01-16 16:27:31 +01:00
Matthias Koefferlein
3b4a460581
WIP: Further test updates
2023-01-16 02:29:03 +01:00
Matthias Koefferlein
48b55f142a
WIP: flat region tests, partially working
2023-01-16 02:06:21 +01:00
Matthias Koefferlein
db870614ab
[CONSIDER MERGING] grid check markers are not exactly aligned with vertexes in deep mode
2023-01-16 01:35:08 +01:00
Matthias Koefferlein
70d16425e1
WIP: added tests for as if flat regions
2023-01-16 01:02:30 +01:00
Matthias Koefferlein
bf47805b29
WIP: support for properties in deep andnot, tests
2023-01-16 01:00:03 +01:00
Matthias Koefferlein
fad85e4260
[CONSIDER MERGING] Bugfix: polygon interaction with texts did not capture texts because of vanishing bounding box
2023-01-16 00:59:32 +01:00
Matthias Koefferlein
b7c515bf91
WIP: enabling booleans with property constraints
2023-01-15 20:23:32 +01:00
Matthias Koefferlein
f3e610b6e8
WIP: transfer polygon properties to edges
2023-01-15 15:28:10 +01:00
Matthias Koefferlein
5fa4d62da7
WIP: property support for transformation, filters, processors
2023-01-15 15:03:34 +01:00
Matthias Koefferlein
9f633b813d
WIP: property management for flat shape containers
2023-01-15 13:34:47 +01:00
Matthias Koefferlein
33b5723068
WIP: property mapping between layouts
2023-01-15 11:56:41 +01:00
Matthias Koefferlein
311d9c6eb5
WIP: new net property mode for net builder (name + id)
2023-01-14 23:56:31 +01:00
Matthias Koefferlein
9f632f29d3
WIP: updated test data
2023-01-14 23:46:48 +01:00
Matthias Koefferlein
053269e0b2
WIP: added test
2023-01-14 22:31:48 +01:00
Matthias Koefferlein
467208fb6e
WIP: property-aware meging of deep region
2023-01-14 22:26:42 +01:00
Matthias Koefferlein
478b838589
WIP: properties for regions, starting with deep regions
2023-01-09 00:05:31 +01:00
Matthias Koefferlein
0ba719ad84
WIP: properties for regions, tests for flat and original layer regions
2023-01-08 22:44:23 +01:00
Matthias Koefferlein
1dfa5abc9a
WIP: introducing properties for FlatRegion and others
2023-01-08 19:27:41 +01:00
Matthias Koefferlein
f9ccb60dd9
WIP: experimental - introducing net DRC, first steps
2023-01-07 23:42:59 +01:00
Matthias Koefferlein
af30695ab3
WIP: experimental - introducing net DRC, first steps
2023-01-07 21:56:25 +01:00
Matthias Koefferlein
a85dbd3d31
Updating copyright notice to 2023
2023-01-01 22:27:22 +01:00
Matthias Koefferlein
420f8cfdc3
Fixed issue #1240 (Layer is not activated from layer properties file on first creation)
2023-01-01 18:45:37 +01:00
Matthias Koefferlein
44a2aa9ca1
Fixed #1230 (LVS browser crashes) and immediately dispatching a 0.28.2 version
2022-12-22 23:17:08 +01:00
Matthias Koefferlein
884203149a
Added tests for recent changes
2022-12-17 20:33:50 +01:00
Matthias Koefferlein
b1e78efcaa
WIP: trying to enhance layout layer lookup performance.
2022-12-14 22:47:16 +01:00
Matthias Koefferlein
ad27c9a51d
WIP: trying to enhance layout layer lookup performance.
2022-12-13 23:41:34 +01:00
Matthias Koefferlein
f49fa646fc
Patched PR with leaner solution
2022-12-13 21:54:00 +01:00
Matthias Koefferlein
5a6ea0148a
Merge remote-tracking branch 'quantamhd/fix_segfault' into wip
2022-12-13 21:52:40 +01:00
Ethan Mahintorabi
0a03a2809a
Fixes segfault on some linux systems
...
The static order initialization seems to be more present throughout
Klayout and might cause additional issues, but this fix stopped the
segfault on my machine. When compiling with asan there are a number
or other issues that could be addressed, but it's not clear if they're
real problems.
dbLayout change occured when using the python API to read a DEF layout.
When the layout is updated the code uses a const iterator which
implicitly wraps the non-const iterator. In the loop the end() is
implicitly wrapped, which tries to dereference a nullptr. My fix
checks to ensure that the non-const iterator is not null before trying
blindly dereference it.
2022-12-12 19:03:59 +00:00
Matthias Koefferlein
2c94179589
Fixed #1216 (issue with moved - internal error)
...
This issue is fixed. In addition the following problems were fixed/found:
* General issue with handling merged state in in-place transform (merge shadow region needs to be updated too)
* moved now is hierarchical (also for edges)
2022-12-08 20:27:42 +01:00
Matthias Koefferlein
92d0174711
Fixed a build issue
2022-12-08 00:48:23 +01:00
Matthias Koefferlein
d81e0ba51e
Merge branch 'points-as-db-objects'
2022-12-07 21:59:02 +01:00
Matthias Koefferlein
5a252f2b29
Updated golden test data for fast DRC
2022-12-07 21:58:24 +01:00
Matthias Koefferlein
dc6408a068
Some cleanup
2022-12-06 18:44:29 +01:00
Matthias Koefferlein
2601f870ec
Fixed compile errors
2022-12-05 07:39:03 +01:00
Matthias Koefferlein
035232c978
Providing single-linked list implementation with fast size to address DRC merge performance issue on CentOS
2022-12-05 02:22:08 +01:00
Matthias Koefferlein
43ff59750a
Fixed a race condition in DRC local processor with multiple threads
2022-12-04 21:04:21 +01:00
Matthias Koefferlein
0c89d8fec8
WIP: points as db objects - added tests, bug fixes
2022-12-04 19:54:29 +01:00
Matthias Koefferlein
4d04cf4fe3
WIP: introducing points as valid objects into database - implementation. Includes: edge pair perimeter and area.
2022-12-04 19:54:26 +01:00
Matthias Koefferlein
63ad38e9d9
Region#inside/not_inside/covering/not_covering is faster as it skips the merge step now. Fixed deep mode implementation (counting mode detection) with performance effect on outside/interacting too
2022-12-03 20:59:36 +01:00
Matthias Koefferlein
cca20773a7
Include performance patch for array-vs-array interactions in deep mode
2022-12-02 17:53:15 +01:00
Matthias Koefferlein
13874986b2
Bugfix, tests updated
2022-11-28 23:40:11 +01:00
Matthias Koefferlein
a752257f52
Multiple empty-input shortcuts for DeepRegion - tests need update
2022-11-28 01:35:49 +01:00
Matthias Koefferlein
5597ee8960
DeepRegion performance: take fast path for DeepRegion::edges if merged polygons are available.
2022-11-27 21:59:06 +01:00
Matthias Koefferlein
5db45d7aee
Proper setting of merged status after interacting/inside etc.
2022-11-27 19:43:53 +01:00
Matthias Koefferlein
d76eef10af
GSI enabling of Edges#in_and_out, Region#in_and_out and corresponding DRC feature
2022-11-27 15:59:18 +01:00
Matthias Koefferlein
f6f4dbeb67
Edges#in/in_and_out: tests added
2022-11-27 15:31:25 +01:00
Matthias Koefferlein
0304930136
WIP: introducing Region#in_and_out and Edges#in_and_out, support for hierachical Edges#in, Tests updated
2022-11-27 14:53:30 +01:00
Matthias Koefferlein
25e61205d2
Deep implementation of in/not_in
2022-11-27 10:37:43 +01:00
Matthias Koefferlein
9008464268
WIP: hierarchical mode for Region#in and Region#not_in
2022-11-27 10:26:01 +01:00
Matthias Köfferlein
1f2e8b4012
Merge pull request #1193 from KLayout/issue-1189
...
Issue 1189 High memory footprint for DRC deck
2022-11-26 19:55:40 +01:00
Matthias Koefferlein
fb60212a5b
More numerical stability for reproducible tests drcSimpleTests:56 and 57 (45 degree angles)
2022-11-25 22:36:19 +01:00
Matthias Koefferlein
5057b0a626
Merge branch 'issue-1190'
2022-11-25 07:51:34 +01:00
Matthias Koefferlein
20b6608410
Test updated
2022-11-24 22:12:01 +01:00
Matthias Koefferlein
53d6e8d3cb
DSS now keeps layouts (avoids excessive cell mapping), frequent GC in DRC tests for heavy GC load testing
2022-11-24 20:41:19 +01:00
Matthias Koefferlein
e04875b4e0
Fixed a problem with object lifetime and tiling processor input found after GC became active. Added a documentation hint.
2022-11-23 01:03:36 +01:00
Matthias Koefferlein
16d662229d
Fixed issue #1190 (Edges#extended_xx in deep mode)
2022-11-21 23:30:28 +01:00
Matthias Koefferlein
30ab1a13ca
Added tests, documentation, doc bug fixes for angle-class edge selectors
2022-11-12 18:16:57 +01:00
Matthias Koefferlein
2341170065
First tests
2022-11-12 00:29:50 +01:00
Matthias Koefferlein
b02d3b24a8
WIP: first draft of angle-class selectors for edges and edge pairs for simplifying edge orientation checks
2022-11-11 23:46:45 +01:00
Matthias Koefferlein
aadb8510d2
Merge branch 'performance' into wip
2022-11-11 21:55:39 +01:00
Matthias Koefferlein
462976fc05
Convenience isotropic versions for Box::enlarge(d)
2022-11-10 22:31:13 +01:00
Matthias Koefferlein
d7263eac74
Square and rectangle convenience ctor for GSI Box and DBox
2022-11-10 22:08:41 +01:00
Matthias Koefferlein
c220ed0cbc
Merge branch 'master' into wip
2022-11-09 23:30:38 +01:00
Matthias Koefferlein
1edbd6232f
Merge branch 'python-typehints'
2022-11-09 23:13:31 +01:00
Matthias Koefferlein
5b710fa3a4
More stable result of antenna debug output text placement
2022-11-06 19:02:35 +01:00
Matthias Koefferlein
131745433d
Doc fixes
2022-11-04 23:16:15 +01:00
Matthias Koefferlein
27e04c61a0
Less compiler warnings
2022-11-02 23:35:18 +01:00
Matthias Koefferlein
9ec7c0ca44
layout_diff GSI binding: provide interface for edge pair diffs
2022-11-02 23:35:06 +01:00
Matthias Koefferlein
a8ea234522
Enable Qt6 build from build.sh (gcc needs c++17) and less noisy builds with gcc 11 etc.
2022-11-02 23:09:44 +01:00
Matthias Koefferlein
d47cbeb231
[consider merging] Bugfix: generation of texts for antenna results
2022-11-02 23:07:55 +01:00
Matthias Koefferlein
c8e60d666c
Fixed #1167 (delete_cells slow)
2022-11-01 14:57:39 +01:00
Matthias Koefferlein
548db003ed
Debugged Ruby PCellDeclarationHelper, small enhancements
2022-10-30 10:00:51 +01:00
Matthias Koefferlein
b1b51d3152
Bug fix Ruby PCell declaration helper - needs testing
2022-10-30 00:23:32 +02:00
Matthias Koefferlein
8aa135b964
Python implementation of PCell helper with callback
2022-10-30 00:15:48 +02:00
Matthias Koefferlein
1b666e1cc8
Bug fixes.
2022-10-29 23:43:56 +02:00
Matthias Koefferlein
194a6f3526
Added callback helper for Ruby PCellDeclarationHelper
2022-10-29 22:38:33 +02:00
Matthias Koefferlein
0e5842d36e
Fixed some qrc files, added more attributes to PCellParameterState (tool tip, readonly, icon), added option to show parameter names
2022-10-29 21:20:16 +02:00
Matthias Koefferlein
d00c4a94d6
WIP: first version GSI binding for callbacks
2022-10-29 00:22:54 +02:00
Matthias Koefferlein
eb8c96054c
WIP: preparations for callbacks in PCell code
2022-10-28 23:41:31 +02:00
Matthias Koefferlein
e6da3fc22c
WIP: callbacks for PCells
2022-10-27 00:42:28 +02:00
Matthias Koefferlein
daad80d5d5
Synthesize getters from is_... predicates, added getter for RecursiveShapeIterator#shape_flags
2022-10-23 22:08:06 +02:00
Matthias Koefferlein
fbd4c84d84
Refactoring of pya/rba/expressions
...
Goal is to support "*!" which is a variant of multiplication
without the commutative nature.
The refactoring yields a more consistent handling of
Python specializations. Now this happens when the methods
are collected, rather than later. This way, specific behavior
for identically named synonyms can be implemented for example.
This is the case for the "*" operator in Trans which is partially
commutative and partially not.
2022-10-20 23:26:14 +02:00
Matthias Koefferlein
c012bb846e
Cherry-picked Python type hint enhancements from master
2022-10-19 22:13:03 +02:00
Matthias Koefferlein
11f6eb21e0
Added ParentCellInst#dinst
2022-10-18 21:52:40 +02:00
Matthias Koefferlein
60e6523c30
Some bug fixes for user-property aware RDB and antenna check enhancements
2022-10-18 00:00:29 +02:00
Matthias Koefferlein
e4131b45a3
WIP: provide a way to report user properties to RDB, added antenna rule measurements as user properties.
2022-10-17 22:29:48 +02:00
Matthias Koefferlein
bc06b688ca
Merge branch 'master' into selection-list
2022-10-13 09:32:16 +02:00
Matthias Köfferlein
8d1dcbb04a
Fixed issue-1164 (internal error on delete cells on archlinux) ( #1166 )
...
* Fixed issue-1164 (internal error on delete cells on archlinux)
* Found another location where take_cell would spoil cell_name
Co-authored-by: matthias <matthias@klayout.de>
2022-10-09 21:27:13 +02:00
Matthias Koefferlein
0c73b11f9b
Added a convenience version for GenericDeviceExtractor#define_terminal which takes terminal and layer names
2022-10-03 22:02:13 +02:00
Matthias Koefferlein
0a67691b3a
[CONSIDER MERGING] Bugfix - selection did not work in non-editable mode
2022-09-12 00:54:44 +02:00
Matthias Köfferlein
769b16ea3f
Issue 1145 ( #1151 )
...
* [CONSIDER MERGING] Clarification and typo fixed in DRC doc.
* Enhanced Shapes::is_valid so it's more reliable in detecting invalid shape objects.
* ObjectInstPath now has a validity attribute
* First implementation of solution for edtService (partial service to follow)
* Validating selection also for Partial Edit mode
2022-09-05 23:35:21 +02:00
Matthias Köfferlein
9ebb923d83
Issue 1144 ( #1150 )
...
* [CONSIDER MERGING] Clarification and typo fixed in DRC doc.
* Avoids a segfault during drawing: make sure the cell bbox update is not triggered in the drawing thread before it is stopped
* Fixed #1144 (wrong layer taken on copy layer)
2022-09-05 20:31:13 +02:00
Matthias Köfferlein
7a9e9989d3
Merge pull request #1147 from KLayout/wip
...
Wip
2022-09-04 09:08:08 +02:00
Matthias Köfferlein
e343939aaf
Merge pull request #1139 from KLayout/issue-1138
...
Issue 1138 (switch to suppress warnings on DXF reader - and other readers)
2022-09-04 09:07:51 +02:00
Thomas Ferreira de Lima
4d4f4b643b
Added python stubs with type hinting and documentation. ( #1125 )
...
* Added python stubs with type hinting and documentation.
The documentation was extracted by inspecting the docstrings within each class and methods.
This should enable type hinting and checking by IDEs like VSCode.
The stubs were automatically generated, and have not been manually curated. (TODO)
* created tl ArgType to python type translator
* Fixing a pyaModule.cc bug
* almost finished stubgen
* fixing little bug in classes defined within classes
* Release version of the stubgen script. Good enough for release.
* Adding notes
* Including stubs when installing from source
* typechecking bugfix: missed checking is_iter()
* Cleaning up unused code for merge review
* Including stubs when installing from source (part deux)
* Putting the GenericDeviceExtractor name setting into the right place.
* Updating python stubs
Co-authored-by: Matthias Koefferlein <matthias@koefferlein.de>
2022-09-01 00:41:42 +02:00
Matthias Koefferlein
cb3369e9be
Merge remote-tracking branch 'origin/master' into wip
2022-09-01 00:27:33 +02:00
Matthias Koefferlein
a81bca43a6
Added cmath include as suggested for Slackware
2022-08-31 23:56:53 +02:00
Matthias Koefferlein
bb0d4a6ecc
GSI binding of new Edges features
2022-08-30 23:03:43 +02:00
Matthias Koefferlein
32928b583c
Bug fixes (border cases), tests
2022-08-30 22:12:30 +02:00
Matthias Koefferlein
34f6e7bdba
Bug fixes, tests
2022-08-30 20:43:32 +02:00
Matthias Koefferlein
5662f962d2
Bug fixes, tests.
2022-08-30 00:53:14 +02:00
Matthias Koefferlein
e591d205c7
Bug fixes, tests.
2022-08-30 00:23:22 +02:00
Matthias Koefferlein
f92d86a1e1
Bug fixes
2022-08-29 23:47:24 +02:00
Matthias Koefferlein
aa267744dc
Exposed more functions for db::Edges, more tests, debugging
2022-08-29 22:48:17 +02:00
Matthias Koefferlein
bf91938133
Bug fixes, tests.
2022-08-29 22:17:37 +02:00
Matthias Koefferlein
956a27ec69
First implementation
2022-08-29 19:51:19 +02:00
Matthias Koefferlein
4af9b8b01c
WIP: predicates for Edges implementation
2022-08-28 23:35:45 +02:00
Matthias Koefferlein
0b59697189
First new test
2022-08-27 22:28:15 +02:00
Matthias Koefferlein
a6ad6c8866
Comment update
2022-08-27 22:12:22 +02:00
Matthias Koefferlein
a47bb67fd4
Removed unused code
2022-08-27 22:11:40 +02:00
Matthias Koefferlein
318a462cb4
WIP: first code pieces
2022-08-27 21:31:40 +02:00
Matthias Koefferlein
d2ab4fc743
Doc updates.
2022-08-27 18:02:56 +02:00
Matthias Koefferlein
69617e8006
bbox_with_layer -> bbox
2022-08-27 17:58:17 +02:00
Matthias Koefferlein
67d8518926
Shapes#cell and Shapes#layout
2022-08-27 17:51:14 +02:00
Matthias Koefferlein
e7177261ad
LayerMap#map and mmap with optional log layer
2022-08-27 17:38:48 +02:00
Matthias Koefferlein
1f954d8758
Cell#read
2022-08-27 17:23:11 +02:00
Matthias Koefferlein
f590d39c19
CellMapping: documentation, some convenience bindings
2022-08-27 15:38:10 +02:00
Matthias Koefferlein
46364c2420
[consider merging] Reader format error with details showing dump or text
2022-08-16 21:56:07 +02:00
Matthias Koefferlein
1099a3d7bb
Implemented warn_level for all readers so warnings can be turned off
2022-08-13 22:15:07 +02:00
Matthias Koefferlein
90df9451b6
WIP: reworked log enabling in LVS, added 'no_lvs_hints' feature, updated tests
2022-08-13 18:30:02 +02:00
Matthias Koefferlein
fd008b3810
WIP: more LVS hints
2022-08-13 01:46:12 +02:00
Matthias Koefferlein
47ec9a706b
WIP: enhanced and debugged LVS hints
2022-08-13 01:36:25 +02:00
Matthias Koefferlein
829f78de8b
WIP: attempting to produce reasonable messages on LVS mismatch (short detection)
2022-08-12 00:09:50 +02:00
Matthias Koefferlein
526f1aeacc
[Consider merging] provide an option to produce antenna DRC debug output
2022-08-11 01:02:45 +02:00
Matthias Koefferlein
38d2b8378d
Merge remote-tracking branch 'origin/master' into wip
2022-08-10 20:40:27 +02:00
Matthias Köfferlein
7ffdc211e5
Fixed issue-1135 (LVS mismatch on parallel devices) ( #1136 )
...
* Fixed issue-1135 (LVS mismatch on parallel devices)
The fix consists of a more elaborate device identity analysis
following the topological matching. In this step, the devices
are identified according to their connections and parameters.
It is important to properly identify devices taking their
parameters into account as well as their connections.
* Second part of issue fixed (inverter chain ambiguity)
* Added test
* Updated tests
* Updated golden test results
* Updated golden test data for Windows
Co-authored-by: klayoutmatthias <matthias@klayout.org>
2022-08-10 20:27:11 +02:00
Matthias Koefferlein
d48792a942
Trying to establish first log abilities to LVS compare
2022-08-10 00:41:19 +02:00
Matthias Koefferlein
b1cbafbac0
WIP: netlist browser log viewer
2022-08-09 01:11:28 +02:00
Matthias Koefferlein
e1882b0de7
WIP: refactoring of L2N/LVSDB writer
2022-08-07 17:38:06 +02:00
Matthias Koefferlein
0083021220
[Consider merging] Some refactoring of L2N and LVSDB readers for more future compatibility
2022-08-07 00:24:05 +02:00
Matthias Koefferlein
9d36b3c71a
Merge branch 'master' into wip
2022-08-06 18:52:41 +02:00
Matthias Koefferlein
bfeb60986c
Merge remote-tracking branch 'origin/msvc-building-with-debug'
2022-08-01 19:02:31 +02:00
Matthias Koefferlein
40b4b22f02
Added variants for CellInstArray constructor that take a Cell reference
2022-08-01 19:01:41 +02:00
Matthias Koefferlein
545ff11899
Merge branch 'master' of github.com:KLayout/klayout into wip
2022-08-01 18:50:48 +02:00
Matthias Köfferlein
716369de63
Issue 1126 ( #1128 )
...
* First attempt to fix. Rather experimental.
* Debugging and bug fixing
The basic issue was a missing break
However, correct computation of cache results for instance-to-instance cluster
interaction is implemented
Plus: identical and overlapping instances are no longer ignored except in the
case of exact duplicates. Otherwise these instance generate dead nets which
are not connected elsewhere.
* Added tests, fixed duplicate cells test, added missing files.
* Code simplification (removed invariant from transformation in cluster-to-cluster interaction cache)
* Skipping cell instance duplicates as some real-world testcases mandate so
* Updated test data
2022-08-01 18:50:07 +02:00
Matthias Koefferlein
3c5ca36081
[Consider merging] fixed a potential race condition with invalid Shapes container after clear
2022-07-31 00:10:36 +02:00
klayoutmatthias
5a9e3f9188
[Consider merging] One more iterator issue fixed
2022-07-26 21:02:17 +02:00
klayoutmatthias
50a863bb26
[Consider merging] Fixed a potential memory corruption problem
2022-07-26 00:13:26 +02:00
klayoutmatthias
da398e77fd
[Consider merging] avoid a memory corruption issue in Netlist::flatten
2022-07-25 22:03:01 +02:00
klayoutmatthias
167bcbcc5f
Enabling MSVC debug builds with iterator debugging on
2022-07-25 21:06:56 +02:00
Matthias Köfferlein
6ba372f1a9
Issue 1114 ( #1121 )
...
* Two patches to enable building on MSYS with gcc 12.1
1. Complete explicit instantiations in dbHierProcessor
2. Strict weak ordering is not present for std::type_info
(using "before" on gcc 12.1). We need to work with plain
pointers and use a translation table to associate pointers
with classes.
* Fixed another place where std::type_info got important
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2022-07-17 19:59:49 +02:00
Matthias Koefferlein
682cc0e491
More safeguards against crashes in the absence of a Manager object
2022-07-09 20:13:40 +02:00
Matthias Koefferlein
f7ef538f34
Merge branch 'master' of github.com:KLayout/klayout
2022-07-08 01:35:59 +02:00
Matthias Koefferlein
26901454c4
Fixed a doc typo
2022-07-04 13:41:30 +02:00
Matthias Koefferlein
75d686a63f
Changing default "is_merged" status for Edges and Region to false.
...
This was a problem with universal DRC which does not specifically
set the merged status. Furthermore, the default for DeepRegion and
DeepEdges was "false" already and now is aligned.
2022-07-04 00:52:55 +02:00
Matthias Köfferlein
2f8a7149d3
Fixed issue-1111 ( #1112 )
2022-07-03 09:35:40 +02:00
Matthias Koefferlein
c227cb9ef3
Small bug fix - constness was not intended for Device#net_for_terminal on non-const mode
2022-07-03 00:08:14 +02:00
Matthias Koefferlein
0edeac2efa
WIP
2022-06-26 23:06:29 +02:00
Matthias Koefferlein
47c9243c04
WIP
2022-06-26 21:16:34 +02:00
Matthias Koefferlein
bed9ac94b0
WIP
2022-06-26 18:03:15 +02:00
Matthias Koefferlein
77b42980b6
WIP
2022-06-26 01:50:45 +02:00
Matthias Koefferlein
91c85172e3
WIP
2022-06-26 01:33:49 +02:00
Matthias Koefferlein
43b63923a7
WIP
2022-06-26 01:00:33 +02:00
Matthias Koefferlein
4ad9e98b7b
Merge branch 'master' into performance
2022-06-25 22:32:47 +02:00
Matthias Koefferlein
1930018f8f
First attempt to implement DRC checks without merging - still required with certain options and not enabled to generic DRC function yet.
2022-06-25 21:40:44 +02:00
Matthias Koefferlein
959b5fe799
Faster hash of shape references (need to see what that is doing to test results)
2022-06-25 20:02:41 +02:00
Matthias Koefferlein
d8f3c522c9
Removed a performance bottleneck (do not invalidate cache that often of inst to shape interaction computation)
2022-06-25 20:02:15 +02:00
Matthias Koefferlein
334540f660
Normalization of CellInstArray upon creation (GSI)
2022-06-18 13:48:04 +02:00
Matthias Köfferlein
7a5737d55f
Merge pull request #1087 from KLayout/qtless-canvas2
...
Qtless canvas2
2022-06-14 22:51:57 +02:00
Matthias Köfferlein
4cbd28fd23
First implementation of issue-1075 fix: when editing a layer spec, the PCell parameters are analyzed and PCells are rewritten accordingly. ( #1088 )
2022-05-31 00:22:32 +02:00
Matthias Koefferlein
1edaf2b6b4
WIP: working on further consolidation of non-Qt case
2022-05-28 22:49:40 +02:00
Matthias Koefferlein
3f4fe62dc5
Merge branch 'master' into qtless-canvas
2022-05-23 20:42:39 +02:00
Matthias Köfferlein
a03464d441
Issue 1079 ( #1083 )
...
* WIP: some convenience (self.param=() for Ruby PCell impl), a bug fix (crash on call of pcell_parameter on wrong cell), update of tests
* Implemented solution for #1079 (refresh calls coerce_parameters)
* Basic.CIRCLE modified such that coerce_parameters_impl also catches the case of a programmatic change of actual_radius and this function will update radius and the handle accordingly
* Modified Basic PCells such that they work with coerce_parameters also if generated programmatically
* Added tests
2022-05-23 20:38:10 +02:00
Matthias Köfferlein
b84ec19da1
Issue 1071 (GDS2Text format options issues) ( #1085 )
...
* Fixed first issue (UI problem with GDS2Text options)
* Fixed problem with 'save' when the file extension does not indicate one of the known formats
In this case, and when plain 'save' is used, the original format is delivered.
The session files also store the original format now.
The statistics page will now indicate the format of the file that was loaded.
2022-05-23 20:37:26 +02:00
Matthias Koefferlein
17cbcc2877
Added mono image class
2022-05-04 02:18:01 +02:00
Matthias Köfferlein
9cb77d6222
Lefdef enhancements ( #1053 )
...
* Implementated patch as suggested by issue-1047
* Implementing blend-mode for LEF/DEF for a first solution for issue-1048
* Added testcase, fixed other tests
* Issue-1050 fixed - now REGION, BLOCKAGE and DIEAREA are relevant from mapping file, nothing else
* Bug fixes
* Experimental: DEF multipart paths
* Experimental: ignore LEF wire extension, ignore PATTERNNAME
* Implemented PATTERNNAME in DEF instead of LEF ..
* Implemented nondefaultrule vias
* LEF/DEF: non-defaultrule vias need a name suffix.
* Refined solution for NDR via names, updated test data
* Updated test data
* Multiple map files and 'REGIONS FENCE' + 'REGIONS GUIDE' layer mapping entries.
* Added test data, updated doc.
* Some enhancements and feedback
REGIONS in map files -> REGION
REGION NONE for map files (maps REGIONs which are neither GUIDE or FENCE)
Bugfix: VIA with ORIGIN
No via cell name prefix by default for buddy tools
* Simplified buddy tool options for LEF/DEF property names
Dropped --lefdef-dont-produce-instance-names,
--lefdef-dont-produce-pin-names and --lefdef-dont-produce-net-names
options. Instead, these options have to be enabled by giving
the respective property names.
Writing the property names takes some space and these
options are simply confusing and redundant.
* Issue a warning about missing cut geometry for a DEF via with PATTERNNAME (which is ignored)
* Fixed issue-1065
2022-04-23 22:26:37 +02:00
klayoutmatthias
fd4fe5ce62
Merge branch 'master' of https://github.com/KLayout/klayout into qt6
2022-04-16 20:13:04 +02:00
Matthias Köfferlein
3615b50fc4
A couple of enhancements and bugfixes found during issue-1059 research ( #1062 )
...
* Opportunity fix: library selection box listed libraries with technology even though no technology is selected.
* Opportunity: show PCell errors on new error layer. Previously, errors were only shown when the PCell had at least a single layer parameter
The error text is drawn together with guiding shapes. Disabling guiding shapes will
turn off error display.
* Opportunity: fixed an issue when reloading a library immediately after loading a layout: in this case, the library connection got lost and cells were substituted by static ones
* Opportunity: added a layout cleanup for the following case: a layout is loaded without the library present - giving defunct cells. Then the library is registered and defunct cells are reconnected.
2022-04-10 18:44:24 +02:00
Matthias Köfferlein
0df479b29c
Issue 1057 (Library#refresh enhancements) ( #1060 )
...
* Added Layout#refresh and added that to Library#refresh
* Doc updates, clarification
2022-04-10 18:41:26 +02:00
Matthias Köfferlein
f8bd4dafaf
Pdf documentation ( #1052 )
...
* Some doc fixes as preparation for PDF generation
* Some doc bug fixes and enhancements for PDF manual generation
* Fixed a number of invalid references found during PDF generation
* Enable PCellDeclarationHelper doc for help system
* Fixed doc text
* Fixed some doc issues with invalid links etc.
2022-04-03 20:51:29 +02:00
Matthias Koefferlein
5b9f194ecc
Forget last commit - problem was that golden netlists should not be compared with net names as those are node numbers and they might change with C++ STL implementation
2022-03-18 00:10:00 +01:00
Matthias Köfferlein
4a06bc1bb5
Another change related to issue-1011 (aligning flat and deep mode text representation for LVS) ( #1037 )
2022-03-16 23:33:08 +01:00
Matthias Köfferlein
7d78194cf0
Issue 1021 ( #1026 ) - LVS match issue on SRAM sample
...
* First step for solution:
Problem was: the ambiguity resolver was making decisions which later resulted in
a name conflict. Later on, another branch of the backtracking algorithm came
across the same situation but decided based on names, creating an conflict.
First part of the solution is to establish the backtracking information
during ambiguity resolution and using that rather than an alternative branch
later on. This avoids this conflict, but does not favor names as mandated
by the "use_names" flag. This will be the second step of the solution.
* Bugfixed solution (partially)
* Introducing third pass in netlist compare
The second pass is "ambiguity resolution by name" and
is skipped if "consider_net_names" is false. The third
pass then is ignoring the names.
* Bugfix
* Comment fixed, test updates
* Added tests
* Added test data variant for CentOS 8
2022-03-15 21:14:32 +01:00
Matthias Köfferlein
e9c5782c51
Issue 1011 ( #1027 ) - DRC violation on texts in deep mode
...
* Fixed issue-1011 by using single-point polygons for texts in deep mode. Tests need fixing.
* Updated tests (text become a single point)
* Added test for issue-1011
2022-03-15 21:13:57 +01:00
Matthias Koefferlein
0e1e4781a8
Fixed scale & snap bug in non-editable mode
2022-03-09 23:00:39 +01:00
Matthias Koefferlein
4acd0aabc5
Removed D25 tech component
2022-03-06 10:07:23 +01:00
Matthias Koefferlein
cd07a21ae3
Merge branch '25d-with-booleans'
2022-03-05 14:59:17 +01:00
Matthias Köfferlein
ed7f77a86d
Split gates ( #1018 )
...
* First implementation, first basic tests.
* WIP: more tests, bug fixes
* split_gates feature, added test case
* Documentation
2022-03-05 14:56:52 +01:00
Matthias Köfferlein
33ebcb43f3
Issue 1008 ( #1010 )
...
* PyPI deployment: corrected branch filter
* skip redundant points in partial edit, but not colinear ones
* Polygon transformation now preserves raw points
2022-03-01 17:17:30 +01:00
Matthias Koefferlein
ff3bc38aea
Merge branch 'master' into wip
2022-02-19 00:14:57 +01:00
Matthias Köfferlein
cee33a0099
Merge pull request #992 from KLayout/api-enhancements
...
Api enhancements
2022-02-18 23:28:28 +01:00
Matthias Koefferlein
c5da9c717d
scale_and_snap: separate handling of shapes with properties and without
2022-02-18 18:49:00 +01:00
Matthias Koefferlein
a133a8f43b
Reverted some changes, removed idle code
2022-02-18 18:43:02 +01:00
Matthias Koefferlein
834dfa6614
Bug fixes, enhancements, tests for snap and scale improvements.
2022-02-18 14:22:16 +01:00
Matthias Koefferlein
e9d86822df
Scale and snap improvements
...
* edge and edge pair support
* property support
* no expanding of on-grid arrays
* more inline processing, better performance
2022-02-18 00:03:14 +01:00
Matthias Koefferlein
d2c2a875dd
Removed debug output
2022-02-13 23:39:09 +01:00
Matthias Köfferlein
11a91300bd
issue-996 Providing a "refresh" function for triggering a refresh from inside t… ( #998 )
...
* Providing a "refresh" function for triggering a refresh from inside the lib
Some other glitches were fixed too:
* LibraryManager wasn't thread-safe
* Library destructor wasn't unregistering
* Crash when re-registering the same library again
* In LibrariesTest normalization of layouts must not include
re-creation of library references to avoid side effects.
Save without context.
* Added missing files
* Fixed unit tests.
2022-02-12 21:26:28 +01:00
Matthias Koefferlein
72d0f717fe
Fixed units tests
2022-02-12 18:20:38 +01:00
Matthias Köfferlein
0199192e83
Fixed #989 (cannot convert <defunct> cell to static cell) ( #1002 )
...
Fixed some more glitches while doing so:
* cell.name (gsi) was giving "basic_name", now it's changed to the
internal name to be consistent with "name=". The "functional name"
is still available as "basic_name".
* The basic name was rendering "<defunct>..." for defunct cells
and has been changed to the functional name. Otherwise this
is not accessible.
2022-02-12 17:05:12 +01:00
Matthias Köfferlein
60aab8b3fd
Fixed #995 (new topcell after load) ( #1000 )
2022-02-12 16:51:01 +01:00
Matthias Koefferlein
2ed572e684
Merge branch 'api-enhancements'
2022-02-11 19:10:21 +01:00
Matthias Koefferlein
75aaf10512
Query parser is somewhat more restrictive now and doesn't read everything as cell expression.
2022-02-11 00:30:08 +01:00
Matthias Koefferlein
3f2ca1dfbe
micrometer-unit properties (ddbox, path_dtrans, dtrans etc) for custom queries
2022-02-10 23:14:08 +01:00
Matthias Koefferlein
98dd0de139
clip method variants with dboxes and cell references in Layout
2022-02-08 23:49:28 +01:00
Matthias Koefferlein
3a422f2c38
Trans: mapping ctrans to * for harmonization
2022-02-08 23:13:37 +01:00
Matthias Koefferlein
a5e7395d10
Convenience initializer for CellInstArray and DCellInstArray that takes a vector instead of a transformation
2022-02-08 22:56:58 +01:00
Matthias Koefferlein
1a53cd00d2
Convenience 'each' for recursive shape iterator / recursive instance iterator
2022-02-08 22:28:09 +01:00
Matthias Köfferlein
285a5e9fca
Issue 983 ( #986 )
...
* WIP: first attempt to fix issue-983
* WIP: bugfixes
* Fixed a problem with displaying empty cell dimensions, one warning
* Another fix: don't allow proxy cells to be selected in the instance properties dialog. This creates a confusing behaviour
* Fixed a few flaws in the cell selection scheme on the instance properties dialog.
* Early warning when trying to build a recursive hierarchy.
* Another fix: avoid too much undo in case of errors thrown during 'apply' followed by 'cancel'
* Fixed issue-983 solution
* Fixed the modification status of PCell parameters for 'apply to all'
2022-02-08 19:06:27 +01:00
Matthias Koefferlein
e49b189f64
Doc clarification for Layout#create_cell
2022-02-07 23:27:10 +01:00
Matthias Koefferlein
88c56d8b64
Introducing unique_cell_name in Layout, fixed the RBA unit tests
2022-02-07 23:05:53 +01:00
Matthias Koefferlein
0bb0f400bf
Introducing world box.
2022-02-07 22:44:35 +01:00
Matthias Koefferlein
79be9aba41
RecursiveInstanceIterator uses weak pointer to Layout too
2022-02-07 22:09:57 +01:00
Matthias Koefferlein
c0b38f3706
Using a weak Layout pointer to avoid segfaults in RecursiveShapeIterator
2022-02-07 21:56:37 +01:00
Matthias Koefferlein
e2c6e7aedc
size/sized versions with Vector/DVector
...
Adds variants to size/sized which take a vector instead
of dx, dy and where the mode parameter is optional. So far
anisotropic sizing had to come with a mode argument.
2022-02-07 20:59:09 +01:00
Matthias Koefferlein
de98a30f38
Text/DText enhancements
...
* Enums for alignment values.
* bbox
* position
* typos fixed
2022-02-07 19:46:13 +01:00
Matthias Koefferlein
95b6af4bc6
Merge branch 'master' into qt6
2022-01-21 15:43:33 +01:00
Matthias Koefferlein
df60f49276
Fixed issue-969 plus a Qt warning
2022-01-12 22:49:20 +01:00
Matthias Koefferlein
12fd26663d
Merge branch 'qt6'
2022-01-06 21:48:02 +01:00
Matthias Koefferlein
10456516db
Updated copyright to 2022, preparations for 0.27.6 (was delayed due to code signing certificate issues)
2022-01-04 21:20:04 +01:00
Matthias Köfferlein
460ba9813a
Merge pull request #957 from KLayout/issue-954
...
Bugfix for #954
2021-12-26 19:14:44 +01:00
Matthias Koefferlein
e1cd6aaeb1
Bugfix for #954
...
The bug was that while iterating a Region during the gate traversal,
the "select_interacting" was triggering a sort() which changed the
order.
Solution is to pre-sort when iterators are issued also when the
iterator is non-region selecting. This way, plain and region query
iterators can be used together. In addition, the dirty flag scheme
of Cell+Shapes was cleaned up a little for bboxes.
2021-12-26 01:12:36 +01:00
Matthias Koefferlein
9cd77e5cec
WIP: expose a new method of PCellDeclaration called 'wants_lazy_evaluation'
2021-12-25 18:03:30 +01:00
klayoutmatthias
edd5884a1a
WIP: enabling build on MSVC2019 with Qt6
2021-12-15 00:31:13 +01:00
Matthias Koefferlein
279342e61a
Added more declarations for gcc in release mode
2021-12-12 16:48:44 +01:00
Matthias Koefferlein
ef62a126d4
WIP: format string problem fixed in 2.5d view
2021-12-05 00:08:08 +01:00
Matthias Koefferlein
125543957d
WIP: Fixed GSI to some extent, some tests
2021-12-04 00:31:01 +01:00
Matthias Koefferlein
6b49386b67
WIP: fixed some build errors
2021-11-29 23:27:26 +01:00
Matthias Koefferlein
132ad2ed8d
WIP: removing need to tl::type_traits
2021-11-29 22:54:28 +01:00
Matthias Koefferlein
ecc83aa579
Solved #879 : PCellDeclaration now knows the layout and layout knows the library
2021-11-14 17:45:52 +01:00
Matthias Koefferlein
0ca82001ed
#935 fixed (checking for valid cell index)
2021-11-13 01:03:54 +01:00
Matthias Koefferlein
719eb0bce8
Fixed a potential crash on application exit
2021-11-13 00:48:27 +01:00
Matthias Koefferlein
d2478881b5
Bugfix: threading issue - multiple threads accessed the same object
2021-11-10 22:30:32 +01:00
Matthias Koefferlein
379a22c86a
Restored performance of some checks
2021-11-09 21:55:55 +01:00
Matthias Koefferlein
319efc1f95
Bugfix: negative output wasn't working properly for enclosing and overlap.
2021-11-09 00:32:07 +01:00
Matthias Koefferlein
4a44329e38
Enabling 'enclosed' as a (sometimes) more efficient way of implementing an enclosing check.
2021-11-08 23:18:01 +01:00
Matthias Koefferlein
9fa82f01d8
WIP (code reduction and performance enhancement of basic DRC checks)
2021-11-07 21:46:18 +01:00
Matthias Koefferlein
a0367c1530
More specific clip variants after bounding boxes have been reduced in RecursiveShapeIterator
2021-11-01 17:27:52 +01:00
Matthias Koefferlein
bc54ba3b99
Merge branch 'performance' into head
2021-11-01 14:32:31 +01:00
Matthias Koefferlein
d244d5aac6
Debugging plus enhancments
...
Basic change: DeepShapeStore+CellMapping uses (new) hier_generation_id of Layout to figure out
if the hierarchy has changed and the cache needs update.
2021-11-01 13:49:00 +01:00
Matthias Koefferlein
64a6b3acdc
WIP
2021-11-01 09:53:51 +01:00
Matthias Koefferlein
902375cc4d
WIP: trying to reduce the number of DSS-internal cell mappings by caching cell maps
2021-10-31 00:59:42 +02:00
Matthias Koefferlein
455c40ced6
More consistent verbosity levels for cell mapping
2021-10-30 21:31:05 +02:00
Matthias Koefferlein
ebe38912a6
Tests and documentation for dbTrans#is_complex?
2021-10-27 23:36:58 +02:00
Matthias Koefferlein
20f3733c58
WIP: lean recursive shape touch check
2021-10-27 00:38:12 +02:00
Matthias Koefferlein
596080669d
WIP
2021-10-26 23:10:29 +02:00
Matthias Koefferlein
7881c0953c
WIP
2021-10-24 20:28:15 +02:00
Matthias Koefferlein
c6bd856331
WIP
2021-10-24 00:05:50 +02:00
Matthias Koefferlein
09df614d8a
Bugfix: array iterator must not iterate on empty search box.
2021-10-22 23:52:35 +02:00
Matthias Koefferlein
abe40ae99f
Bugfix plus more tests
2021-10-19 20:48:13 +02:00
Matthias Koefferlein
451f57bb25
Fixed #909 (Crash on DRC)
2021-09-21 23:37:57 +02:00
Matthias Köfferlein
80fd5b79be
Merge pull request #908 from KLayout/netlist-compare-performance2
...
Improving netist compare performance for array case + some enhancements
2021-09-21 22:43:37 +02:00
Matthias Köfferlein
f1e59a7dc6
Merge pull request #907 from KLayout/issue-905
...
Fixed #905 (Crash while deleting a Library)
2021-09-21 22:43:22 +02:00
Matthias Koefferlein
ceb0b2298f
Some cleanup, updated tests
2021-09-19 19:05:09 +02:00
Matthias Koefferlein
b7827f7b5f
Maybe found a solution for the matrix arrangement runtime problem
2021-09-19 18:29:57 +02:00
Matthias Koefferlein
930423bcc7
WIP
2021-09-19 17:26:28 +02:00
Matthias Koefferlein
a42d761e95
Some small refactoring
2021-09-17 22:46:56 +02:00
Matthias Koefferlein
71b5695344
Fixed #905
2021-09-15 00:09:56 +02:00
Matthias Koefferlein
0f4b0e4826
Ported some enhancements from WIP branch (debug output, capturing easy wins when max depth is exhausted)
2021-09-14 22:31:24 +02:00
Matthias Koefferlein
b671b1843b
Fixed a problem with net compare config - depth first wasn't considered in all cases
2021-09-12 22:35:08 +02:00
Matthias Koefferlein
89052660ee
Refactoring of the netlist compare code
2021-09-12 22:35:03 +02:00
Matthias Koefferlein
822709dd5a
Refactoring of the netlist compare code
2021-09-12 22:34:59 +02:00
Matthias Koefferlein
52c79feeed
Refactoring of the netlist compare code
2021-09-12 22:34:55 +02:00
Matthias Koefferlein
ab3bceda75
Fixed #898 (netlist reader ignores last list)
2021-08-29 21:12:04 +02:00
Matthias Köfferlein
225d3ab32d
issue-892 ( #895 )
2021-08-24 21:37:02 +02:00
Matthias Köfferlein
1916a4f683
Merge pull request #884 from KLayout/issue-881
...
Fixed #881 (typo in separation check and others)
2021-07-31 11:01:55 +02:00
Matthias Koefferlein
d7438b43ae
Fixed #881 (typo in separation check and others)
2021-07-30 23:13:24 +02:00
Matthias Koefferlein
9543cea952
Fixed tests
2021-07-29 22:24:22 +02:00
Matthias Koefferlein
8b970039c0
Using primary(layout) netlist as reference for primary parameters and compare delegate - this also removes some potential glitches
2021-07-29 01:15:35 +02:00
Matthias Koefferlein
a90e14b692
Some tests added.
2021-07-27 23:08:34 +02:00
Matthias Koefferlein
42b7290fe5
Device parameter comparer now also compares other (primary) parameters, parameters primary in both netlists are considered to be compared by default, 'ignore' feature in tolerance
2021-07-27 22:15:59 +02:00
Matthias Koefferlein
37457aa02f
Spice reader flags existing parameters as primary
2021-07-27 22:13:45 +02:00
Matthias Koefferlein
7a37a6b7ed
Implemented extent(cell_filter) for DRC, added Layout#cells with name filter
2021-07-21 18:31:51 +02:00
Matthias Koefferlein
722b45b721
Fixed tests
2021-07-19 07:47:41 +02:00
Matthias Koefferlein
bc74f189f8
Introducing asymmetric ambiguity groups for better matching of black box circuits with optional pins.
2021-07-18 23:33:01 +02:00
Matthias Koefferlein
70f4c7e2b5
A small refactoring.
2021-07-18 23:09:51 +02:00
Matthias Koefferlein
2c8d065eb3
Some enhancments + test update
...
1. Be more careful with net names
Net names are used now for sorting the graph nodes, but not for
strict compare. This is useful to derive swappable pins for
blackbox circuits.
2. Be more careful with pins from schematic netlist
Pins from schematic netlist without a corresponding pin on the layer
side are treated as mandatory unless connected to a trivial net.
Pins connecting to non-trivial nets inside the subcircuit are always
considered mandatory.
This way schematic pins enforce corresponding layout pins.
On the other hand, layout pins connecting to trivial nets inside
the subcircuit are considered non-mandatory.
2021-07-18 22:34:02 +02:00
Matthias Koefferlein
51d117e379
Refined black box pin heuristics
...
Pins are required to match if they are passive inside the
subcircuit but connected to a non-trivial net in the calling circuit.
2021-07-18 20:39:19 +02:00
Matthias Koefferlein
05386668b4
Re-introducing pin name mapping for net assignment
2021-07-18 20:20:23 +02:00
Matthias Koefferlein
23bea5dc07
Using real pin IDs for printing nodes in netlist compare debug output
2021-07-18 17:39:32 +02:00
Matthias Koefferlein
d018805c23
Some refactoring.
2021-07-18 16:54:27 +02:00
Matthias Koefferlein
2f3e113db0
Added missing subcircuit mismatch events to netlist compare
2021-07-17 22:06:06 +02:00
Matthias Koefferlein
3f3f4c9173
Fixed some compiler warnings.
2021-07-17 22:03:22 +02:00
Matthias Köfferlein
054bfa3be4
Merge pull request #865 from KLayout/issue-864
...
Fixed #864 (Shapes#copy_shapes does not support undo/redo)
2021-07-17 13:44:15 +02:00
Matthias Köfferlein
19f2769137
Merge pull request #862 from KLayout/matching-of-blackbox-circuits
...
Enhanced matching of blackbox/pin ambiguities
2021-07-17 13:43:59 +02:00
klayoutmatthias
1555daf68c
Adjustments for Windows build with MSVC2019 (VC 16.10.31419.357)
...
1. removed some duplicate symbol linker error
2. removed many compiler warnings (mainly size_t/int compatibility)
3. consistent definition of db::pcell_id_type
4. removed UTF-8 character codes from string constants
5. float constants for float arguments
6. timeout in tlHttp when no openssl lib is found (instead of stalling
app)
2021-07-17 00:20:55 +02:00
Matthias Koefferlein
2fee924103
Updated the solution
2021-07-15 23:39:02 +02:00
Matthias Koefferlein
d14892382c
Fixed #864 (Shapes#copy_shapes does not support undo/redo)
...
While doing so changed the following things too:
- Instance and Shapes methods raise an exception if not
in editable mode and with undo/redo
- Faster and leaner undo/redo on Shapes#clear
2021-07-15 00:44:28 +02:00
Matthias Koefferlein
2b447854f9
Enhanced matching of blackbox/pin ambiguities
...
Previously: matching of blackbox pins was enforced
by using pin names for passive nets in the compare.
Problem: no match was achieved when pins are not
named or not named consistently.
In this case, it's desirable to treat them as
ambiguous.
The new solution is to let the ambiguity resolver handle
that using an extended definition of the net names:
it will take the pin name into account if an unnamed net
is attached to a pin.
In addition, net ambiguities are projected to pin
equivalence now. This also will propagate symmetry
through nested blocks (dbNetlistCompareTests:20_BusLikeConnections).
2021-07-08 23:54:20 +02:00
Matthias Koefferlein
bad3232415
Trying to fix a linker problem.
2021-07-07 08:03:07 +02:00
Matthias Koefferlein
4e54715d64
Merge branch 'wip-lvs'
2021-07-06 23:40:44 +02:00
Matthias Köfferlein
e78d0d81ae
Merge pull request #849 from KLayout/lvs-blackbox
...
Lvs blackbox
2021-07-06 23:38:21 +02:00
Matthias Koefferlein
720057e071
Added a #include which was missing
2021-07-06 21:16:57 +02:00
Matthias Koefferlein
8f65ab099f
Fixed DeviceClass assignment operator
2021-07-06 07:56:27 +02:00
Matthias Koefferlein
4e0d8d92ef
Updated doc, reverted netlist writer to write all parameters - it will only write primary parameters for R, L and C
2021-07-05 22:45:40 +02:00
Matthias Koefferlein
e34fc8967a
Some enhancements
...
* Device#net_for_terminal with terminal name
* Spice writer now dumps all parameters for resistors and caps (also secondary)
* Enabled Spice writer delegate in LVS (spice_format(...))
* Device class factories for built-in device extractors
2021-07-05 22:22:13 +02:00
Matthias Koefferlein
ba35ac9bfe
Doc update, some tests
2021-07-05 21:06:02 +02:00
Matthias Koefferlein
c62592ede1
Added test for device class factory.
2021-07-05 19:55:55 +02:00
Matthias Koefferlein
4303e1ab73
Revert change of making spice parameters primary - will create problems in swappable parameters such as AD and AS
2021-07-04 19:58:15 +02:00
Matthias Koefferlein
ae6f77f45f
Serialization of custom device classes
2021-07-04 19:14:37 +02:00
Matthias Koefferlein
3220bdf60d
Added device class templates for CapWithBulk and ResWithBulk
2021-07-04 19:14:11 +02:00
Matthias Koefferlein
ce61145f1c
More control over primary/secondary flag of parameters in device extraction
...
- Spice reader will set primary flag for all (known) parameters
read from a Spice netlist
- "extract_devices" will return the device class object
- primary/secondary flag can be set on device class objects
through "enable_devices"
2021-07-04 17:05:17 +02:00
Matthias Koefferlein
1a0b05e663
Updated test data
2021-07-02 23:38:38 +02:00
Matthias Koefferlein
79c552b300
Fixed #858 (+ line continuation after blanks in Spice reader)
2021-07-02 23:31:54 +02:00
Matthias Koefferlein
fd5efe9f92
Fixed #854
2021-07-02 00:46:22 +02:00
Matthias Koefferlein
6f63fa09bf
Fixed #856
2021-07-02 00:44:17 +02:00
Matthias Koefferlein
3d6119f2a6
Updated tests, sloppy 'same_nets' in non-must-match mode
2021-06-29 08:43:28 +02:00
Matthias Koefferlein
ab70c42c68
Some enhancements for strong matching of nets
...
* same_nets! method for strong matching
* same_nets and same_nets! except glob pattern to circuits and nets
* both observe case sensitivity
* helper functions for case sensitivity Netlist#is_case_sensitive?, Netlist#case_sensitive=
* Netlist#nets_by_name to get nets from pattern
2021-06-28 22:33:46 +02:00
Matthias Koefferlein
72dc94197e
New method: Circuit#nets_by_name
2021-06-28 20:29:40 +02:00
Matthias Koefferlein
e0ccb4f980
Fixed a typo
2021-06-28 18:57:09 +02:00
Matthias Koefferlein
24afd571f0
LVS: can be used anywhere now: tolerance and join_symmetric_nets
2021-06-28 18:56:07 +02:00
Matthias Koefferlein
c24c0933bf
Bugfix: blackbox mode/abstract pins
...
Abstract pins are created when pins are not attached to any or only to passive nets
(passive nets are those without device terminals or subcircuit pins).
1. Such pins were treated swappable. Now named pins will not be treated
swappable but are mapped by name. This enables blackbox models where
the pins are labelled and must correspond to schematic pins.
2. A bug was present which lead to incorrect handling of abstract
nets in net compare.
2021-06-27 22:56:28 +02:00
Matthias Koefferlein
d65148ed0b
Fixed #846
2021-06-27 17:29:41 +02:00
Matthias Koefferlein
881e0010d5
Implemented with(out)_angle, with(out)_area on edge pairs (DRC, GSI). Deprecated 'with(out)_angle' on polygon layers (DRC) as this is now redundant with 'corners'
2021-06-27 14:18:04 +02:00
Matthias Koefferlein
5251520876
Added more filters for edge pairs: with_area, with_internal_angle. Added tests
2021-06-21 23:44:48 +02:00
Matthias Koefferlein
6e7c9192d4
Implemented #818
2021-06-20 21:45:51 +02:00
Matthias Koefferlein
2bbf6b6998
Merge branch 'clipped-25d-view'
2021-06-20 21:02:40 +02:00
Matthias Koefferlein
5fb2f024dc
Fixed some typos
2021-06-19 23:12:59 +02:00
Matthias Koefferlein
71e290b50e
Added test for the last commit
2021-06-13 23:02:53 +02:00
Matthias Koefferlein
d1f38a36b1
Not directly related (initially so): EdgeProcessor can restart now.
2021-06-13 23:02:09 +02:00
Matthias Koefferlein
3b22bc0a42
Fixed the fix: considering the case of non-layout hosted Shapes container too
2021-06-12 23:34:32 +02:00
Matthias Koefferlein
115593575d
Merge branch 'master' of github.com:KLayout/klayout into issue-835
2021-06-12 09:47:31 +02:00
Matthias Koefferlein
6f583b1b21
Fixed #835
2021-06-12 09:45:02 +02:00
Matthias Köfferlein
8bd58be534
Merge pull request #830 from KLayout/issue-824
...
Issue 824
2021-06-12 08:58:00 +02:00
Matthias Koefferlein
43c941004a
Fixed embarrassing typo: Minkowsky -> Minkowski (Hermann Minkowski, 22 June 1864 – 12 January 1909)
2021-06-10 23:33:49 +02:00
Eugene Zelenko
ed27447ce0
Fix misspellings in db.
2021-06-07 18:21:02 -07:00
Matthias Koefferlein
8b528a8a7a
Refactored the compound op node cache for multithreading support
2021-06-07 22:46:15 +02:00
Matthias Koefferlein
02ec262df0
Normalized resistor contact polygons for better test reproducibility.
2021-06-03 23:43:00 +02:00
Matthias Koefferlein
7aaddcf205
Normalize S/D choice on MOS transistor extraction for better test reproducability
2021-06-03 17:32:38 +02:00
Matthias Koefferlein
a762797d58
Typos fixed.
2021-06-01 21:32:24 +02:00
Matthias Koefferlein
ef01bbf81b
Restored merge behavior for DRC 'or' also in deep mode
2021-05-31 18:24:00 +02:00
Matthias Köfferlein
63f4d727e9
Merge pull request #813 from KLayout/wip
...
Wip
2021-05-29 23:59:44 +02:00
Matthias Koefferlein
83685a3715
Fixed a build issue.
2021-05-29 22:06:13 +02:00
Matthias Koefferlein
eeaab8a417
Bugfix: Region#flatten and Edges#flatten did not update the merged cache to flat and Region#flatten did not produce PolygonRefs
2021-05-29 19:28:56 +02:00
Matthias Koefferlein
5ceeafc0ff
Implemented #808 (Feature suggestion: DRC to report edges attached to corners as edge pairs). Solution is available for DRC layers and universal DRC expressions.
2021-05-29 17:57:38 +02:00
Matthias Koefferlein
e57d573a42
Tests, so bug fixes, some refactoring
2021-05-29 09:43:12 +02:00
Matthias Koefferlein
c8548709bb
Implemented edge pair filters, DRC: with(out)_angle, with(out)_length and with(out)_distance
2021-05-28 23:46:52 +02:00
Matthias Koefferlein
fcb966393a
Fixed #806 : first, the internal error gone. Second, the implementation of custom comparers is simplified as the 'equals' method does not need to be implemented.
2021-05-26 22:39:28 +02:00
Matthias Koefferlein
ef22ead019
Fixed a bug in the Spice writer implementation (res3 not considered)
2021-05-26 22:27:42 +02:00
Niko Savola
ff90c476c3
Fix typos systemically in gsiDecl*.cc
2021-05-26 13:18:23 +03:00
Niko Savola
99ef222f50
Fix more typos in gsiDeclDbLayoutToNetlist.cc
...
\\make_incluidelayer -> \\make_includelayer
sqaure -> square
2021-05-26 12:37:24 +03:00
Niko Savola
b27e5de023
Fix typo in gsiDeclDbLayoutToNetlist
...
reprfesenting -> representing
2021-05-26 12:31:46 +03:00
Niko Savola
bc16c4ad31
Fix missing 'to' typo
...
from another cell this cell -> from another cell to this cell
2021-05-26 10:33:07 +03:00
Matthias Koefferlein
6ad8ec5662
Bugfix: whole edge output for fragmented second input. No way to fix that for the compound ops. Restrict negative output for two-layer checks on first layer for the same reason.
2021-05-26 00:27:13 +02:00
Matthias Koefferlein
19b28982e7
WIP: updated test data (bugfix: bulk does not have layer properties), Fixed Region::count and Region::hier_count (was counting non-polygons too)
2021-05-25 23:08:38 +02:00
Matthias Koefferlein
3789e38ce3
WIP: avoid one more segfault.
2021-05-25 22:45:19 +02:00
Matthias Koefferlein
0d6ce92d6b
WIP: fixed a potential segfault
2021-05-25 21:41:27 +02:00
Matthias Koefferlein
0452e91e8c
WIP: Some hardening against internal state changes in RecursiveShapeIterator, tests fixed
2021-05-25 21:36:54 +02:00
Matthias Koefferlein
1c8442f485
Fixed #807 - now supporting incremental connect and clear_connections in DRC/LVS
2021-05-24 21:56:57 +02:00
Matthias Koefferlein
58afc47071
WIP: reduced space runtimes (OpenRAM sample) by selective edge processing
2021-05-24 18:27:16 +02:00
Matthias Koefferlein
05b1023fd5
Updated tests.
2021-05-24 16:49:00 +02:00
Matthias Koefferlein
2fc301a0b6
More efficient shape counts on OriginalLayer
2021-05-23 12:21:18 +02:00
Matthias Koefferlein
4bc665cbf3
Mapping deep-mode 'or' (DRC) to 'add' to avoid flat processing.
2021-05-22 22:32:29 +02:00
Matthias Koefferlein
560234cacb
Less noisy output with verbose debug mode
2021-05-22 22:29:57 +02:00
Matthias Koefferlein
6cfe14a418
Typo corrected
2021-05-22 22:29:10 +02:00
Niko Savola
feb5e7eece
Fix documentation typo in gsiDeclDbCell.cc
2021-05-21 14:35:21 +03:00
Matthias Koefferlein
aea8c4d1ad
3-terminal C's and R's for Spice writer too, using different default models for 2- and 3-terminal R and C
2021-05-13 21:13:41 +02:00
Matthias Koefferlein
4eb8f69a22
Spice reader: Support for resistance, capacitance and inductance values within parameters, basic support for 3-terminal resistors, more flexibility in SpiceReaderDelegate.
2021-05-13 20:40:28 +02:00
Matthias Köfferlein
9c5542d3d2
Merge pull request #788 from KLayout/issue-787
...
Issue 787 fixed
2021-05-08 22:26:10 +02:00
Matthias Koefferlein
70864e41af
Implemented Edge#cut_point for GSI (was missing)
2021-05-04 21:12:46 +02:00
Matthias Koefferlein
31cc8f32e2
Fixed #787 - the results of const reference return values need to be copied as the holder object may go out of scope
2021-05-02 23:00:38 +02:00
Matthias Koefferlein
1285868546
Skip private-only tests without private data access
2021-05-01 21:36:52 +02:00
Matthias Koefferlein
7c3c631515
Merge branch 'master' into feedback
2021-04-29 23:53:47 +02:00
Matthias Koefferlein
281681fffb
Limit hier processor instance/instance and instance/cluster cache depth to 20 entries per cell pair to avoid memory explosion
2021-04-28 22:51:00 +02:00
Matthias Koefferlein
855e8a3518
WIP: some enhancements with the effect of reducing instance interaction caching overhead and improving performance. More memory and cache metrics.
2021-04-27 22:27:22 +02:00
Matthias Koefferlein
2f204eaa21
Some refactoring of the instance-to-instance test in hier processor: gives some performance improvement with less memory for cache.
2021-04-26 23:15:27 +02:00
Matthias Koefferlein
6e52e6f0c6
WIP: introducing memory metrics for netlist/l2n
2021-04-26 22:26:31 +02:00
Matthias Koefferlein
7d8825a9fb
Ghost cells are not renamed in blend mode 'rename'
2021-04-24 21:30:03 +02:00
Matthias Köfferlein
f8e7e3b6e1
Merge pull request #770 from KLayout/lvs-enhancement
...
Lvs enhancement
2021-04-14 23:24:30 +02:00
Matthias Koefferlein
6ea04d6c27
Small LVS enhancement: reject backtracking branch if it leads to ambiguous name conflicts
2021-04-13 22:57:08 +02:00
Matthias Koefferlein
a02c2c8eeb
Merge branch 'master' into hierarchical-edges
2021-04-11 22:47:38 +02:00
Matthias Koefferlein
870fd2e0bd
Fixed some valgrind issues.
2021-04-08 23:30:47 +02:00
Matthias Koefferlein
c4e5310c95
Bugfix: holes and hulls are not neccessarily merged
2021-04-08 00:32:03 +02:00
Matthias Koefferlein
217f957d60
Some more safety against accessing deleted user objects (stored point in temporary UserObject or DUserObject gets destroyed on destruction of the holder) - using C++ move semantics (overdue)
2021-04-07 22:16:52 +02:00
Matthias Koefferlein
9b7879b2a9
Faster hierarchical edges.
2021-04-06 21:05:02 +02:00
Matthias Köfferlein
85448966d8
Merge pull request #763 from KLayout/25d-enhancements
...
25d enhancements
2021-04-03 15:33:57 +02:00
Matthias Koefferlein
173ba147b1
Rework for D25 tech management - compilation happens dynamically now.
2021-04-02 18:48:00 +02:00
Matthias Koefferlein
773fcb6b67
z Stack description language enhanced.
2021-04-02 17:27:38 +02:00
Matthias Koefferlein
892f940166
Fill feature: enhancements and debugging
...
- added "multi_origin" mode for repeated fill
- enhanced fill coverage by better separation of islands in auto-origin mode
2021-04-01 23:29:45 +02:00
Matthias Koefferlein
25b978f39f
Doc clarification.
2021-04-01 18:41:37 +02:00
Matthias Koefferlein
e66c8046db
Limited lvs stack depth to 500 to prevent stack overflow.
2021-03-31 23:04:35 +02:00
Matthias Koefferlein
cf51130339
Fixed some build issues that appeared during merge
2021-03-30 23:20:39 +02:00
Matthias Koefferlein
94556c1448
Merge branch 'master' into lvs-enhancements
2021-03-30 18:56:27 +02:00
Matthias Koefferlein
47a845884d
Added tests
2021-03-29 22:44:39 +02:00
Matthias Koefferlein
3f37b0e5a4
Fill cell box introduced as a concept, added tests, overlapping fill cells supported.
2021-03-29 22:12:47 +02:00
Matthias Koefferlein
8fda92a9c4
Merge branch 'drc-enhancements' into fill-enhancements
2021-03-29 15:07:47 +02:00
Matthias Koefferlein
76982a3206
DRC support for fill, experimental
2021-03-29 13:28:43 +02:00
Matthias Koefferlein
cefc2eeddb
Bug fixes.
2021-03-29 01:05:53 +02:00
Matthias Koefferlein
abd96c8400
Deep mode: avoid flattening by FlatRegion/FlatEdges poisoning
2021-03-28 23:19:14 +02:00
Matthias Koefferlein
6df333a05e
Avoid turning DeepRegions into flat ones as this spoils hierarchical processing.
2021-03-28 22:33:24 +02:00
Matthias Koefferlein
9f295523e4
explicit net joining - preparations
2021-03-27 21:56:53 +01:00
Matthias Koefferlein
a0cab9832f
Fixed probe feature of LVS dialog for flat extraction.
2021-03-26 00:40:18 +01:00
Matthias Koefferlein
8d5ef02c3d
Using unlimited complexity and depth for LVS compare
2021-03-25 23:50:45 +01:00
Matthias Koefferlein
4252085663
Fixed an internal error in netlist compare
...
Problem was that during ambiguity resolution a choice may
be invalidated by further choices. This is taken care by
locking nets against re-mapping.
2021-03-25 01:56:23 +01:00
Matthias Koefferlein
c48be51cb6
Made SPICE netlist elements case insensitive in LVS scripts
2021-03-24 22:11:15 +01:00
Matthias Koefferlein
3777d311af
typos fixed, doc update
2021-03-24 00:07:16 +01:00
Matthias Koefferlein
1ae109f90d
DRC: deep mode region input does not flatten the layout on clip
2021-03-21 23:54:13 +01:00
Matthias Koefferlein
866ee9bd81
DRC: tiling mode with global transformation, debug + tested
2021-03-21 23:27:42 +01:00
Matthias Koefferlein
afdc50d05a
Global transformations for DRC and RecursiveShapeIterator
2021-03-21 23:09:09 +01:00
Matthias Koefferlein
1495d9521c
Tests updated.
2021-03-15 16:51:56 +01:00
Matthias Koefferlein
738e830c8d
Important bug fix for LVS
...
It's very important for LVS to use the same compare delegates
for layout and schematic. Otherwise the sorting of the devices
won't be identical and fake mismatches will occure.
This is achieved in a bit hacky way to imposing the layout
compare delegates to the schematic netlist.
2021-03-15 15:40:02 +01:00
Matthias Koefferlein
f2b1661647
Merge branch 'drc-enhancements', remote-tracking branch 'origin' into lvs-debug
2021-03-14 23:52:03 +01:00
Matthias Koefferlein
fea594ff69
Unit tests modified because of interface change for netlist comparer
2021-03-14 23:51:20 +01:00
Matthias Koefferlein
98c2db34e9
Another bugfix to cover the case of non-sequential pin IDs
2021-03-14 19:51:15 +01:00
Matthias Koefferlein
7bd9e8dc1b
Bugfix: with BJT3 and BJT4 included, the extracted .lvsdb file could not be read back.
2021-03-14 18:40:16 +01:00
Matthias Koefferlein
4549da561b
Better information in LVS report - at least for skipped circuits for now.
2021-03-14 18:21:32 +01:00
Matthias Koefferlein
bb9ae20c32
Rework of the progress reporting scheme: LVS got a log now, the layout is horizontal for multiple progress objects, less flicker and more quiet display, cancel function should work more reliably now.
2021-03-14 16:25:56 +01:00
Matthias Köfferlein
184f2bee50
Smooth bug ( #740 )
...
* Smoothing function: provide ability to keep horizontal/vertical lines (important for cut lines)
* Introducting API compatibility macros for generic plugins.
2021-03-14 12:27:36 +01:00
Matthias Koefferlein
c8f4c83c53
Fill tool enhancement (GSI, db): glue box for fill cell array compatibility in tiling processor.
2021-03-13 18:01:43 +01:00
Matthias Koefferlein
1b4eb1d401
Reworked fill_cell GSI integration (using defaults rather than variants, doc fixes)
2021-03-13 10:36:01 +01:00
Matthias Koefferlein
f03f745ed8
Using a 'final' progress in the tiling processor to stop child progress objects from showing.
2021-03-13 10:35:26 +01:00
Matthias Koefferlein
1aa595560e
Some refactoring
2021-03-13 10:34:48 +01:00
Matthias Koefferlein
7c4c928632
Sync mode for tiling progress enhanced - with progress now.
2021-03-13 10:12:01 +01:00
Matthias Koefferlein
f2d106651b
Reworked the fill scheme for better support of skewed fill repetitions.
2021-03-11 21:27:49 +01:00
Matthias Koefferlein
7d53f6d454
WIP.
2021-03-10 00:43:08 +01:00
Matthias Koefferlein
d4f641bff8
WIP.
2021-03-09 23:45:53 +01:00
Matthias Koefferlein
7bd4a692d8
WIP
2021-03-08 20:45:52 +01:00
Matthias Koefferlein
d76fc02244
Fixed a memory corruption issue in db::rasterize
2021-03-07 11:26:54 +01:00
Matthias Koefferlein
6e6ce998aa
Refactoring, preparing script generation.
2021-03-06 19:38:19 +01:00
Matthias Koefferlein
637968cbc4
Centering of bounding box in fill tool - this allows using step vectors alone without a boundary layer
2021-03-06 00:31:05 +01:00
Matthias Koefferlein
07966baf71
First draft of fill dialog with enhancements
2021-03-05 18:20:45 +01:00
Matthias Koefferlein
0d04937c91
Added tests for fill tool
2021-03-05 16:27:57 +01:00
Matthias Koefferlein
dbeee1531e
Matrix2d and Matrix3d generalized for integer coordinates, added transformation methods for polygons, regions, boxes, edges, etc. Fill enhancements basically implemented. Needs testing.
2021-03-05 15:31:40 +01:00
Matthias Koefferlein
e639c30570
split_* operations in DRC (interacting/non_interacting in one step), doc, tests.
2021-03-01 21:04:57 +01:00
Matthias Koefferlein
98eebe25ad
gsi binding of split interaction functions.
2021-03-01 00:25:50 +01:00
Matthias Koefferlein
c5788f3621
Fix: clone() is good :)
2021-03-01 00:09:13 +01:00
Matthias Koefferlein
8c6b231ae6
First steps towards differential interaction functions
2021-02-28 23:22:44 +01:00
Matthias Köfferlein
8b2ecf41df
Fixed issue by providing a compatibility bridge between tl::Stream (abstract paths) and tl::URI ( #734 )
2021-02-25 21:28:48 +01:00
Matthias Köfferlein
82587e70c3
Merge pull request #731 from KLayout/recursive-inst-iterator
...
Recursive inst iterator
2021-02-25 21:27:41 +01:00
Matthias Koefferlein
9074c918bb
Fixed a linker name clash.
2021-02-21 22:11:33 +01:00
Matthias Koefferlein
0f4a10441d
RecursiveInstanceIterator: Doc fixes, tests, instance array iteration.
2021-02-20 22:17:43 +01:00
Matthias Koefferlein
a1bae225e3
Recursive instance iterator, tests
2021-02-20 17:50:32 +01:00
Matthias Koefferlein
ca11f0799a
Recursive instance iterator, selection of target cells.
2021-02-20 01:09:17 +01:00
Matthias Koefferlein
0f47ff68a5
Recursive instance iterator, debugging.
2021-02-20 01:03:05 +01:00
Matthias Koefferlein
6527d29f8f
Recursive instance iterator, debugging.
2021-02-20 00:48:07 +01:00
Matthias Koefferlein
412056afed
Recursive instance iterator, first draft.
2021-02-20 00:40:05 +01:00