Matthias

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

About

Username
Matthias
Joined
Visits
1,521
Last Active
Roles
Member

Comments

  • Hi Jim, you actually don't need to go back - just click at vertex 1 to start drawing, click at vertex 2 and then double-click at the third vertex. This will finish the triangle. The closing line will be indicated as a dotted line while you move the…
  • Hi Jim, Thanks a lot for sharing this! I think to add docx you would need to zip it. The forum software blocks every format it considers harmful or does not know about. Best regards, Matthias
  • Ok ... simple question but long answer :-) I think the old version was something like 0.24.x. Version 0.25 got a more consistent coordinate space system and some methods were deprecated (specifically "transformed_cplx"). That is the reaso…
  • Hi, KLayout comes with "buddy tools". Those are simple binaries that perform a single task. Yours is "strm2gds" which turns any known format into GDS. Use it like "strm2gds input.gdstxt output.gds". Unfortunately in t…
  • You're running the script in batch mode, are you? I assume you don't want to overwrite the original file (this is bad style IMHO), but you want to add a layer to the original file rather than producing new layers only. There is a trick to do this:…
  • If you want to try: I have uploaded the output of the above run here: https://www.klayout.org/downloads/etc/klayout-0.26-fedora30.tar.gz It's not a RPM, but the binaries produced for version 0.26. You might be able to run them when you set LD_LIBRA…
  • Hi Jim, that's unfortunately a legal issue. Calibre's ruledecks are written in SVRF which is a format copyrighted by Mentor. It's strictly protected, so parsing it from open source tools is not possible. I wonder if any foundry might want to provi…
  • It looks like the "lines" are actually polygons with two points or something like this (edges?). I don't think Cadence can digest this. The screenshot does not look like a valid mask design. No filled areas. Please share your Python code…
  • Hi Bill, that's just the tail of the log. I'd need more. But this doesn't really lead anywhere. I don't know what's with your installation. But luckily we live in the 21st century. We have Docker. You should install Docker and do the build there.…
  • Hi Chris, I tried with https://www.klayout.de/forum/discussion/1227/postprocessing-nettracer#latest (example2) and I can't confirm it's not working. There was an issue with overloading of methods in Python which was fixed in the latest version 0.2…
  • Nice image. I like it. HTML art :-) You can include code by putting a triple backtick line before and after. Looks like Qt headers are not installed or are only partially installed. Did you install "qt-devel" or "qt5-devel"? Th…
  • Well ... master and dvb branch like every other branch are "use at your own risk" :-) If I had to properly label all versions I'd had to give new version numbers ten times a day. And since versions play a role in some code parts - e.g. fo…
  • Hi Bill, it's OK to ask such questions here :) You'll find a list of packages for some Linuxes here: https://www.klayout.de/build.html A first test with a Docker image (fedora:30) tells me you'll probably need these packages: gcc g++ make ruby ru…
  • Thanks for sharing this :-) If I understand you correctly, the static cell-to-skill approach would allow translating OA cells into KLayout? That sounds promising! Best regards, Matthias
  • Hi Rakesh, this is a DRC script. Go to the Macro editor, open the DRC tab, create a new DRC script and paste the above code. If you run it, it will take input from layer 1, datatype 0, apply the steps and write it to layer 10, datatype 0 in your o…
  • Good :-) That's what I actually wanted to say: "report" switches to "report" mode and the arguments to "output" are different ones. "target" switches back to "file mode" and the arguments of "…
  • Hi Thomas, You're right - anisotropic sizing with different signs isn't supported yet. So you can size up or down, but not up in one direction and down in the other. The mixed-sign case has some complications I could not overcome. This limitation i…
  • Hi Jim, I have implemented the "infix move" feature (https://github.com/KLayout/klayout/issues/317). It's in branch "issue-317" and unless there are issues with this feature, I'll merge it master soon. Matthias
  • Hi sheppie, I hope I understood the problem correctly. To me this boils down to these lines: momcapTotal.sized(0.05).merge(0).with_area(2.5.micron2, nil).output(101,1)log("Total Area momcapTotal: #{momcapTotal.merge(0).area}")...MOM = in…
  • Hi, "output" takes different arguments depending on whether the output is to a report (a results database) or a layout. If sent to a layout, the arguments are layer, datatype (numbers) while for a report, the arguments are category name a…
  • Hi Martin, an "Instance" object can't live outside a Layout, so creating one with "pya.Instance()" is not the right way to use it. Where is the instance supposed to come from? Or what do you want to achieve in the end? Matthias
  • Hi Olivier, a "cross" is just a specially configured ruler: * Label format: "$U,$V" * Style: crosses * Outline: diagonal So if you place the ruler in a script, use the same points for p1 and p2 and set "fmt" to "…
  • Hi Andrew, LD_LIBRARY_PATH isn't necessary if you specify a prefix with "--prefix" in the build step. In this case, the installation path will be put into the RPATH header entry of the shared objects and executables. Matthias
  • Hi Chris, I can't confirm there is a bug. So maybe there is an issue with writing klayoutrc. Could you check if you have permissions to write? Other causes may be: * there is a macro which resets this entry on startup * $KLAYOUT_HOME points some…
  • Hi Cristian, maybe the LIBNAME is always "LIBRARY" for all these files? KLayout obtains the library name from the LIBNAME record of GDS files. This name is the unique identifier for the library. If this name is the for all files, only th…
  • Thanks ... now we have two tickets: I had pasted the wrong URL :-( I will close mine. Matthias
  • Hi, Printing should use the DPI settings from the "Printer" (whatever this is for PDF export). Maybe there is a setting in CutePDF for the DPI? As an option you can create high-res PNG images or use vector export. For a script that does …
  • Hi Jim, the variable names will be human-readable form, but "input" cannot take information from the .lyp. These are different domains (views vs. database). There may be a dirty trick to achieve this (basically, DRC has access to the lay…
  • Hi Martin, there is basically Instance#convert_to_static for instances and Layout#convert_cell_to_static for cells. The first function is the one that "Convert to static" from the Edit menu uses. The disadvantage is that it will create o…
  • Hi Kazzz, thanks for this hint. The feature isn't available currently as a script function. That's possible of course. If have created a ticket for this: https://www.klayout.de/forum/discussion/1310/ruby-python-automation-of-auto-measure#latest Th…