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 Frank,
sorry if I haven't mentioned this: DRC requires Ruby support because the DRC language essentially is Ruby.
If you don't have Ruby, it should be easy to install. Any package delivering a version 1.9 to 2.x should do. But you need sudo abi…
Hi all,
After looking at the screenshots I'm pretty sure the issue is the one I was suspecting above (single-instance AREF's). All cells I see - the missing bends, the labels, the missing wiggly connection pieces are such AREF's. I have not seen bi…
Hi Andy,
The Markdown version this forum uses is somewhat different from GitHub's ... please format code by using four blanks in front of the code lines.
I like your monkey-patching approach with Hash#push_val_safe ... not something for the code p…
Hi,
If I understand you correctly, you need to save to DXF to get a correct GDS file? I'd not recommend this path as DXF is not really suited for mask layout - for example, DXF is lacking drawing unit information. GDS (or OASIS) are made for this p…
Hi Perron,
the first two topics are known issues and are fixed already (0.25.1 awaits release).
You can report bug and search the issue database on GitHub: https://github.com/klayoutmatthias/klayout/issues?utf8=%E2%9C%93&q=is%3Aissue. Yours ar…
Thank for this information.
Right now, there is no Datamatrix generator - it's entirely different from QR code. I got some basic understanding from the documentation, but no detailed specification. There seems to be technical standard which is not …
Even better, it's already there: you can create a PCell for this.
Here is a first version - without the shorting yet. It will plug itself into the Basic Library. You can draw a wide path and turn it into a "Basic.SPLIT_PATH" PCell using &…
Hi,
These texts are not plain shapes, those are PCells. PCells are "parametrized cells" which are normal cells that can be configured by providing parameters and an algorithm which produces the layout for the cell. In the case of the TEXT…
Hi Rambir,
thanks for reporting this issue. The problem is that - contrary to the documentation - the cell name is not optional for "target". So you need to specify the output cell name currently.
You can further simplify the script - in…
Hi Stefan,
that's right, but *.rbm is deprecated in favour of the autorun .lym version. The effect is the same, but there are more options with .lym (for example, you can use Python).
Matthias
Hi Luciano,
you can turn the script into a "generic macro" (*.lym file) and put it into ".klayout/macros". Such scripts can be configured to auto-run on start.
This file can be created using "Macros/Macro Development"…
How should I?
I can't see what call_layer will do, neither what @cell_index really contains ... if it's an array or a hash at all.
And I don't print error messages just for fun. Don't be shy and tell me what they say.
Hi Eric,
in the DRC feature, that's a two lines
cell("Active_area") # omit this line if you simply want to use "top cell"puts input(1, 0).area
The result will be printed to the console when you run the DRC script in the Macr…
Hi Eric,
this code will take the selected shapes, right. But you mentioned you'd like to take the pattern (shapes?) from somewhere else. Where from? The whole layer? Including child cells? How do you know the layer the shapes are supposed to be tak…
Hi Hamed,
"read" on an existing layout is rather simple merge - it will read the shapes and cells from the layout file right into your existing one, adding to existing layers and cells if possible.
The database unit will simply be overwr…
Maybe the net tracer will help you - it allows tracing connections across polygons. "connections" means polygons touch over overlap.
Please see http://www.klayout.de/doc-qt4/manual/net_tracing.html.
Matthias
Hi Eric,
you mean to establish a selection of certain shapes?
If you have the shapes, you can directly run the density on these shapes rather than first selecting them and then running the computation on selected shapes.
The key to this is the Re…
Hi Hamed,
you mean a fresh layout? That's "layout.dbu". I think that this will be the DBU of the last layout loaded, if you load multiple layout files into the same layout object.
Matthias
Hi all,
yes, that's the way I'd do it too .. please note that skilled users could still do that in the macro IDE or potentially in other places. You'd not achieve total safety unless you disable these features too.
Some features that can potential…
Hi Hamed,
The recommended approach is to use the Region class:
shape = ... the input shape 1 ...shape2 = ... the input shape 2 ...region = RBA::Region::new(shape1.polygon)region2 = RBA::Region::new(shape2.polygon)region &= region2 # or which…
Hi Dion,
that should be fixed already. Please try to pull the master from GitHub: https://github.com/klayoutmatthias/klayout.
I have not confirmed 64bit coordinate support myself, but I will do so.
Thanks for reporting that issue.
Kind regards,
…
Hi Lukas,
I have fixed the issue, but I'm afraid it won't be of much help. The simple XML parser API is deployed by implementing a couple of interfaces. That's kind of tedious in Python.
An easier solution is to use the DOM API. Here is an example…
Hi all,
my scope is MSYS2. IMHO that's an equivalent solution to Anaconda. If I had infinite resources I'd support both.
In general, building shouldn't be an issue on both systems as long as you have bash and a few packages (gcc/clang, qt5, python…
Hi Paul,
did you try with the latest version (0.25)? For this version, it should be possible to load DEF like any other format.
DEF is richer, so if you want to provide particular configuration options, you'll need a separate configuration object:…
Hi Lukas,
thanks for reporting this issue. There are actually too many overloads of "parse" - I'll remove one (https://github.com/klayoutmatthias/klayout/issues/62)
Best regards,
Matthias