Hi Dai,
It allows you to do "something" with each object (data structure) on that layer, for instance if you want to extract only the squares of a layer to a new layer:
Layer01 = input(1,0)
Layer02 = polygon_layer # new empty layer
La…
Hi Matthias,
I tried to test it. I had to leave out <<"SCRIPT" and SCRIPT to make the script run (???). The marker browser results are shown in the screenshot below. I would have expected 40um overlapping boxes instead of 30um touch…
Hi Matthias,
This is cool! Can it be adapted for overlapping tiles, let's say you want to check the density in 30um tiles which overlaps 5um with neighboring tiles. I tried with "tile_border" but no idea how to reflect it in tp.queue:
de…
Hi Matthias,
Thanks for the suggestion, it works like a charm!!! I still got a lot to learn... :-O
I'm now looking into these mode parameters TD_htrapezoids, TD_simple, TD_vtrapezoids:
1) decompose_trapezoids_to_region(TD_htrapezoids) -> …
I've been using the "Compute the bounding box of a cell" script of the "Useful Ruby Modules" section for a long time now. Nice to have it as a menu entry if you have to check it frequently... Code is in the link below...
https:/…
Hi Hossein,
The code below will generate the labels in a new cell called "ALL_LABELS". The size of the text is defined by the "magnification" variable.
Cheers,
Tomas
module MyMacro include RBA# User input -------------------…
Hi Matthias,
Thanks for the info! Works like a charm now. :-)
Would you advise to update "old" (but still working) code (for instance made before DCellInstArray was introduced)?
Kind regards,
Tomas
Hi Matthias,
Thank you for the code above. I'm struggling now to set the "path" parameter:
1) param = { "layer" => RBA::LayerInfo::new(4, 0), "radius" => 0.2, "npoints" => 16 }
This works fine but …
Hi Matthias,
Thanks for the tip, could not edit, so re-post below...
module MyMacro# Puts selected shapes (boxes, polygons and paths) and instances (origin and array parameters on a user-defined grid.# This function is NOT recursive. include RBA…
Hi Jim,
A long time ago I made the example below when working my way into Ruby and scripting. The code is most likely not the "cleanest" but it works for me. Note that it is not recursive and the vectors of instance arrays are also put on…
Hi,
To add missing layers after loading a lyp file, press the right mouse button in the layer window and select "Add Other Layer Entries". Once added, you can rename them and save to the same or another lyp file.
Cheers,
Tomas
Hi Matthias,
The code above of December 2009 worked fine for the previous version of KLayout I was using (don't remember which one), but for version 0.25.8., the generated gds structures are scaled by 1/DBU compared to the image. I removed the /DBU…
Hi Matthias,
Thanks for the fast reply. Good to know, I missed that information. It can be achieved by doing two sizing iterations, i.e. oversize in x first and then undersize in y, or vice versa.
Cheers,
Tomas
Hi Ile,
I don't know anything about the XSection code. I'm just using it and wanted to check if it still works as I just recently upgraded to 25.8 myself and didn't use the script for a while. I'm using an older version of the script (attached), ma…
It seems related to the PCell representation within KLayout gds files...
Can you try "Save As" and unbox the "Cell context" option (Store PCell and library context information (format specific)???
Do not overwrite the original gd…
Hi Matthias,
I also don't agree with the message Cadence created... ;-)
I've got only access to version IC6.1.6...
I didn't sent/refer to any test case, I just quickly drew an orthogonal, a non-orthogonal 5x5 array and a 1x1 array in KLayout and s…
Hi Matthias,
I did some small tests, and the Cadence version I tried does not allow non-orthogonal arrays, they are just skipped...
Warning message: ...having non-orthogonal vectors made from three points specified as (25600,0) (40600,0) (40600,1…
Hi,
Some other tools do not allow non-orthogonal instance arrays: if I remember well, Cadence will just skip them (other tools might just convert them to orthogonal arrays messing up the design)...
To be safe the row vector(x,y) x-value should alw…
Hi Matthias,
It works like a charm! I didn't know it already existed, or at least I could not find it back, but the use is similar to the ROUND_PATH Pcell which is available by default. The corners can indeed be tricky. I can think of 2 ways but bo…
Hi Matthias,
In case you would like to reproduce:
I've got a pcell library where I define a simple rectangle:
# -------------------------------------------------------------------------------
# The PCell declaration for the rectangle
cla…
Hi,
I'm not a programmer specialist in any way (never heard of Ruby before I started to use Klayout ;-) but I had similar problems (being 1 dbu off) when trying to make some code based on the scripts I found on the forum. When converting an input …