Matthias Koefferlein
30ab1a13ca
Added tests, documentation, doc bug fixes for angle-class edge selectors
2022-11-12 18:16:57 +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
11f6eb21e0
Added ParentCellInst#dinst
2022-10-18 21:52:40 +02:00
Matthias Koefferlein
8705b77172
New unit tests for RDB scan with properties
2022-10-18 21:28:06 +02:00
Matthias Koefferlein
8f6603d88e
Fixed unit test fails
2022-10-18 01:26:42 +02:00
Matthias Koefferlein
eedfc7c00f
Doc update, tests for new annotation features
2022-10-01 13:04:25 +02:00
Matthias Köfferlein
7a9e9989d3
Merge pull request #1147 from KLayout/wip
...
Wip
2022-09-04 09:08:08 +02:00
Matthias Koefferlein
2ac9336204
Tests for new Edges GSI bindings.
2022-08-31 17:57:23 +02:00
Matthias Koefferlein
d4123d42a7
added missing file
2022-08-27 21:55:30 +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
bf9d8100f2
Fixed ant Ruby unit test
2022-08-27 17:43:19 +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
e1552afcae
Menu system: menu opening event, insert_menu variant with Action argument, clear_menu method, icon setter with QIcon
2022-08-15 23:43:45 +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
c23b00aa7f
[Consider merging] fixed rba and pya test because of argument error message change
2022-08-07 18:12:19 +02:00
Matthias Koefferlein
40b4b22f02
Added variants for CellInstArray constructor that take a Cell reference
2022-08-01 19:01:41 +02:00
Matthias Köfferlein
801ef78990
Fixed issue-1131 (do not show non-existing files in MRU lists) ( #1133 )
...
* Fixed issue-1131 (do not show files in MRU lists which do no longer exist)
The solution consists of an extension of the Action system allowing to
dynamically hide or disable items. This currently works for menu items only.
This feature is used to dynamically *disable* (as of now, not hiding)
items from the four MRU lists corresponding to non-existing files.
In addition, a "clear list" menu has been added to the MRU lists.
* Small enhancement: file names can be URIs
2022-08-01 18:49:42 +02:00
Matthias Koefferlein
334540f660
Normalization of CellInstArray upon creation (GSI)
2022-06-18 13:48:04 +02:00
Matthias Koefferlein
5aa9f5ba13
Fixed some unit tests
2022-06-12 14:00:06 +02:00
Matthias Koefferlein
a853ed904f
API enhancements for annotation template management
2022-06-09 00:14:32 +02:00
Matthias Koefferlein
ac5c66400d
Added ability to query modes and issue menu commands to LayoutView in non-Qt case.
2022-06-06 23:04:31 +02:00
Matthias Koefferlein
b95027a21b
Refactoring: lay::PixelBuffer, BitmapBuffer -> tl, added image functions to RdbItem in GSI
2022-05-31 00:20:47 +02:00
Matthias Koefferlein
1d8db227e5
Minor code enhancements
2022-05-29 11:41:40 +02:00
Matthias Koefferlein
29b3718b2d
Further reducing dependency on Qt, fixed tests
2022-05-29 10:11:16 +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 Koefferlein
585aa4667f
Fixed non-Qt-binding case
2022-05-14 01:48:59 +02:00
Matthias Koefferlein
42f0a79dee
Resize method and tests
2022-05-07 22:12:36 +02:00
Matthias Koefferlein
41cbef1e5a
Tests for new LayoutView features
2022-05-07 19:13:01 +02:00
Matthias Koefferlein
585ab0f310
Fixed tests
2022-05-07 18:57:33 +02:00
Matthias Koefferlein
101544ab78
Equality operator in PixelBuffer
2022-05-07 18:48:45 +02:00
Matthias Koefferlein
32813b80f2
GSI binding for PixelBuffer and tests
2022-05-07 12:53:00 +02:00
Matthias Köfferlein
51cf918f56
Issue 1029 - Crash on QTreeViewItem#setBackgroundColor ( #1032 )
...
* Fixed issue #1029
The problem happened because in the described case the
tl::Variant used as a intermediate container holds the
Python QBrush object and when it gets deleted, the
QBrush object is deleted too.
* Added tests
2022-03-16 23:27:25 +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 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 Koefferlein
8091464916
Fixed unit tests
2022-02-11 19:12:57 +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 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
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
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 Koefferlein
ca304b15c8
Enable multi-base support for RBA + Qt binding
2021-12-11 00:14:10 +01:00
Matthias Koefferlein
9c0e94e63c
WIP: Allowing extension (mixin) classes
...
Needed to represent QIODeviceBase as a second base class for
QIOdevice, QFile etc. Additional base classes are supported but
in a rather limited way. They only contribute constants like enums.
No methods can be provided this way (a limitation of the method
enumeration scheme which only supports one base classe)
2021-12-07 23:24:08 +01:00
Matthias Koefferlein
6f9fa7a4a2
Merge branch 'qt6' of www.klayout.org:/home/matthias/git/klayout into qt6
2021-12-05 17:21:09 +01:00
Matthias Koefferlein
1777002d4a
WIP: fixed a unit test (Qt6 QActions seem to remember checked state even if not checkable)
2021-12-05 16:04:13 +01:00
Matthias Koefferlein
634f6da615
Fixed RBA basic test for Qt5.
2021-12-05 13:48:52 +01:00
Matthias Koefferlein
ab97a4722d
WIP: fixed some Qt binding and GSI issues, added tests
2021-12-04 22:15:04 +01:00
Matthias Koefferlein
e677cc7300
WIP: tests for QStringView and QByteArrayView bindings
2021-12-04 09:03:59 +01:00
Matthias Koefferlein
125543957d
WIP: Fixed GSI to some extent, some tests
2021-12-04 00:31:01 +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 Köfferlein
91d358398b
Merge pull request #937 from KLayout/more-macro-bindings
...
More macro bindings
2021-11-14 16:18:23 +01:00
Matthias Koefferlein
7d316b2a2c
Added missing file
2021-11-14 14:39:42 +01:00
Matthias Koefferlein
0ca82001ed
#935 fixed (checking for valid cell index)
2021-11-13 01:03:54 +01:00
Matthias Koefferlein
ac1167278e
Updated tests with 'enclosed' rule
2021-11-09 00:32:23 +01:00
Matthias Koefferlein
ebe38912a6
Tests and documentation for dbTrans#is_complex?
2021-10-27 23:36:58 +02:00
Matthias Koefferlein
c5607777a8
Updated testdata
2021-09-19 21:37:52 +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 Köfferlein
df022316b9
Merge pull request #877 from KLayout/drc-extent-of-cells
...
Implemented extent(cell_filter) for DRC, added Layout#cells with name…
2021-07-21 23:37:10 +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
99d980cd16
Added two useful functions for RBA/pya CellView (context_trans, context_dtrans)
2021-07-20 19:31:54 +02:00
Matthias Koefferlein
2e21498422
Updated unit tests
2021-07-19 07:58:42 +02:00
Matthias Koefferlein
2fee924103
Updated the solution
2021-07-15 23:39:02 +02:00
Matthias Koefferlein
4e54715d64
Merge branch 'wip-lvs'
2021-07-06 23:40:44 +02:00
Matthias Köfferlein
d10a28e96a
Merge pull request #850 from KLayout/ruby-3-enabling
...
Ruby 3 enabling
2021-07-06 23:38:40 +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
8f65ab099f
Fixed DeviceClass assignment operator
2021-07-06 07:56:27 +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
cd70bea9a0
Basic enabling of Ruby 3
2021-06-29 23:32:36 +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
1d42711b65
Updated test data
2021-06-27 16:07:10 +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
1c8442f485
Fixed #807 - now supporting incremental connect and clear_connections in DRC/LVS
2021-05-24 21:56:57 +02:00
Matthias Koefferlein
05b1023fd5
Updated tests.
2021-05-24 16:49:00 +02:00
Matthias Koefferlein
2e4c5a535a
Fixed test fails: infinite recursion due to duplicate alias on -e following -ne
2021-05-19 22:16:47 +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
3f46098d1b
Merge pull request #789 from KLayout/lefdef-macro-layouts-for-gui
...
Lefdef macro layouts for gui
2021-05-08 22:25:56 +02:00
Matthias Koefferlein
0d848d0597
Added LEF macro file list to API and UI
2021-05-04 22:56:03 +02:00
Matthias Koefferlein
70864e41af
Implemented Edge#cut_point for GSI (was missing)
2021-05-04 21:12:46 +02:00
Matthias Köfferlein
7ef56c28c8
Merge pull request #774 from KLayout/issue-715
...
Fixes #715 (selection box larger than drawn)
2021-04-19 22:29:11 +02:00
Matthias Köfferlein
e6ab8c2483
Issue 771 ( #773 )
...
* Fixed the issue - Byte array variant was not properly converted to Python/Ruby objects.
* Added tests + properly converting byte arrays to byte array variants in Python.
2021-04-19 22:28:27 +02:00
Matthias Koefferlein
af6f11c2b3
Fixes #715 (selection box larger than drawn)
2021-04-18 14:02:26 +02:00
Matthias Koefferlein
94556c1448
Merge branch 'master' into lvs-enhancements
2021-03-30 18:56:27 +02:00
Matthias Koefferlein
8fda92a9c4
Merge branch 'drc-enhancements' into fill-enhancements
2021-03-29 15:07:47 +02:00
Matthias Koefferlein
cefc2eeddb
Bug fixes.
2021-03-29 01:05:53 +02:00
Matthias Koefferlein
9f295523e4
explicit net joining - preparations
2021-03-27 21:56:53 +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
c8246d1e66
Adjusted RBA tests
2021-03-15 10:29:32 +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 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
af5435f869
Added more tests (inline transformation of region etc. with matrix transformations)
2021-03-05 15:39:02 +01:00
Matthias Koefferlein
44e59bc2ff
Added tests for EdgePairs transformation
2021-03-05 15:34:23 +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
b353f7db79
Test stability for Windows/32bit
2021-02-28 13:50:33 +01:00
Matthias Koefferlein
77356cd877
More unit test stability
2021-02-27 21:31:32 +01:00
Matthias Köfferlein
483f67307c
Merge pull request #732 from KLayout/lefdef-enhancements
...
Lefdef enhancements
2021-02-25 21:28:02 +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
3db1db831f
Test update after update of LEF/DEF reader.
2021-02-21 21:23:45 +01:00
Matthias Koefferlein
0f4a10441d
RecursiveInstanceIterator: Doc fixes, tests, instance array iteration.
2021-02-20 22:17:43 +01:00
Matthias Koefferlein
a9fa5d73f9
Introducing 'with_holes' and 'without_holes' in DRC and RBA::Region.
2021-02-08 20:59:17 +01:00
Matthias Köfferlein
e31d7afb64
Reduce risk of DRC polygon split artefacts in deep mode ( #722 )
...
* Fixed a segfault with simple 'klayout -v'
* is_halfmanhattan polygon predicate, confine polygon splitting to halfmanhattan
Splitting any-angle polygons for area reduction in the
deep processor creates a risk of introducing grid-snap
artefacts. Hence we avoid this.
2021-02-05 23:28:04 +01:00
Matthias Koefferlein
bde58da2a1
Fixed key binding unit test for multiple passes.
2021-02-01 08:30:24 +01:00
Matthias Köfferlein
97ed4cf0f2
Merge pull request #712 from KLayout/gsi-fixes
...
Some enhancements to script API
2021-01-31 19:20:35 +01:00
Matthias Koefferlein
f263f5c44c
Compatibility with older Ruby and Python versions in unit tests.
2021-01-31 17:14:21 +00:00
Matthias Koefferlein
cdb62cc111
Merge branch 'master' into gsi-fixes
2021-01-27 12:46:34 +01:00
Matthias Köfferlein
1ba4394c2a
Merge pull request #710 from KLayout/byte-arrays
...
Byte arrays
2021-01-27 12:42:48 +01:00
Matthias Koefferlein
c7113b8c72
Added methods to manipulate key bindings and menu visibility through scripts (MainWindow#set_key_bindings, MainWindow#get_key_bindings, MainWindow#set_menu_items_hidden ...)
2021-01-26 23:10:26 +01:00
Matthias Koefferlein
d31f87f053
Some issues with the byte array binding fixed, less ambiguitites with Qt bindings, tests added.
2021-01-24 23:44:40 +01:00
Matthias Koefferlein
5aac018503
Mapping QByteArray (and std::vector<char>) to Python 'bytes' now.
2021-01-24 17:36:40 +01:00
Matthias Koefferlein
c8951c10cd
Generalized spline interpolation of DXF reader and provide a script binding (RBA::Utils).
2021-01-23 18:44:36 +01:00
Matthias Koefferlein
11e9f89fc2
Introduced normalization into region/edges/edge pairs/texts tests to get rid of platform dependency because of unordered_set implementation details.
2021-01-19 08:03:42 +01:00
Matthias Koefferlein
081c445cd8
Merge branch 'master' into complex_drc_ops
2021-01-17 19:55:28 +01:00
Matthias Koefferlein
9cf0a9e659
Major enhancements for DRC feature (universal DRC)
...
Main issue: universal DRC scheme and rectangle filtering/opposite filtering/shielding.
The space function required some enhancements to accomodate symmetric interactions.
Now there are symmetric edge pairs. Space initially runs twofold (primary to foreign)
but produces symmetric edge pairs. These are filtered later unless converted before.
2021-01-17 19:26:22 +01:00
Matthias Koefferlein
8c8c9a6911
More tests.
2021-01-13 01:18:25 +01:00
Matthias Koefferlein
dce22fee37
New region filters (square, area ratio, relative height)
2021-01-13 01:08:42 +01:00
Matthias Koefferlein
ddf36290fa
Corner detection feature: tests, bug fixes, enhancements (inclusive/exclusive angle constraints)
2021-01-09 23:10:17 +01:00
Matthias Koefferlein
7d4310d343
Updated copyright to 2021
2021-01-05 22:57:48 +01:00
Matthias Koefferlein
4ec00fb129
Fixed an issue with wrapping new objects into tl::Variants which are returned directly. For these objects, ownership needs to be transferred to the script.
2020-12-27 17:09:06 +01:00
Matthias Koefferlein
992be87812
WIP: testdata updated
2020-12-27 01:33:54 +01:00
Matthias Koefferlein
46a4178010
More elaborate handling of selection changed events in LayoutView (avoids dummy events) and some more GSI methods for manipulating or checking selections.
2020-12-24 17:57:01 +01:00
Matthias Koefferlein
45a8f7aa20
Merge branch 'master' into complex_drc_ops
2020-12-20 23:50:54 +01:00
Matthias Koefferlein
72c933ed47
WIP: tests fixed.
2020-12-19 22:46:30 +01:00
Matthias Koefferlein
91de370901
WIP: bugfix, RBA tests.
2020-12-16 23:02:01 +01:00
Matthias Koefferlein
db6b3d280e
Merge branch 'master' into complex_drc_ops
2020-11-22 09:31:15 +01:00
Matthias Koefferlein
f61aac6b1b
Doc: resolve references to child classes too.
2020-11-12 10:22:22 +01:00
Matthias Koefferlein
f1c7e2e8e1
Refactoring of the containers (Edges, Region, EdgePairs, Texts): size -> count, added hier_count. Added SRegion for shape iterator as generic polygonizable things
2020-10-11 17:51:54 +02:00
Matthias Koefferlein
737e12d6a4
Added GSI tests.
2020-09-22 18:36:40 +02:00
Matthias Koefferlein
a81cc3cacf
Merge branch 'master' of https://github.com/KLayout/klayout into drc-enhancements
2020-09-19 21:10:32 +02:00
Matthias Koefferlein
161d13ad3a
Qt4 compatibility of one test.
2020-09-14 22:06:16 +02:00
Matthias Koefferlein
ce9c7e848a
Merge branch 'master' into drc-enhancements
2020-09-14 20:52:02 +02:00
Matthias Köfferlein
8f35c9b486
Merge pull request #632 from KLayout/gsi-enhancements
...
Enumerators for Ruby, "void to self" for Ruby+Python
2020-09-14 18:34:50 +02:00
Matthias Köfferlein
59ee6b6a83
Fixed #629 (timeout event of QTimer not present on Qt5) ( #631 )
...
In addition, the "destroyed" and "objectNameChanged" signals
were added (specifically to QObject).
The API binding for Qt5 was updated which adds some events.
2020-09-14 18:34:28 +02:00
Matthias Köfferlein
8cdb6187b8
Fixed issue #617 (constness problem in netlist) ( #622 )
2020-09-14 18:33:24 +02:00
Matthias Koefferlein
5608327899
Another cool one: void as C++ return value is translated to returning self for Ruby.
2020-08-31 23:44:02 +02:00
Matthias Koefferlein
4c127b4644
Ruby iterators now automatically return an Enumerator if no block is given - allows very cool code ..
2020-08-31 23:09:37 +02:00
Matthias Koefferlein
2953ad3329
Merge branch 'master' into drc-enhancements
2020-08-30 23:35:37 +02:00
Matthias Koefferlein
be26c679d8
Merge branch 'master' into lefdef-enhancments
2020-08-30 22:55:45 +02:00
Matthias Koefferlein
a5d675304c
Fixed an issue with deferred method execution in unit test context.
2020-08-30 13:06:50 +02:00
Matthias Koefferlein
eccbb9884c
Fixed an internal error happening when a librrary isn't registered and destroyed by the GC
2020-08-30 11:35:30 +02:00
Matthias Koefferlein
d762074bc0
Some refactoring, Cell#dup for convenience
2020-08-29 23:43:05 +02:00
Matthias Koefferlein
2a3fe08e7b
Provide multi-cell copy/move of shapes (GSI binding)
2020-08-29 22:49:38 +02:00
Matthias Koefferlein
a425d522cc
Added multi-cell mapping for transferring multiple cells from one layout to another while including their hierarchy without duplicating cells.
2020-08-29 10:07:17 +02:00
Matthias Koefferlein
d7fab925a0
Added an option for not reading all LEF files along with DEF files, but only selected ones.
2020-08-19 23:06:46 +02:00
Matthias Koefferlein
89745fd0de
Merge branch 'master' into lefdef-enhancments
2020-07-18 09:21:16 +02:00
Matthias Koefferlein
6aff74c844
Merge branch 'master' into issue-588
2020-07-08 23:29:27 +02:00
Matthias Köfferlein
25e3a1a4a7
Merge pull request #608 from KLayout/more-checked-netlist-operations
...
Checked add/remove methods for Netlist objects - to avoid script mist…
2020-07-07 12:52:15 -07:00
Matthias Koefferlein
8adeaaf938
Checked add/remove methods for Netlist objects - to avoid script mistakes.
2020-07-05 19:02:43 +02:00
Matthias Koefferlein
beec19951d
Candidate for fix.
2020-07-05 14:09:23 +02:00
Matthias Köfferlein
dcd0476efc
Implemented issue #598 (Cell#transform) ( #600 )
2020-07-03 23:41:09 +02:00
Matthias Köfferlein
e744eb32d1
Merge pull request #580 from KLayout/drawing-performance2
...
Drawing performance2
2020-06-28 16:14:48 +02:00
Matthias Koefferlein
03dacbd2f5
Updated testdata
2020-06-26 17:46:39 +02:00
Matthias Koefferlein
880b9904cf
WIP Netlist probing will deliver an instantiation path now.
2020-06-14 22:04:16 +02:00
Matthias Koefferlein
476c37e218
Added RBA test for Region's andnot
2020-06-14 18:14:21 +02:00
Matthias Koefferlein
5992a9b509
Merge branch 'master' into lefdef-enhancments
2020-06-05 14:05:13 +02:00
Matthias Köfferlein
852f5c438b
Implemented #560 (multiple technologies on libraries) ( #576 )
...
* First implementation.
* PORT BACK: fixed a few flaws (fixed-width side panel ..)
1. On "save as" the filename displayed in the cell view selection box
was not updated
2. The width of the library and cellview panel could not be reduced
below the width of the combo boxes in the headers. So the
panels might have become pretty wide without being able to reduce
them.
* Implemented #560 (multiple techs on libraries)
2020-06-05 10:58:53 +02:00
Matthias Köfferlein
2d0a9418f9
Implemented #579 (perimeter_only mode for antenna check) ( #582 )
...
* WIP: added basic feature and tests.
* WIP: provide tests are GSI binding of new antenna check
* Fixed issue #579 (perimeter_only mode for antenna check)
* Updated DRC doc for 'perimeter_only'
2020-06-05 10:55:07 +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
d7af7fc5c0
Merge branch 'lefdef-enhancments'
2020-06-01 13:37:45 +02:00
Matthias Koefferlein
66fe18474b
Fixed unit test.
2020-05-31 02:20:02 +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
b84a9df2da
Persisting texts now for .l2n format
2020-05-22 00:58:46 +02:00
Matthias Koefferlein
33a909a327
Added RBA tests for region to text interactions.
2020-05-15 23:57:31 +02:00
Matthias Koefferlein
58ca9b8730
Some bug fixes, added tests
2020-05-13 21:56:49 +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 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
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
b5faa7f6be
Fixed RBA tests.
2020-05-02 09:32:00 +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
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 Köfferlein
2b3a53b285
Implemented #521 (enhanced API for ObjectInstPath) ( #532 )
2020-04-05 15:11:03 +02:00
Matthias Koefferlein
2933e0b2e1
Unit tests fixed after #526 update.
2020-03-28 22:31:19 +01:00
Matthias Koefferlein
c10ccccdf7
Merge branch 'app-refactoring' into doc-args
2020-03-15 21:32:39 +01:00
Matthias Koefferlein
076206074f
Updated tests for CentOS 6
2020-02-27 23:46:02 +01:00
Matthias Koefferlein
02e38a2cd1
Merge branch 'issue-482' into issue-471
2020-02-27 15:49:35 +01:00
Matthias Koefferlein
8b73dffcfe
Implementation done. Added tests.
2020-02-27 15:40:06 +01:00
Matthias Koefferlein
3b31109367
Added GSI binding for join_symmetric_nets, added method to get circuits by name pattern.
2020-02-27 12:17:35 +01:00
Matthias Koefferlein
b35429291e
WIP: join_nets implemented, join_symmetric_nets: enhanced detection of symmetric nets.
2020-02-27 00:52:03 +01:00
Matthias Köfferlein
1992fc762a
Issue #489 (Pin names as shape properties) ( #507 )
...
* Fixed #489 (LEF/DEF reader provides pin names as properties)
* Removed vi swap file
* #489 fixed (LEF pins also get properties, added tests)
2020-02-23 00:29:12 +01:00
Matthias Koefferlein
d202989c12
Fixed Qt5 binding issue.
2020-02-22 00:56:18 +01:00
Matthias Köfferlein
946af71f2f
Fixed issue #473 (fast accessors to image pixel and mask data through… ( #503 )
...
* Fixed issue #473 (fast accessors to image pixel and mask data through arrays)
* Updated Jenkinsfile to not publish a PR build
* Updated Jenkinsfile to not publish a PR build
2020-02-21 18:38:08 +01:00
Matthias Köfferlein
69e7704430
Issue 501 ( #505 )
...
* Fixed #501 (more Qt ownership management) - this commit contains some more changes because I had to regenerate the Qt binding sources.
* Fixed #501 (Qt object ownership transfer) - repairs, added tests
* Updated Jenkinsfile to not publish a PR build
* Update Jenkinsfile - exclude PR's from build
2020-02-21 18:25:22 +01:00
Matthias Koefferlein
7913e7cf82
Added unit tests.
2020-02-19 01:06:39 +01:00
Matthias Köfferlein
80b0eae937
Merge pull request #469 from KLayout/issue-464
...
Fixed #464 (problems building a layer node tree with 'add_child')
2020-01-05 01:03:29 +01:00
Matthias Köfferlein
db1d05282d
Merge pull request #467 from KLayout/issue-466
...
Issue 466
2020-01-05 01:03:10 +01:00
Matthias Koefferlein
b8c82c4f8b
Updated copyright notice to 2020
2020-01-05 00:59:43 +01:00
Matthias Koefferlein
0285a5195c
Fixed #464 (problems building a layer node tree with 'add_child')
...
The reason was a synchronization issue.
Actually "LayerPropertiesNodeRef" is not a reference, but
a mirror copy of the LayerPropertiesNode the reference points
to. Changes to the original must be synchronized into the
reference and back.
This concept is a tribute to the original implementation and
the node reference was a convenience add-on to the iterator-
based API.
Better solution in general is to replace the LayerPropertiesNodeRef
concept with a real reference.
2020-01-04 19:39:09 +01:00
Matthias Koefferlein
aa268d3768
Updated unit test.
2020-01-04 12:38:06 +01:00
Matthias Koefferlein
09f97aa286
Fixed #466 (Segfault when accessing a wrong layer tab)
2020-01-04 12:33:14 +01:00
Matthias Koefferlein
6a47437702
Updated test data.
2019-12-18 17:28:46 +01:00
Matthias Koefferlein
a05345945d
Updated test data
2019-12-15 09:46:40 +01:00
Matthias Koefferlein
c214021618
Fixed #440 (issue with LayoutView#each_annotation_selected)
2019-12-07 21:51:10 +01:00
Matthias Köfferlein
2fa545d80b
Merge pull request #435 from KLayout/issue-429
...
Issue 429
2019-12-02 21:15:05 +01:00
Matthias Köfferlein
e061a0a932
Merge pull request #433 from KLayout/wip
...
Some enhancements
2019-12-02 21:14:35 +01:00
Matthias Koefferlein
baffb940d1
Implemented #429 : final touches to doc and tests for RBA/pya API.
2019-12-01 16:41:27 +01:00
Matthias Koefferlein
d5506a176a
WIP: first implementation - needs testing.
2019-11-23 01:20:22 +01:00
Matthias Koefferlein
6d8f56194b
Edge enhancements
...
New binding: Edge#d (distance vector), Edge#clipped and Edge#clipped_line.
"intersection_point" returns nil in case of no intersection.
Documentation error fixed (Edge#distance).
2019-11-17 21:30:08 +01:00
Matthias Koefferlein
d060147713
Enhancements for the netlist object properties
...
- more memory efficient (single pointer only)
- iterator for properties
- NetlistObject#property_keys in GSI
2019-11-12 23:00:49 +01:00
Matthias Koefferlein
0ce06125ca
Introducing netlist object properties.
2019-11-11 07:02:02 +01:00
Matthias Koefferlein
e25d4784ea
Updated tests.
2019-10-26 01:48:50 +02:00
Matthias Koefferlein
36ee1efe16
WIP: speedup LVS 'align' by flattening top-down
2019-10-21 22:14:36 +02:00
Matthias Koefferlein
60ed0cdc89
Updated test golden data (mainly: nets are not purged when there is a subcircuit pin on it)
2019-08-29 23:26:03 +02:00
Matthias Koefferlein
441f946f43
WIP: LVS rerun feature
2019-08-25 21:55:48 +02:00
Matthias Koefferlein
515b68b76f
WIP: provide a recipe registration facility for LVS rerun
2019-08-25 18:03:27 +02:00
Matthias Koefferlein
45cdefcf9a
Provide strict mode for device classes, dmos3/dmos4 for LVS
2019-08-20 23:12:17 +02:00
Matthias Köfferlein
16ae0346b8
Merge pull request #314 from KLayout/vars-for-queries
...
Vars for queries
2019-08-18 17:31:11 +02:00
Matthias Koefferlein
9c3f70342b
key bindings and menu items visibility string packing/unpacking for scripts
...
New convenience functions are provided which simplify
manipulation of key bindings and menu item visibility
configuration strings. AbstractMenu#pack_key_binding
and AbstractMenu#unpack_key_binding turn a path/key
map into a single string and back. The string format
is the same than for the key-binding configuration key.
The same is provided for the menu item visibilily
with AbstractMenu#pack_menu_item_visible and
Abstract#unpack_menu_item_visible.
2019-08-17 19:54:18 +02:00
Matthias Koefferlein
3514fad64a
Test for local variables in LQ
2019-07-28 01:38:37 +02:00
Matthias Koefferlein
49c1bacb98
Introducing variables for layout queries:
...
1.) The ExpressionContext class is a mapping of tl::Eval
and allows providing a variable context for the LQ.
Expression class is derived from ExpressionContext now.
2.) The variable lookup has been changed so that variables
can be modified even if they come from a parent context.
3.) LayoutQuery and iterator has been given an argument to
supply the context
2019-07-28 01:33:30 +02:00
Matthias Koefferlein
71f646c24f
WIP: updated test data for latest updates, don't sort LVSDB on reading for consistency
2019-07-27 21:42:51 +02:00
Matthias Koefferlein
df7195b81f
Compatibility with ruby 1.8, force garbage cleanup for LVS/DRC and tests.
2019-07-21 10:23:08 +02:00
Matthias Köfferlein
f82e7929d8
Fixed a conversion issue with ints on MSVC
...
Because long is 32bit on Windows (like int), the
conversion from long to unsigned int was subject
to sign overflow. This was fixed by going to
unsigned int via unsigned long.
2019-07-20 00:28:32 +02:00
Matthias Koefferlein
0215d05a12
Fixed unit tests.
2019-07-19 00:02:05 +02:00
Matthias Köfferlein
7fc907cf7e
Fixed a segfault from the testsuite
2019-07-16 23:17:29 +02:00
matthias
89ce2be5c2
Merge remote-tracking branch 'origin/master' into dvb
2019-07-14 01:28:11 +02:00
matthias
8b17a4da4f
A few utility functions
...
Polygon#is_rectilinear?, Polygon#is_empty?
and same for SimplePolygon
2019-07-13 22:45:22 +02:00
Matthias Koefferlein
2d57a11f8c
Fixed #287 (RecursiveShapeIterator to ObjectInstPath)
...
There is a new constructor for ObjectInstPath to
create one from a RecursiveShapeIterator.
2019-07-12 23:13:50 +02:00
Matthias Koefferlein
a9e1af0a1b
Updated tests
2019-07-12 20:06:35 +02:00
Matthias Koefferlein
c7e883cdb2
SPICE reader now assigned net names as pin names.
2019-07-12 19:00:27 +02:00
Matthias Koefferlein
ca6d05d3c1
Updated tests
2019-07-12 00:22:45 +02:00
Matthias Koefferlein
cef96902ad
Boundary for circuits, reverted automatic generation of global pins
...
- global pins have been generated for device cells too and lead
to implicit pins which may not be desired. The original problem
was how to make abstract circuits comparable. This has to be
solved differently.
- Circuit boundaries are good for displaying the boxes for
abstract circuits
2019-07-09 19:55:48 +02:00
Matthias Koefferlein
95a1e38fe3
WIP: better reproducablility for .lvsdb layer names, updated tests.
2019-07-07 19:39:00 +02:00
Matthias Koefferlein
5ce8dd2684
WIP: added circuit blankout.
2019-07-06 19:50:20 +02:00
Matthias Koefferlein
71777670de
Fixed unit tests.
2019-07-04 01:24:19 +02:00
Matthias Koefferlein
ef1441e546
WIP: fixed unit tests.
2019-06-28 17:08:04 +02:00
Matthias Koefferlein
717e7ca0ab
WIP: Fixed Spice reader/writer delegate, tests.
2019-06-23 00:08:49 +02:00
Matthias Koefferlein
a1a0b62a10
WIP: doc fixes, added Netlist::simplify as convenience method
2019-06-22 22:18:55 +02:00
Matthias Koefferlein
621c3f74ed
WIP: reader delegate - GSI binding, tests.
2019-06-22 22:03:32 +02:00
Matthias Koefferlein
46dafd50ea
WIP: unit tests updated
2019-06-22 10:15:32 +02:00
Matthias Koefferlein
a4d2be7fbf
Merge remote-tracking branch 'origin/master' into dvb
2019-06-19 23:14:27 +02:00
Matthias Koefferlein
56c622053f
Fixed #276 (Layer properties name cannot be updated)
...
In addition, this fix includes Python-related fixes: because
of the short lifetime of Python references, the functionality
was not as expected sometimes. Keeping copies of LayerPropertiesIterators
helped. Some tweaks were required to maintain the delete() semantics.
2019-06-16 21:42:07 +02:00
Matthias Koefferlein
0794290fb5
WIP: added RBA basic tests for device extractors.
2019-06-15 21:48:02 +02:00
Matthias Koefferlein
a91c3d3a4e
WIP: fixed BJT4 class, added RBA tests for new device classes.
2019-06-15 21:11:15 +02:00
Matthias Koefferlein
c717eb1efa
WIP: fixed RBA unit tests.
2019-06-15 00:01:40 +02:00