Hi Jim,
you can use master or any other branch, but without warranty.
The usual approach (and the one favoured by GitHub) is: features are developed in branches. When they are considered stable enough they are integrated into the master (pull request). Hence the master is kind of "latest greatest", but with a certain risk of being spoiled. There are also forks from other user with their own masters and branches. Don't confuse them with the ones from the KLayout project.
But eventually, when the master is considered to have a sufficient quality, a release is made by creating a release tag (https://github.com/KLayout/klayout/releases). A release is a snapshot which is then turned into Windows binaries, Linux packages, PyPI wheels etc. This this is a lengthy process and I don't want to do this too often.
Matthias
Hi Nakul,
The method is "not_inside". Enclosing is a distance check. For details see here: https://www.klayout.de/doc-qt5/about/drc_ref_layer.html#h2-1801
Matthias
What do you mean? Using Linux with a better libpng?
Or do you mean the rasterizer. If you're familiar with C++ you can take a look here: https://github.com/KLayout/klayout/blob/master/src/db/db/dbPolygonTools.h (function "rasterize"). But…
Apple is difficult to support for me as it development is bound to (expensive) Apple hardware. Travis used to offer continuous integration support for Apple, but they dropped their generous Open Source support. So there is little support I can give …
I found this old post regarding that topic: https://www.klayout.de/forum/discussion/comment/2279#Comment_2279
The key method is "Cell#copy_tree".
Matthias
@Nakulh My general concen is a quality one, because the images are intended for display. So one pixel more or less is not much of a concern on a screen while it is on a mask. Pixels may also be shifted. Drawing speed is more important for screen dis…
The syntax is "V34 - CAPM". And you have to put it into a symbol. So you can define a symbol, .e.g.
V34_OUTSIDE_CAPM = V34 - CAPM
And use that for V34 between M3 and M4.
Please see here for details: https://www.klayout.de/doc-qt5/about/…
For an example how to do that see here: https://www.klayout.de/forum/discussion/comment/5948#Comment_5948
I cannot stop emphasizing that a PCell is just a very complicated way to call a function which generates layout. Unless you have a good reason…
The script line worked for me. Please make sure you are adjusting the box coordinates accordingly.
The PNG writer is a system-supplied one. I can't overcome it's limitations.
The forum links have change slightly. The discussion #167 link is: https…
In order to see the "cancel effect" you have to check the return value of "dialog.exec". It is an integer and equal to 0 if you pressed "Cancel" and 1 if you pressed "Ok".
And thanks for the note about the &q…
Well, the code is a bit weird.
"input" is probably not pointing to the layer you want to have.
Simply use:
input = ly.find_layer(85, 0)if input is None: ... layer not found ..
The search loop isnt' correct. Layer indexes (or rather ID…
Thanks again for the testcase.
First of all, the crash is probably due to an unchecked cell index value. I admit that could be somewhat safer, but that's an effect of the lean data structures in layout objects. Anyway I'll put better error checking…
In case you go for the "dominant via" solution and to provide an educational example for a custom device extractor, here is a solution.
The basic problem is that KLayout does not offer a "vertical resistor" by default, but we ca…
Please read the log:
/x86_64-suse-linux/bin/ld: warning: libpython3.7m.so.1.0, needed by /nfs/pdx/disks/ad_fdk_fill/tools/klayout-0.27.4/build-release/buddies/src/strm2cif/../../../libklayout_pya.so, not found (try using -rpath or -rpath-link)
Loo…
@ravn Is it possible to supply a complete sample?
I don't see any obvious mistake in your code. But I would like to debug the issue. I noticed some crashes on Windows and as the Windows build uses Ruby 3, I suspect there is something different with…
@alexlpn Sorry, I don't fully understand. You say you're changing a script in a text editor separately and then expect KLayout to load it somehow?
This will not work for a variety of reasons. The main reason is that KLayout embeds a Python and Ruby…
It's process_cell.shapes(layer_index) (not "layer_info").
But the script is weird. It's very complex - e.g. LayoutView is not a LayoutView, process_cell is simply RBA::Application::instance.main_window.current_view.active_cellview.cell, t…
@anatolyb So you didn't mention that you are looking for the resistance of a periodic via chain. This is a typical yield or reliability test structure, not a resistor you would usually use in a design.
First of all you need a way to tell wiring fro…
@yangwoo It actually is too narrow there! Why would you like the check to cheat here?
If for example printability is an issue, it will (except under anisotropic exposure conditions) not make a difference between slanted or non-slanted configuration…
@francistian I do not know what happens inside the nazca module. It's not maintained by me. If it internally uses a floating point representation and move is a transformation in floating point space, @dick_freebird is correct with his analysis.
May…
@francistian Yes, there is.
KLayout borrows the "database unit" concept from GDS2 and similar other formats. This means that all coordinates are represented as integer multiples of the database unit. Typically, the database unit is 1nm wh…
Hi Scott,
If you want to persist single cells in a database, maybe a blob with the cell in a standard format like GDSII is a better choice than decomposing the cell into objects and mapping them to a database table.
For simplicity you could even c…
I'm sorry, I don't maintain this script. And I cannot guess which is the patch you applied and how you did that.
If it is useful, please create a project somewhere (GitHub if you like) and put the script there. This is a basis for debugging and fur…