Hi Matthias,
Something changed for me in the behaviour of "PCell content is selectable (Caution: PCell recomputation may conflict with edits)".
Previously (up to a couple of days ago, perhaps after I reset my klayoutrc file), I operated …
Thank you David.
I confirm that undo/redo works. However, I also confirm the bug you found.
Another thing I found is that if you don't call "commit", you have a problem:
* The layout screen goes empty, and I can't see the box. The Cell…
Hi Matthias,
I implemented a netlist extraction, and posted the code on GitHub - https://github.com/lukasc-ubc/SiEPIC_EBeam_PDK
It searches for paths and ROUND_PATHs, finds out what they are connected to, and generates a Spice netlist file.
Then …
I didn't notice, but the "path" is actually a DPath object, which includes the parameter "w". So I can read this in order to write an "undo" ROUND_PATH function.
Thanks Matthias and David.
I think I figured out a way to implement the follow functionality. (updated on GitHub)
I have two hotkeys:
* W: snaps the path to the nearest pins, and uses the ROUND_PATH to make it a waveguide. Keep track of which pi…
Hi Matthias,
Re - crashing. Yes, they occur during self.register, while developing PCells. The following crash occurred after I copied and pasted a PCell in the code, renamed it, (didn't add a new register_pcell line) and ran the script.
Also, I…
Got it, but still experiencing the key binding problem.
My key bindings:
https://www.dropbox.com/s/vebf3k0vxvzoods/Screenshot%202015-11-13%2003.38.01.png?dl=0
Same problem. When I push "x" or Shift "x", nothing happens. Same …
Thank you.
The latest version on klayout.de is 0.24.2, and your Dropbox link is 5 days old:
https://www.dropbox.com/s/73v7uelklbcjvr8/klayout-0.24.3-MacOSX-Yosemite-1-Qt487mp.dmg.bz2?dl=0
I downloaded this, and confirm that the DRC is fixed!
How…
Thanks Kazzz!
Here's another minor "bug".
The Key Bindings don't seem to work for the toolbar objects. For example, edit_mode.mode_menu.instance, Instance – setting this to "i", and pressing "i" doesn't do anything. …
How do you get the width of the path from the ROUND_PATH PCell?
Here is the list returned for the PCell:
* def PCell_get_parameter_list ( ROUND_PATH, Basic):
* Name: layer, TypeList, unit: , default: None, description: Layer.
* Name: radius, T…
It seems like I can just scale the values returned by the PCell "ROUND_PATH"
DPath = subcell.pcell_parameters_by_name()["path"]*(1/dbu) # DPath object
and get it back to dbu rather than microns...
Thanks Matthias. My main objective was to understand how to call the layout generation function from PCells in general (including my own). I agree that the circle is simple so make more sense to code in yourself.
Yes, the ROUND_PATH functionality…
1) In the above example, the code isn't quite right. It should be cell.flatten(True). It flattens everything under cell, namely the fake text_cell. But...
I notice that all the flatten functions you have flatten all the contents of the cell, but…
One more attempt to fix this, using coerce_parameters. The documentation states that "The reimplementation may modify the parameters in a way that they are usable for the produce method", so I hoped it would fix the parameters...
pcell_d…
Hi Matthias,
I am able to get the create_cell and cell.insert approach for PCell instantiation to work on:
* my PCell (based on your example, Circle),
* Basic.TEXT
* Basic.ROUND_PATH
But it doesn't work for:
* Basic.CIRCLE
* Basic.DONUT
Specifi…
Hello Matthias,
I notice that the GUIDING_SHAPES layer is always black, and doesn't show up in the Layers palette. Is there any way to add it there, so we can toggle visibility, select-ability, color, stippled, etc?
I noticed that the ROUND_PATH expects a DPath object instead of Path. And also I had to take out the dbu part (looks like the path units are in microns already)
So I tried that instead:
a1 = []for p in points: a1.append (pya.DPoint(p[0], p[1]))w…
I ended up creating the following function, and calling it from a PCell:
def layout_pgtext(cell, layer, x, y, text, mag): # example usage: # cell = pya.Application.instance().main_window().current_view().active_cellview().cell # layout_pgt…
I have the basics working, namely using a function to create the layout within a PCell. I also got the polygon text working, however I have a concern about the "fake PCell" trick. Doesn't that just create a new cell each time the PCell c…
Hi Matthias,
I also have an interest in this.
Since we are using Paths for both electrical connections, and for optical waveguides (using Convert to PCell | Basic.ROUND_PATH functionality), I wonder if something could be done by simply reading d…
Hi Matthias,
The problem still exists in the the latest binary on OSX, 0.24.2. I know some of my students were able to get it to work (presumably on Windows).
Here's the crash report. Though now the app doesn't close, but rather brings up useful…
Here is a video showing the crash with a simple test case (a single rectangle). Also shown is a screenshot of the "Console".
https://www.dropbox.com/s/ye7yzkw55y3l9ol/klayout_DRC_crash.mp4?dl=0
The layer properties file used (I checke…