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 John,
does winexe allow running windows GUI applications? It looks like the application cannot find a screen. Windows is not like Linux and cannot send the screen to your client from a remote host. And you should not use "-e", if you j…
Hi Steven,
ver good :-)
I wonder why Google won't find it - the RDB description is properly linked from the main page: https://www.klayout.de/rdb_format.html.
Best regards,
Matthias
Hi Itamar,
one way to overcome firewall constraints is to set up an internal replica of the package index server plus a source for the packages themselves. It's easy if you're able to set up a Subversion server inside your closed network.
You can …
Hi,
I'm still unsure whether you need to window. So I'd still recommend batch mode (see my first reply).
What's exactly the thing you want to give to your users? I window that pops up and shows the layout with the DRC results?
Matthias
Hi Daniel,
sorry, I noticed your message just now.
The procedure is basically the same as for text. But the parameters you need to set are different ones:
* text (string) for the text to show
* layer (LayerInfo) for the layer to place the QR code…
Hi Andy,
I can help if I see the actual code - specifically where the layout object comes from.
And you can use markdown for the code - just place triple backticks before and after the code.
Matthias
Hi Erwin,
Thanks for the feedback :-)
Regarding Windows: did you install the 3rd party package?
The Python module does not come with all the necessary 3rd party libraries such as pthread, zlib etc. Honestly, I don't know how to package them with …
Hi Juras,
KLayout basically has built-in support for such an idea.
If you put macros below the tech folder, macros put there will be associated with that technology and be shown only if the technology is the active one.
The directory structure be…
Hi Thomas,
in order to so, you had to put the process of computing the xsection into a thread. That's difficult for numerous reasons, so I'd not spend too much time thinking about this.
Matthias
@garry: Here is a sample script using the TilingProcessor for density computation. It employs an Image object to store the density values:
import pyapixel_size = 10threads = 4ly = pya.CellView.active().layout()# takes density from layer 100li = ly.…
Hi Sunil,
hard to say .. that may be the case (and often is), but the message you get indicates that some mixing happens (i.e. plugins may be pulled from a different installation that the host installation happened on).
Building and deployment on …
Hi Sunil,
You mean Linux I assume. Linux resolves libraries depending on the built-in RPATH or the LD_LIBRARY_PATH variable or predefined locations. Try setting LD_LIBRARY_PATH to the place where you keep the 4.8.3 libs.
That's not the preferred w…
Hi all,
thanks for this lively discussion :-)
The marker browser is exactly build for this purpose. If you're able to format the list of coordinates in it's XML format, you're done. It's also possible to fill a marker database using a script and s…
Hi,
you can do this easily in a DRC script. See here for details: https://www.klayout.de/doc-qt4/manual/drc.html.
As sample script is:
# NOT between 11 and 17, store the result in 100a = input(11, 0)b = input(17, 0)(a - b).output(100, 0)
Matthias
Hi,
there is the "Fill tool" in "Edit/Utilities/Fill Tool". However, this tool requires a fill cell to be drawn separately and then used to fill (tile) a selected region. You can chose "Selected Shapes" for the Fill Ar…
Hi Dirk,
you can choose what to select in "Edit/Select": there are some tick marks next to the items you can select. If you remove the ticks from "Instances" these do not get selected anymore.
Matthias
Hi Eric,
if you save the result as "A.gds", won't this give the results you want?
An example for "copy_tree" can be found here: https://www.klayout.de/forum/discussion/comment/2279#Comment_2279 in the final post of mine.
Matth…
Hi tok,
thanks for considering sharing your work!
However, you cannot tell Salt about this currently. But you can document this dependency of course.
An automated option (I have not tried myself) to take care of this is using an autorun script in…
Hi Thomas,
thanks for your attempts.
For avoiding KLayout to take the current technology, you can try using
cv = app.main_window.create_layout("", 1)
in line 994 (original code). "" is the default technology. But it can still…
Hi,
the code is very difficult to read. Please use triple backticks before the first and after the last line to format source code (Markdown markup).
What exactly did you modify?
I basically think it does not have to be that complicated. XS can l…
Hi Eric,
there are different solutions to this problem. The main question is whether the hierarchy needs to be maintained (a bit more difficult) or it's allowed to flatten the hierarchy (easy).
The first method works with "Cell#copy_tree"…
Hi Thomas,
are you sure?
LayerPropertiesNodeRef is finally derived from LayerProperties and this one has "cellview" which gives an int.
What version are you using?
Matthias
Hi Garry,
Thank you for your inputs.
Eventually the best method probably depends on the nature of the layout and the pixel size. The most efficient method should be the tiling processor which provides an engine for doing operations on a regular ti…
Hi,
you can chose among different options when you use the marker browser (that's the "context"). Push the "Configure" button to edit the options. I guess if you choose "current cell" it won't switch the cell.
I agree…
Hi Itamar,
Qt comes with certain image reader plugins and I assume the issue is related to this. 0.25 is built using the gcc/MSYS2 combination and maybe the TIFF plugin is broken (or more sensitive). For 0.26 I can basically switch to MSVC 2017, bu…
In Python, it has to be "ta.move_tree(layoutA.top_cell())" (note the round brackets after top_cell).
To create a hierarchy to cells, create instances (not tested):
very_top = layout.create_cell("very_top")ta = layout.create_cel…
Hi,
KLayout also accepts backslashes for file paths, but when you enter them in a script, you have to be careful to use a double-backslash, as Ruby uses it as escape character in double-quoted strings.
Like
report("My DRC", "c:\\us…