Hi,
I had a look at that problem and I can confirm the runtimes.
The reason seems to be the PCell cache which grows due to many PCell instances with different texts. It's not optimized for a huge number of variants and I will try to solve that iss…
Hi rellachs,
This forum supports Markdown formatting - see http://daringfireball.net/projects/markdown/syntax for details about the syntax.
Regarding the issues with Python:
First of all, KLayout integrates Python which is something different fro…
Hi,
I think the main problem is the big chunk of code you will generate in this setup.
I don't know precisely the variables in your scheme, so I can only guess what the Excel sheet will do. But I'd suggest to put as much computation in the script …
Hi tyanata,
that is not a menu function. It's a PCell. PCells are placed like ordinary cells (choose BASIC library and cell TEXT when placing that cell). You can configure the text and the parameters on the "PCell" tab of the cell instanc…
Hi,
the solution depends in the system you are working with:
On Linux: just install the numpy package. Done.
On Windows:
* The evaluation binary is built against Python 3.4.2 with Visual Studio Express 2010. Fortunately that is a pretty common c…
Hi,
There is not straightforward "cut" function, but you can use "erase" background combination mode to draw a thin line across your shape. This line will then be subtracted from your shape basically creating two separate parts.…
Hi Laurent,
you're right - my mistake.
You could also apply the idea of using the edge versions without the shielding and without the interacting:
M1.space(0.23,euclidian).output("M1_space", "Min. Metal1 spacing : 0.23um")Mbig…
Hi ks,
the path to polygon conversion using the points is just half the truth. Emulating what the DXF reader does is far more complex - the issues are hole resolution, orientation normalization and such.
Here is a script which basically does what …
No, there is no such feature. And I don't know anybody who needs it, apart from the DXF users. And for them there is the reader option.
Give me a thousand "likes" and I'll be motivated enough to implement it ...
Matthias
Hi Laurent,
The separation won't work because of shielding. "Shielding" means that the measurement functions won't look through objects in the path of the distance measurement. Shielding is only effective for polygon layers and in your ca…
Hi tyanata,
you mean a text generator?
Maybe you want to have a look into the TEXT PCell - this one generates a text. It does not precisely have the parameters you as for, but it features a bias option which allows to adjust the final line width t…
Hi,
one way to solve the problem, thanks :-)
To convert a path or box to a polygon, you can use "Edit/Selection/Merge Shapes". The main functionality of that function is to join overlapping shapes into one polygon. But a side effect is t…
Hi rellachs,
There is a tiny switch which makes a big difference for you: if you check "Select Top Level Objects" in the "View" menu, you'll notice that the tool behaves rather differently.
Let me explain: if you have cells and…
Hello,
yes, surely. The sample is just a demo. "ly" is the layout object and instead of using a fresh one you can use the currently loaded one:
cv = RBA::CellView::actively = cv.layout top = cv.cell...
Matthias
Hi Ben,
your approach is valid, but true hierarchical processing is a fairly complex topic and in general cannot be solved efficiently while maintaining the hierarchy.
you approach will work in certain configurations but you will not be able to co…
Hi Yulia,
there is no immediate way, but you can script something:
report("My DRC")# inject a new method into the layer class:# layer.limit(n) will reduce the number of elements# in the data to a maximum of nclass DRC::DRCLayer def limi…
Hi Illia,
That means you have really big structures and KLayout runs out of memory.
I guess that on a 32bit installation, KLayout will be able to handle structures as big as several 10M equivalent of rectangles. If you want to go further, you'll h…
Hi Illia,
Such a function is not available, at least not directly.
But it can be scripted.
Here is a script which employs area and perimeter to approximate a length measure. It is precise for "thin" wires:
# Computes the path length of…
Hi Tom,
I have added a "buried" feature to XSection's grow function. Please see https://sourceforge.net/p/xsectionklayout/wiki/DocGrow/#wzxhzdk64buriedwzxhzdk65-applies-a-conversion-in-a-region-below-the-surface for details.
Let me know …
Hi Tom,
by coincidence I got the same request today by somebody else. Unless you're the same person, this qualifies a new feature :-)
There does not seem to be a simple solution but it should be possible to implement some feature that can provide …
Hi Paul,
I can reproduce it and I'm quite concerned that such a simple thing is not working. It happens only on the right side. Apparently I have tested too much on the left side.
I'll fix that in the next minor release. As a workaround you may us…
Hi Paul,
thanks for your ASCII art :-)
The forum version I am using is too old to support image attachments, and migration is some effort, so I postponed that activity.
You can embed images from external sources in your post using markdown. For n…
I see ... by "run in command line" you mean "shell", not KLayout's command line ...
Here it is:
# run with # klayout -b -rd file1=a.gds -rd file2=b.gds -rd out=a+b.gds -r merge.rbputs "Reading #{$file1} .."ly1 = RBA…
Hi,
creating PCell instances inside PCell's is not beginners level ... that is actually quite advanced.
First of all, KLayout was not designed with PCell placement automation in mind. First goal was to provide parametrized cells for the layouter.
…
Finally! I provided a preview release for the Python support feature. It required some stabilization and I had some tough time building it on Windows. A full rebuild is now taking a whole night - bug fixing is tedious with such slow turnaround times…
No tricks, just go to the configuration page and increase the number of shapes :-)
You can go up to a million without a real performance issue. But once you have really bit nets with many million shapes, the application gets sluggish, if you don't …
Hi,
if you build KLayout on Linux, you will see several tiny executables which do this (strm2gds, strm2gdstxt). They don't have a lot of parameters and they are used for testing mainly.
"Tiny" is not the right term here ... in fact they …
Hi,
you mean manually trace an image?
You can create a layout and add an image to the view. That feature was intended to be used for overlaying microscope images over layout, but you can use it to draw layout along features of the image.
You can …