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
This is my answer:
There is documentation, but it needs a little bit of encoding. The reason is the multi-language binding and I don't want to write that huge pile of documentation twice.
The documentation is mainly based on Ruby, simply because t…
Hi Sebastian,
modifying autorun won't help, because this attribute is evaluated by the application before the first macro is executed.
I'd also suggest to put the interesting code into .rb (or .py) files into the "ruby branch" or "p…
Hi haru_f,
Ok, here's the image:
(Image)
It's easy to implement if there are four transistors involved (that's just a big "if" then). But basically the chain can be more than two pairs and each transistor can be split into more than ga…
Sorry, seems like an issue with the new version of the forum.
Maybe it's also a server issue - there is a brute force password attack ongoing.
Sorry for the inconvenience. I'll try to fix is asap.
Matthias
Hi,
welcome to the new style, BTW :)
"layout" can't be accessed from a function inside a module. But of course you can add this to the list of parameters:
def circleMake(layout, top, layer, numPts, radius): ......circleMake(layout, top…
Basically you can do so. Here are some comments:
* It's not just db...cc, there is also tl....cc you need for the basic stuff.
* You might want to get rid of Qt - that's possible, but needs to define a certain macro. In this case, some other librar…
You're right ... how weird no one noticed. Here is the ticket for this: https://github.com/KLayout/klayout/issues/477
Should be easy to fix.
Thanks for reporting,
Matthias
Hi Allon,
I think that's a different issue. The URL isn't accessible directly. Instead KLayout uses the WebDAV protocol to access the Subversion port of GitHub. The "Network API error" seems to be a generic network issue.
If you use a su…
Ha! I love these requests ... that's what I integrated scripting. This is a feature I guess no one would build into an application :)
Here is the code:
import random# This assumes the top cell is called "TOP" (where the instances go to)…
Thanks for your feedback :)
"marketing friendly" wasn't my intention - more like "being as catchy as all the others". And the look is owed to increasing demand for mobile device compatibility.
My SSL certificate expired for a f…
Hi,
No, ".include" is supported. See for example "testdata/algo/nreader8.cir" from the sources.
So maybe there is another reason for this to fail?
Matthias
Hi Sebastian,
I don't understand exactly, what you're planning to do, but instead of disabling startup, you could chose the macros you want to run and explicitly do so (and disable autorun).
Matthias
Hi Christian,
I'm afraid that's a bug.
The problem is the frequent switching of the target - usually there is just one target specification. But I admit this is a valid use case and should be supported.
I have created a ticket for this here: http…
Hi Thomas,
yes, debugging makes execution slow.
I admit that an API to access the image data efficiently is missing - actually the image object was intended as a display item, so only input was required. I have created a ticket for this request: h…
Hey, I like simplicity too :)
Don't overestimate my urge to innovate. When I started programming back in early 80s my favourite tool wasn't a mouse but a solder iron, and simplicity was a matter of fact, not a design concept. With a slow clock, you…
Uh ... thanks :)
Well, the circular (same as annular?) gates where just a natural extension. Validation was not done with such a full layout but only with a simple device layout (sorry, no full LVS run).
The device model of a MOSFET is simply this…
Hi Christian,
I tried to reproduce the problem, but I failed. Here is the experiment by which I tried to grasp the problem:
lr1 = input(1,0)lr2 = layout("@2").input(1,0)target("@2")diff = lr2-lr1diff.output(100,0)lr1 = input(10…
Did I mention this one?
https://wiki.f-si.org/index.php/Hands-on_with_KLayout:_Design_rule_checks_and_layout_to_netlist_tools
There is a link to "Video recording" in "Downloads". If you promise not to be too picky about my appe…
I guess giving a recommendation myself isn't helpful. Obviously I have no experience about how to get up on speed .. :)
I'm actually thinking whether this space here isn't too secluded to attract a big enough community for this kind of support. The…
The installation is taken from this registry key plus "\VC\Auxiliary\Build". You can modify the build script and hardcode any path yourself. But don't ask me where Microsoft would put it's tools. I copied the registry query from the script…
Hi,
thanks for this nicely prepared test case.
The problem is definitely not a beginner's question. The reason why the layer is not skipped in "add_missing_layers" is that you need to add the cellview index (the index of the layout loade…
Hi,
no, a path cannot be distinguished from a Polygon. A DRC is a physical verification tool and physically it does not matter whether you draw something as path or polygon.
The number of points are given by the Polygon that is created from the pa…
No, there is no such plan. Supporting two languages means duplicate maintenance work for me and Python lacks the metaprogramming features of Ruby. Hence it's not a good platform for implementing a domain specific language.
But DRC is just a thin wr…
Hi Thomas,
The object kept inside the layout database is an Instance object. CellInstArray is the "working object" similar to "Polygon", which you can use as independent objects in your code. "Instance" is the placehol…
Hi tok,
thanks for this suggestion!
There is an alternative way to select layers: you can instruct the reader to only read certain layers. For big files this will avoid the memory overhead implied by reading layers you're going to delete anyway.
…
Hi Gautam,
you don't need a paid version. I'm using VisualStudio 2017 Community Edition myself. It's free for open source projects and single developpers. The basic package is sufficient.
For details see here: https://www.klayout.de/build.html
Al…