Matthias

About

Username
Matthias
Joined
Visits
15
Last Active
Roles
Member

Comments

  • Hi the right way is poly = pya.Polygon(hull)poly.insert_hole(hole1)region.insert(poly) Matthias
  • Hi Luis, you can already use https (and should do so), but klayout.de is hosted with some basic hosting package that only comes with a self-signed certificate. You have to accept the security exception. I cannot exchange the certificate - they just…
  • Hi Antti, either it's a missing feature or a bug :-) I can reproduce it and I understand the issue. I'll have a look into that. Thanks for reporting that, Matthias
  • Hi Luis, I have published the NSIS script (for 64 bit) here: http://www.klayout.org/svn-public/klayout-resources/trunk/klayout-inst-x64.nsis. I finally want to package XSection with KLayout, but it will take some time. Regards, Matthias
  • Hi, the datatype number is the second parameter to RBA::LayerInfo::new. It's basically some kind of sub-layer, although they don't really form a hierarchy in that sense. Using datatypes just simplifies the management of layers somewhat. Matthias
  • Hi, If I understand you correctly, you are looking for a way to represent the 3d topography with layers (creating z bins). That's a valid approach and of course you can use cells to cluster the layers. By convention, you will then have just those l…
  • Hi klfun, For high throughput, there is no way around C++ coding. However, the internal API's are not well documented and not easy to use. Teaching you how to do this is beyond my commitment here - you have to study the code yourself. But even mo…
  • Hi, Text objects are basically just labels and won't appear on the mask. That's intentional since their purpose is to label a shape or a location, not to represent physical features. To create a physical text, use the TEXT PCell from the BASIC lib…
  • @Harri: thanks for the suggestion and yes, that's one more option. I basically wanted to say, that within the framework of the current application it's possible to create a function that probably solves the problem stated. It's just not precisely l…
  • Hi, the script doesn't look bad, but the third dimension simply isn't accessible in KLayout. By tweaking the DXF writer you basically could make it emit z coordinates, but right now that's not more than a hack. Maybe there are reasonable applicatio…
  • Hi klfun, no, you can't (currently). The drawing feature is too tighly connected to the Windowing system. You can however run any program headless with a dummy display using "Xvfb": xvfb-run ./klayout -z -r your_script.rb Regards, Mat…
  • Hi Theo, before we dig deeper: if your label contains "clk", the expression needs to be texts from cells * where shape.text_string ~ "*clk*" The "~" match operator is anchored by default and it's not a regular expres…
  • Hi Antti, one more suggestion: what about a feature like "separate into inner and outer parts"? There are already two operations which you can use in order to split a polygon: "Edit/Selection/Intersection" and "Edit/Select…
  • Hi Paolo, Thanks for your wish to contribute. But you don't need to port. It's already done. KLayout 0.25 will be Qt 5 compatible. You can try the development snapshot from http://www.klayout.de/build.html. It builds with Qt 5.5.1 on my Ubuntu 16.…
  • Hi klfun, I'm sorry - polygon grayscale rendering is still not part of the scripting interface. I also think that in general scripting isn't the right approach for high throughput, if you're interested in that. Regards, Matthias
  • Hi, All checks is designed to check "less" not "less or equal", so the overlap check should do what you're expecting: it will check width >= 4.0 and report an error on < 4.0 µm. Doesn't it? If you really need to check the…
  • Hi Christan, yes, the TEXT PCell is everybody's darling ... Maybe I can mitigate the PCell instantiation issue by providing a text synthesizing function in the normal pya.Region (i.e. pya.Region.createGlyphs("MY TEXT")). Your remark abou…
  • Hi all, @Christian: thanks for this suggestion. If you put in two regions (even if derived from an iterator) into a boolean operation, they will become flat anyway. So you don't need to add the empty region. But I need to say that once again: PCel…
  • Hi Luis, the project on SourceForge is under SVN. You can send a patch and I will submit it. Or it's time to move to GitHub with that project ... Matthias
  • Hi, I just have a rough idea about the meaning of this rule, so I can just guess. Maybe you want to try this: report("DRC")poly = input(2)metal = input(1)# e1 = metal edges overlapping poly by less than 1µme1 = metal.overlap(poly, 1.0.u…
  • Hi Luis, yes, the NSIS script is the one used for the official installer. I don't know whether the NSIS installer provides silent installation. Maybe there is a command option, but you better check with their documentation. For a modifier installe…
  • Hi Christian, thanks for these observations. * There is no way to clear a namespace. At least not as far as I know. You're working inside a life interpreter of a dynamic language. With all side effects. * That's a known issue. For a workaround see…
  • Hi, use the pya.Region object. The "-" operator will do the subtraction. You can insert the results into your output cell. Matthias
  • Hi Joel, I understand your point. I'll see what I can do. The library name is currently not a property of the layout but of the writer settings. In your application it's better to regard it an attribute of the layout and write it. Thanks, Matthias
  • Hi, what is drc_cal format? SVRF? There is no way to translate a Calibre SVRF script into KLayout. And there probably never will be. It's an IP issue. Matthias
  • Hi Joel, I guess I understand your idea. I'll have a look whether that is feasible or not. Basically editing and browsing are mutually exclusive since browsing depends on the consistency of the data model. But maybe it's possible in the context of …
  • Hi Joel, thanks for this feedback. Let me know if you observe issues that are not network related. Regards, Matthias
  • Hi Benny, yes, that's right. The other layers will be skipped, provided you pass "false" as the second parameter to "set_layer_map". Regards, Matthias
  • Hi Benny, You probably mean mask data, do you? Design data (hierarchical, pre-OPC, pre-fracture) is hardly 100G OASIS. Maybe you're expecting too much of an open source tool. There are commercial solutions that allow you deal with that kind of data…
  • Hi Shlomi, How can a such a function define a shape (polygon)? Do you mean "a polygon which includes all points where f(x,y) = 1"? That will be tricky because KLayout is no equation solver. But here is an approach: atan2(y,x) will give…