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
Hi Ulli,
if it's just about drawing the layout in a different orientation you don't need to modify the layout.
Instead you can modify the view's global transformation like this:
RBA::LayoutView::current.set_config("global-trans", RBA::D…
Hi Wil,
Ruby 1.9 no longer is available for Ubuntu 16.04. So KLayout won't install on 16.04.
You always have the option to build KLayout from the sources. I'll provide a package for 16.04 on occasion of the next minor release. But don't ask me for…
Hi,
simple. This thing in discussion 814:
pya.Point(0,0)
defines the target coordinate of the cell (x, y). So just provide a counter and use a coordinate like "pya.Point(0, counter*50000)". Please note that the coordinates are "dat…
Hi,
I am not aware of the solution either. But I guess the general misconception is to replace "cells". In fact you can only replace "instances".
So the solution is
* Manually: go through the layout and change the target cells…
Hi Kazzz,
thanks for mentioning this issue. I understand the motivation for that. It is not a big issue for circles.
But I guess there is a similar topic for all the other "smooth" features like splines, ellipses, arcs and so forth. I do…
Very weired ... you're on Windows, are you? Maybe a problem with that build. It works perfectly for me on Linux.
I'll take a look into that.
Thanks for testing,
Matthias
Hi chhung,
is it mid-autumn already? I thought it's kind of late-summer to early-autumn transition ...
Sorry, just kidding :-)
Thanks for the data. The strange value like "x.ye-319" is a typical close-to-zero rounding issue. But I don't…
Hi Oliver
there is no such DRC rule yet, but you can add one:
# Include this in your DRC script to add a new check "polygons_with_more_points".# This check will create a new layer with all polygons with more than n points.class DRC::DRCL…
Hi,
134s may be good or bad depending on the hierarchical complexity of your layout. If the cell tree expands to a lot of effective instances, the cells traversed may become pretty big. In general, Ruby is quite efficient, but far from an optimized…
I'm sorry. The net tracer is a UI feature and script binding is not provided currently.
Technically it's possible, but it's more than a small effort.
Matthias
Hi chhung,
First of all, I'd like so suggest a new solution - not based on Ruby but on the "Layout Queries" of "Search & Replace": open "Search & Replace" from the "Edit" menu. Chose the "Custom&…
Hi,
the node icon seems to be kind of hardcoded within Qt. It is style-dependent, so when you chose an explicit style (i.e. add "-style windows" to the command line), the representation changes. Usually the default style is the best one a…
Oh sorry .. that was already a preview to a new version ... :-)
That reminds me of keeping an eye on backward compatibility.
I have edited the code above. Please try again.
Matthias
Hi David,
here is a simple SVG exporter:
class SVGWriter def initialize(file) @file = File.open(file, "w") end def start(w, h) @file.puts(<<"END")<?xml version="1.0" encoding="UTF-8" standa…
Hi Bob,
Anisotropic scaling is not a core feature of KLayout, so I guess you are referring to a script like http://www.klayout.org/svn-public/klayout-resources/trunk/scripts/scale_anisotropic.lym.
You can basically modify the script any way you wa…
Hi,
DXF is all gray area ... there is no format as badly documented as DXF.
I could reproduce the problem, but frankly I am not really in a mood to debug Inkscape's importer. I am able to read my DXF files into SolidWorks, AutoDesk's TrueView and …
Hi,
thanks for that nicely prepared testcase.
The solution is quite simple: the true parameters are not "radius" .. but "actual_radius" etc. The working code is:
...circ_params = { "layer" => layer, "actual_r…
Hi simg,
KLayout has the concept of a "technology setup" which allows associating a layout with some "technology". A "technology" is basically a set of settings for specific purposes. For example, the net tracer requir…
Hi jakub,
please make sure you are using the latest version.
If the problem still exists, I'd ask you to send a simple test case (GDS file with a description how to reproduce the bug) to the mail address on the contact page. The effect you describ…
Hi Chris,
Windows is entirely different from Linux - on Windows, a program needs to be compiled as a console application in order to show stdout or stderr on the screen. Being a GUI application, KLayout isn't. Which explains the behaviour.
You'll …
Hi Canny,
I did not know property names with blanks are valid.
That means, the last blank will separate the value from the property name, right?
Matthias
Hi werk,
A boolean operation returns a layer object and that is never false in Ruby. The method to test whether a layer is empty is is_empty?. So this should work:
if !(l1.input(l, d) ^ l2.input(l, d)).is_empty? ...end
Another remark: please don…
Hi Vikas,
The code is hard to read since it lacks the indents (hint: use four blanks in front of each line that are supposed to be formatted as code).
But basically the code is quite good. You just need to add the following:
1.) To get the layer …
Hi,
KLayout utilizes Python as a built-in engine, not vice versa. Taking out the core features into an external library is possible technically, but that will require a license switch from GPL to LGPL. I don't have the resources for this step - spe…
Hi,
You did not mention DXF. That would have clarified things.
There are multiple reader options in KLayout which control the DXF reader's behaviour. Unlike DXF, GDS and OASIS are meant for representing physical mask data. These formats only featu…
Hi Vikas,
please see my mail. Here is my reply for others:
The RecursiveShapeIterator does not have a feature to access the instantiation path, although internally this information is available. You have access to the combined transformation along…
Hi,
very good :-)
That is exactly the preferred solution (instead of xor you can write a ^ b). The Region object is a newer one that shields you from the trouble with the edge processor and similar things.
Matthias
Hi Takeshi,
if your case is simple and you have a layout containing a single cell, the solution will be Layout#transform(trans) where trans is an ICplxTrans object with a magnification.
If your cell calls sub-cells there will be multiple solutions…