Matthias Koefferlein
339a2a6fd7
Maybe fixed a performance issue (layout object needs to be locked)
2020-06-05 00:34:07 +02:00
Matthias Koefferlein
233574598b
Support for LEF via definition properties (syntax wise, not semantics wise)
2020-06-04 17:55:06 +02:00
Matthias Koefferlein
8b0ab115ed
Memory footprint optimization for quad tree
2020-06-04 15:38:53 +02:00
Matthias Koefferlein
adfd653213
WIP: refactoring - include fuzzy compare in array, don't put into GSI method impl.
2020-06-04 13:01:11 +02:00
Matthias Koefferlein
999c065262
Introducing iterated arrays for instances
...
Iterated instances are created for OASIS files
using irregular repetitions in viewer mode.
Reason: this way, the same drawing optimization
than for iterated shape arrays can be applied.
As this is a new API feature, some adjustments
had to be made to incorporate them into the
code.
2020-06-04 12:17:34 +02:00
Matthias Koefferlein
9c4648a5b5
WIP: some bug fixing and enhancements.
2020-06-02 23:59:09 +02:00
Matthias Koefferlein
cdf4d08fd3
WIP
...
* Maybe fixed a performance issue on box-trees: the iterator wasn't
going down to the very bottom of the tree on initialization
* Added array quad skipping in display of shape arrays
2020-06-01 23:28:04 +02:00
Matthias Koefferlein
4aa1364e4b
Fixed DEF reader, updated golden test data.
2020-06-01 15:04:25 +02:00
Matthias Koefferlein
d7af7fc5c0
Merge branch 'lefdef-enhancments'
2020-06-01 13:37:45 +02:00
Matthias Köfferlein
0c0d247c23
Merge pull request #574 from KLayout/issue-558
...
Fixed #558 ("extents" wasn't deep-enabled for Edges, Texts and EdgePairs)
2020-06-01 00:21:46 +02:00
Matthias Koefferlein
82c6a5bc6b
WIP: fixed more gcc-9 warnings.
2020-05-31 21:50:10 +02:00
Matthias Koefferlein
a9c0616aa0
WIP: more changes
2020-05-31 10:37:30 +02:00
Matthias Koefferlein
759f07ee4d
Implemented solution for #570 (deep Edges::extents)
...
While doing this, it was discovered that the problem also
persists for EdgePairs and Texts.
In order to provide a more generic solution, some refactoring
was applied.
2020-05-31 01:55:05 +02:00
Matthias Köfferlein
6601d472bf
Implemented #570 (perimeter included in antenna check) ( #572 )
...
* First implementation of the perimeter factor for antenna check, unit tests.
* Bugfix and unit tests for GSI binding of new antenna check version.
* DRC integration of perimeter-enabled antenna check.
* Enhanced DRC doc for antenna rule
2020-05-30 21:45:48 +02:00
Matthias Koefferlein
bea3e29421
Merge branch 'master' of https://github.com/KLayout/klayout
2020-05-28 00:44:49 +02:00
Matthias Koefferlein
e94b40cab9
Fixed Windows build (linker error)
2020-05-28 00:44:27 +02:00
Matthias Köfferlein
3246e0d36f
Fixed #565 (SPICE global nets must not produce pins if not present) ( #567 )
...
* Fixed #565 (SPICE global nets must not produce pins if not present)
* Fixed unit tests.
2020-05-26 23:47:59 +02:00
Matthias Köfferlein
ba46ffb276
Merge pull request #563 from KLayout/issue-487
...
Fix #487 (True text object support for DRC/LVS)
2020-05-26 22:44:53 +02:00
Matthias Köfferlein
a046457cc5
Fixed bug #568 (CIF writer issue with small rotation angles) ( #569 )
...
* Fixed bug #568 (CIF writer issue with small rotation angles)
* Fixed the reader bug too which created the rounding issue.
2020-05-25 22:10:06 +02:00
Matthias Koefferlein
29a5b4c519
Bugfix: wrong type cast of size_t to unsigned int
2020-05-24 09:44:25 +02:00
Matthias Koefferlein
0f42ebe385
Updated DRC doc, added more tests.
2020-05-23 22:54:50 +02:00
Matthias Koefferlein
5ba3d220e9
Made unit tests a little more consistent.
2020-05-23 22:30:54 +02:00
Matthias Koefferlein
ee53869cbd
Connect_implicit test with labels.
2020-05-23 21:21:30 +02:00
Matthias Koefferlein
f410c91339
Updated documentation
2020-05-23 21:14:01 +02:00
Matthias Koefferlein
ba9a05640c
Bugfixed tiled mode with text input, DRC tests added and test data updated.
2020-05-23 19:03:42 +02:00
Matthias Koefferlein
6fc72b2a39
WIP: doc update
2020-05-23 16:24:05 +02:00
Matthias Koefferlein
81750ed3d8
Tiling processor enabling for text input/output, updated tests.
2020-05-23 16:23:40 +02:00
Matthias Koefferlein
daf8e5f8fc
Bugfix: Region::pull_interacting(edges) wasn't working properly.
2020-05-23 13:19:46 +02:00
Matthias Koefferlein
b84a9df2da
Persisting texts now for .l2n format
2020-05-22 00:58:46 +02:00
Matthias Koefferlein
c682cc85d0
Generalized concept of region, texts etc. into 'shape collections'. Fixed LVS and DRC tests.
2020-05-21 23:59:30 +02:00
Matthias Koefferlein
5795ec8b07
Fixed DRC texts methods, added tests.
2020-05-20 23:56:35 +02:00
Matthias Koefferlein
854320d52d
Debugging: proper assignment of net names through labels.
2020-05-20 23:27:06 +02:00
Matthias Koefferlein
e9af72ee28
Tests for texts as net names, fixed Shapes test (order of texts)
2020-05-20 01:05:19 +02:00
Matthias Koefferlein
cd0b86b1dc
WIP: fixed tests.
2020-05-20 00:31:26 +02:00
Matthias Koefferlein
4c13bb96a0
WIP: refactoring - texts for net extractor.
2020-05-20 00:21:06 +02:00
Matthias Koefferlein
371009ba80
Fixed small typos in LVS doc text.
2020-05-18 21:08:59 +02:00
Matthias Koefferlein
ad0cd2f10c
pull_interacting and interacting/not_interacting for region/text combinations in DRC.
2020-05-16 00:18:54 +02:00
Matthias Koefferlein
7dab87b881
Added tests, Region#pull_interacting with texts
2020-05-15 23:48:21 +02:00
Matthias Koefferlein
878a494abb
AND and NOT for texts vs. region, DRC generalization.
2020-05-15 22:24:18 +02:00
Matthias Koefferlein
8a2742d436
Small doc updates
2020-05-13 22:39:25 +02:00
Matthias Koefferlein
58ca9b8730
Some bug fixes, added tests
2020-05-13 21:56:49 +02:00
Matthias Koefferlein
831acb2c40
Bugfixes, tests for flat interact between region and texts.
2020-05-13 18:25:43 +02:00
Matthias Koefferlein
16d6c75b0e
Fixed build, added tests for filter in deep texts object.
2020-05-13 17:58:00 +02:00
Matthias Koefferlein
4e7d0a81b8
'interact' between regions and texts.
2020-05-13 17:29:10 +02:00
Matthias Koefferlein
08026e8b35
Bugfix: in-place filter not working for region, edges. Implemented hierarchical filter for texts. Added Ruby tests for Texts.
2020-05-12 23:01:54 +02:00
Matthias Koefferlein
c1b1ce6951
Provide unit test for DeepTexts.
2020-05-12 21:43:11 +02:00
Matthias Koefferlein
4fbb6286ac
Fixed unit tests.
2020-05-12 21:16:12 +02:00
Matthias Koefferlein
8b083a8330
Added unit tests for db::Texts, renamed db unit test files so debugging is possible
2020-05-12 21:09:21 +02:00
Matthias Koefferlein
a9cd9ac122
First implementation of texts collection.
2020-05-12 20:44:39 +02:00
Matthias Köfferlein
3f8090b3fd
Fixed #547 (better error messages on some Shape methods, fixed doc). ( #550 )
2020-05-11 19:24:44 +02:00
Matthias Köfferlein
296ec5aebf
Fixed #554 : using 64bit coordinates for RVE reader ( #555 )
2020-05-11 19:24:29 +02:00
Matthias Koefferlein
21173c5f96
Attempt to fix MSVC builds
2020-05-03 10:13:12 +02:00
Matthias Köfferlein
9f4ccaaedc
Issue #535 (Image handling enhancements) ( #551 )
...
* Menu item to hide or show all images
* Images: asymmetric color nodes.
* Added RBA::image::from_s for reading image back from string. Added tests.
* Added image file reader test (RBA)
* Added lyimg format for image file persistence.
* Small fix of unit tests.
* Added GSI binding for new image features and tests.
* Save and load for .lyimg formats in image properties dialog.
2020-05-02 13:45:20 +02:00
Matthias Koefferlein
5fd60e0d49
Planning LEF/DEF enhancements for 0.27 now as this is a too big change.
2020-05-02 13:22:04 +02:00
Matthias Koefferlein
99ec635e5a
Start LEF browser in tech base dir in the context of a technology
2020-05-02 13:19:26 +02:00
Matthias Koefferlein
fd63d1017f
Added tests for LEF/DEF mapfile, fixed a few bugs.
2020-05-02 09:30:17 +02:00
Matthias Koefferlein
97022a3a87
Layer mapping scheme enhancements, UI enhancements
...
* A map file can now be specified and should be read relative
to the technology
* Giving a map file will disable the pattern-based mapping
* UI enhanced accordingly
* Added UI option to configure macro resolution mode
* Bugfix: LEF files have not been read relative to the tech
* Bugfix: Some options where not persistent
2020-05-02 00:14:06 +02:00
Matthias Koefferlein
0e68b910fa
Merge branch 'master' into lefdef-enhancments
2020-05-01 16:00:58 +02:00
Matthias Koefferlein
751340c963
LEF/DEF: Fixed placement of FOREIGN cell
2020-05-01 15:16:08 +02:00
Matthias Köfferlein
86739794a0
Merge pull request #543 from KLayout/fix-missing-python-alternative-doc
...
Fixed problem of missing exec_ documentation
2020-04-30 22:06:55 +02:00
Matthias Köfferlein
cb3833f563
Merge pull request #546 from KLayout/sonarqube-fixes
...
Sonarqube fixes
2020-04-30 22:06:38 +02:00
Matthias Köfferlein
8dae4161e1
Fixed #548 (shield issue on space) ( #549 )
2020-04-30 22:03:16 +02:00
Matthias Koefferlein
f6b2eea0a7
Build fixed.
2020-04-26 17:08:52 +02:00
Matthias Köfferlein
9b0362d03d
Fixed #544 (ignore duplicate global nets in SPICE reader) ( #545 )
2020-04-26 16:54:13 +02:00
Matthias Köfferlein
93a072903c
Fixed #539 (internal error on circuit flatten) ( #542 )
...
Previously, circuits which connected two pins through
a net could not be flattened. This capability now has
been added.
2020-04-26 16:53:50 +02:00
Matthias Koefferlein
3d3bdb001f
Some patches for sonarqube
2020-04-26 10:25:46 +02:00
Matthias Koefferlein
15567d3d27
Some small fixes to make clang-analyze happy.
2020-04-26 09:33:10 +02:00
Matthias Koefferlein
c6b5d2f8d2
DXF reader code change suggested by clang-analyze
2020-04-26 08:42:50 +02:00
Matthias Koefferlein
73f2f23505
Adjusted unit tests for latest fix.
2020-04-26 01:05:07 +02:00
Matthias Koefferlein
88330587a3
Fixed build errors.
2020-04-26 00:26:09 +02:00
Matthias Koefferlein
fffae4134c
Fixed a Sonarqube issue.
2020-04-25 23:37:43 +02:00
Matthias Koefferlein
3a7d9d0b0f
Fixed copyright/license topic.
2020-04-25 23:30:48 +02:00
Matthias Koefferlein
5bedd3cd04
Removed tab characters from sources.
2020-04-25 23:27:29 +02:00
Matthias Koefferlein
1a30fdf4b7
Exceptions must not be strings in Python
2020-04-25 23:25:53 +02:00
Matthias Koefferlein
45c7b97549
Fixed an issue in the strmxor implementation (output_cell wasn't initialized)
2020-04-25 23:23:40 +02:00
Matthias Koefferlein
0bc965dde9
Fixed a layout diff bug (compare of paths)
2020-04-25 23:20:01 +02:00
Matthias Koefferlein
849e97b88a
Fixed a wrong computation of image memory footprint
2020-04-25 23:13:46 +02:00
Matthias Koefferlein
fe2e642e66
Fixed a 'value never read' issue.
2020-04-25 23:10:46 +02:00
Matthias Koefferlein
f1fa81bead
Fixed a 'value never read' issue.
2020-04-25 23:09:41 +02:00
Matthias Koefferlein
8050a54bc8
Fixed a potential null derference issue.
2020-04-25 23:06:41 +02:00
Matthias Koefferlein
4c6d61bed1
Fixed 'at most one statement is allowed per line' for tl_assert macro
2020-04-25 22:59:45 +02:00
Matthias Koefferlein
061e5d7286
Added LEF reading timer (LEF next to DEF)
2020-04-25 22:05:01 +02:00
Matthias Koefferlein
c602871e0e
Implemented Stefan's solution #3 for FOREIGN != MACRO in LEF
2020-04-25 21:08:11 +02:00
Matthias Koefferlein
4c6f1475b1
Made rba:layLayoutView test functional without qtbindings enabled.
2020-04-25 19:45:02 +02:00
Matthias Koefferlein
f6140055d6
Modified reader scheme for FOREIGNCELL
2020-04-24 23:21:27 +02:00
Matthias Koefferlein
7574a41d09
Fixed problem of missing exec_ documentation
2020-04-22 08:07:22 +02:00
Matthias Koefferlein
c7de542070
Some more refactoring of DEF layer mapping
2020-04-19 20:14:12 +02:00
Matthias Koefferlein
71906a5681
WIP: some further refactoring of the layer mapping scheme.
2020-04-19 19:12:03 +02:00
Matthias Koefferlein
040af426dc
WIP: refactoring of map file reading.
2020-04-19 16:54:41 +02:00
Matthias Koefferlein
e51f15b116
New layer flavors: special nets, LEF pins.
2020-04-19 14:38:14 +02:00
Matthias Koefferlein
9825245e0c
Implemented LEF MACRO FOREIGN
2020-04-19 12:16:55 +02:00
Matthias Koefferlein
d93ef3ff97
Timing reports for stream writers too, reporting file names for reader and writer timing.
2020-04-19 10:39:27 +02:00
Matthias Koefferlein
73521bc0dc
Bugfix: 'Delete Layer' was mapped incorrectly to 'Edit Layer Specification'
2020-04-18 22:59:06 +02:00
Matthias Koefferlein
0066381b40
Provide a LayoutView constructor even without Qt bindings enabled
2020-04-18 22:56:34 +02:00
Matthias Koefferlein
9a7f0a9c2a
Fixed a LEF/DEF reader bug (was '+ RECT' or '+ POLYGON' in SPECIALNETS)
2020-04-18 18:48:25 +02:00
Matthias Koefferlein
70d8334f8c
Merge branch 'lefdef-enhancments' of https://github.com/KLayout/klayout into lefdef-enhancments
2020-04-18 18:00:54 +02:00
Matthias Koefferlein
54cf57c772
LEF/DEF enhancements (via cellname suffix configurable, group separation disabled by default)
...
Two new reader options:
1.) via cell name prefix (default is "VIA_"). This name is put in front of the via name to form the cell cell name
2.) group separation disabled by default. Groups are not put into individual parent cells by default.
2020-04-18 17:58:50 +02:00
Matthias Koefferlein
921af52643
DEF reader bugfix: wasn't reading SPECIALNETS + ROUTED + RECT
2020-04-14 23:15:08 +02:00
Matthias Koefferlein
61714090e3
Maybe fixed performance issue: usually it's not a good idea to iterate the layout's hierarchy while deleting something from it.
2020-04-14 22:48:18 +02:00
Matthias Koefferlein
9c62bb015f
Include BLOCKAGE in map file LEF/DEF, becoming case insensitive for purpose
2020-04-05 23:56:43 +02:00
Matthias Koefferlein
3ada29d606
Some bugfixes for LEF/DEF reader for special nets (extension handling)
2020-04-05 23:49:19 +02:00
Matthias Koefferlein
df7c530013
Bugfix for the net reader of DEF - wasn't properly reading diagonal parts.
2020-04-05 22:56:04 +02:00
Matthias Koefferlein
cd801206bc
Some refactoring - DEF scanner more modular (5)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
4757ad5044
Some refactoring - DEF scanner more modular (4)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
dea3743d59
Some refactoring - DEF scanner more modular (3)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
9df6d29761
Some refactoring - DEF scanner more modular (2)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
99af144d98
Some refactoring - DEF scanner more modular
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
f11a3a0dd5
Bugfix: MINWIDTH ... WRONGDIRECTION wasn't considering DIRECTION VERTICAL
...
Added/updated some tests, some refactoring.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
4a24b727d5
Tried to implement MINWIDTH .. WRONGDIRECTION in LEF58_MINWIDTH property
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
bcaf28c94c
Bugfix LEF/DEF reader: via needs to change the layer also if it's inside a DEF. Added more test cases.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
2c60338ae8
Added DO .. BY .. STEP to vias in SPECIALNETS in DEF reader, added one more private testcase
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
0ae97279d8
Added optional MASK specification to VIA's RECT and POLYGON elements
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
fd0b07f0cd
MERGE: strmxor could not identify layers when one has a name and the other does not (but both have numbers)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
8796b65ddb
DEF reader patched: after via continue with the new metal layer with the width given by the rule.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
ee3ee5bd8e
Another update of the map file reader for LEF/DEF
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
dd63b727f8
Another update of the map file reader for LEF/DEF
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
67a1c0ba25
Updated implementation of mapping file reader for LEF/DEF.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
e15d99e4da
LEF reader fix: determine routing layers for vias without VIARULE from involved layers
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
d328901799
DEF reader fix: TAPER has to disable NONDEFAULTRULE for the segment
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
44503facea
Attempt to auto-import .map files for LEF/DEF reader. Probably needs adjustment.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
df11ff9b85
Merge branch 'master' of https://github.com/KLayout/klayout
2020-04-05 20:20:28 +02:00
Matthias Koefferlein
0abd5d5d96
Fixed some minor compiler warnings.
2020-04-05 18:30:08 +02:00
Matthias Koefferlein
27109312cf
Avoid a runtime warning for missing QWidget binding without Qt bindings compiled in
2020-04-05 18:29:55 +02:00
Matthias Köfferlein
c93db59e37
Fixed #524 (failed query leaves layout in invalid state) ( #528 )
2020-04-05 15:11:37 +02:00
Matthias Köfferlein
865076588b
Fixed issue #530 (events are mentioned as getters two times) ( #531 )
2020-04-05 15:11:18 +02:00
Matthias Köfferlein
2b3a53b285
Implemented #521 (enhanced API for ObjectInstPath) ( #532 )
2020-04-05 15:11:03 +02:00
Matthias Koefferlein
d1f1cf3031
Fixed a refactoring damage: the application mode indicator did not follow programmatic changes.
2020-04-05 14:01:44 +02:00
Matthias Koefferlein
14b6d58a09
Bugfix: paste was always paste_interactive
2020-04-05 13:23:22 +02:00
Matthias Koefferlein
cc6b23bffd
MERGE: fixed a typo in the undo title.
2020-04-01 23:40:00 +02:00
Matthias Koefferlein
c640347570
MERGE: added Spice reader testcase for resistors with model names.
2020-04-01 23:19:21 +02:00
Matthias Koefferlein
8c91dd520d
MERGE: Enhanced DRC and LVS documentation somewhat
2020-04-01 22:45:50 +02:00
Matthias Koefferlein
c021d60d41
Updated unit test
2020-03-29 09:23:13 +02:00
Matthias Koefferlein
86a3150aba
Fixed .pro files
2020-03-29 09:03:02 +02:00
Matthias Koefferlein
115f2edfd6
Removed unused entry from .pro file - made some build crash.
2020-03-28 23:10:02 +01:00
Matthias Koefferlein
99d3610a6a
Implemented #527 (wildcard layer mapping targets)
...
commit d77702cd86066f3a97d740a95923fa598c2ff07b
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date: Sat Mar 28 21:28:39 2020 +0100
Wildcard expansion feature on layer mapping
Finished feature, added doc and test.
The solution is to use placeholder indexes for the
layer mapping which are substituted by the real
layers when they are encountered.
commit af60b5f18acfe3c5e2f1d4e6bc6ee752a246dc0d
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date: Sat Mar 28 19:11:32 2020 +0100
Preparations for new feature: introduce relative and wildcard target layer specs
2020-03-28 22:49:57 +01:00
Matthias Koefferlein
53f69ea90d
Fixed a segfault in the unit tests (related to future branch)
2020-03-28 22:49:06 +01:00
Matthias Koefferlein
666cdeadc5
MERGE: documentation enhancements for LVS/DRC
2020-03-28 12:29:53 +01:00
Matthias Koefferlein
a47932a79e
Added one more testcase for join_symmetric_nets
2020-03-28 09:49:41 +01:00
Matthias Koefferlein
9afcec25bc
Fixed #526 - Make scripe debugging more reliable
...
Problem: the debugger was printing an object's value as string.
The effect is that for big objects "to_s" will deliver huge strings
(e.g. polygons, netlists ...). "inspect" is better (already used
for Python), but it's aliased to "to_s" in Python and Ruby.
Huge strings will stall the debugger.
The solution is to stop this aliasing (Ruby 2.x doesn't do it
itself anymore) and use "inspect" consistently for Python and
Ruby.
Details can still be printed in the console.
2020-03-26 22:50:12 +01:00
Matthias Koefferlein
b6ba51e563
Provide timing information for Spice reader/writer
2020-03-26 17:33:18 +01:00
Matthias Koefferlein
04aa005247
Fixed #525 - report true source line in DRC and LVS verbose mode
2020-03-26 17:20:15 +01:00
Matthias Koefferlein
8afd907abb
Fixed builds
2020-03-15 23:27:24 +01:00
Matthias Koefferlein
c10ccccdf7
Merge branch 'app-refactoring' into doc-args
2020-03-15 21:32:39 +01:00
Matthias Koefferlein
8275e47334
More @args removed.
2020-03-14 22:44:43 +01:00
Matthias Koefferlein
daba9d78be
More @args removed.
2020-03-14 22:26:21 +01:00
Matthias Koefferlein
53c81cc572
Got rid of most of the @args
2020-03-14 21:50:47 +01:00
Matthias Koefferlein
c6b48acc76
Some small enhancements
...
LVS: max_branch_complexity was wrong and missing from doc.
Updated test cases so MSVC 2017 builds should pass.
Windows build.bat updated so debug builds can be made.
2020-03-04 21:48:00 +01:00
Matthias Köfferlein
ef4c9313ab
Fixed a severe bug in join_symmetric_nets
2020-03-03 22:24:03 +01:00
Matthias Köfferlein
7a60f5957b
Enable Qt-less build of unit tests on Windows in debug mode and without iterator assertions
2020-03-03 22:19:31 +01:00
Matthias Koefferlein
6721cb9c5b
Merge branch 'issue-482-update'
2020-03-02 18:57:40 +01:00