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
No, it's on the master branch, but not in 0.27.12 as the change to too extensive.
I head for 0.28 release but there are still some things pending.
Matthias
Right now I'm not prepared for separate packages in terms of deployment, but this change makes sense at least for 0.28.
But honestly, is there much use for the Python package at all now that PyPI got it's own klayout package?
Matthias
I could fix it for you but then the comment does not make sense :)
But I also don't see a problem. Some weird encoding issue or "alternative" backticks on mobile browsers? No idea ...
Matthias
Cool solution :)
I could not find a gf2gds program on the net.
But here is a small piece of code turning an image into a layout:
# Prepare a layoutly = pya.Layout()l1 = ly.layer(1, 0)top = ly.create_cell("TOP")# Load the image and conve…
Thanks for the explanation. But honestly such a feature can be scripted by yourself for your specific purpose. I think it is a bit too specialized to be considered a generic feature request.
Matthias
Well ... there definitely is a demand for RC extraction. FastCap/FastHenry is an option. However, users ask for fast-and-simple solutions as of now.
I am looking for information about basic algorithms and approaches for implementing such a feature …
Hi Maxim,
OASIS file size reduction is first achieved by a more compact data representation, but mainly by the ability to aggregate identical shapes and instances into what is called repetitions. The last feature results in a dramatic file size red…
Hi Mikhail,
thank you for that explanation. This is already very useful.
The valuable piece of information is the description of the rule. That makes sense physically (likelihood of defects increased with run length, lithography will have more tro…
@sebastian Code rendering needs lines with three backticks only. Like this:
(Image)
And thanks for the discussion. The RecursiveShapeIterator is the right approach.
If you want to just read the shapes, you do not need to collect them in a Region…
Hi Jim,
regarding the translation here is the list of compatibility constraints. I consider OASIS to GDS a pretty safe path. In practical applications, the polygon size limitation of GDS is noteworthy, but most tools support polygon splitting in th…
One way to achieving this is the following transformation (here: 90 degree counterclockwise):
tlcdtrans = RBA::Trans::new(RBA::Trans::R90, RBA::Vector::new(tlcdox, tlcdoy))
or short:
tlcdtrans = RBA::Trans::new(RBA::Trans::R90, tlcdox, tlcdoy)
M…
Hello,
you do not need to use DEF Import - this feature will be removed soon.
Instead, just load the DEF file from File/Open.
You can manage reader options for a specific technology using Tools/Manage Technologies -> Reader Options page. There…
Hi,
That is not correct. "-nn" works independently from the format. You can use the "-nn" option with DEF too. Maybe there is an issue with the layer mapping that prevents you from seeing the desired result. DEF is a bit tricky …
Maybe you do not need to build yourself ... I have merged this patch two days ago: https://github.com/KLayout/klayout/issues/1138
So there is a way to suppress DXF (or in general) reader warnings now (0.28).
Matthias
Hi Jim,
OASIS is quite compatible to GDS, so there is basically no loss. There are some minor differences - for example paths with an odd-number of database units width cannot be represented in OASIS. Also round-ended paths. But those are an exotic…
No worries - discussion is moved.
Regarding your question: the problem is that enclosing is not measuring. The goal is first of all to flag locations where a minimum condition is not met.
However, the results of that operation is a so-called edge …
No, sorry. I have not seen that problem myself.
But you can try wiping the configuration by removing or renaming KLayout's home folder (~/.klayout/klayoutrc on Linux or c:\users\yourself\KLayout\klayoutrc on Windows). Sometimes, these files are bro…
For building the wheel, you usually simply have to use
python3 setup.py bdist_wheel
But you will find wheels for Windows in the artefact section of the Azure CI pipeline for example here : https://dev.azure.com/klayout/klayout/_build/results?build…
There is such a feature already. Simply click into the cell list and start typing :)
If you have bound keys to certain function, you may not want to trigger those. Hence you can type a slash ("/") to enter the search box.
Wildcards can b…
The LVS deck from the example does not include the device combination step. You can add this by using
netlist.combine_devices
before "compare". This is basically the idea that @dick_freebird mentioned in the last post: this is the "…
An easy way to remove empty cells is to save with empty cells disabled:
opt = pya.SaveLayoutOptions()opt.no_empty_cells = Truely.write("layout.gds", opt)
If you want to do that explicitly, why not using "is_empty" on the Cell?
…
Hi @BarDesigner and @dick_freebird,
The MOS3 device is suitable only for specific geometries which are resembling a planar MOS transistor:
(Image)
(https://www.klayout.de/doc-qt5/manual/lvs_device_extractors.html).
So there must be some drain a…
You should be super careful to not simply duplicate concepts from SVRF. They may be patented features and SVRF is protected by the NDA clause you have signed together with the Calibre license agreement. I personally will not commit to anything that …
Not currently. Certain flavors of OASIS (strict mode) basically allow seeking to specific cells and allow collecting cells and their sub-hierarchy without need for loading the whole layout. I have not implemented this option yet however.
Matthias