Matthias

About

Username
Matthias
Joined
Visits
16
Last Active
Roles
Member

Comments

  • Hi Chris, I hardly dare to make any statements now, trying not to add to the confusion I created before. But looking at the code, there is no coerce_parameters call in the GDS reader. Basically, the GDS (and OASIS) reader will simply recover the p…
  • Hi shawnh, first of all, thanks. Regarding the net tracer - it's actually designed for tracing single (small) nets, so it won't be able to replace a true netlist extraction tool. I bet you'll quickly reach the limits of that feature, even if there…
  • Hi all, @David: thanks again for you notes :-) I have not really understood the request. Do you mean you want to select those rectangles that fit into a circle (like a wafer map)? You have a full programming language available - producing shapes …
  • Hi Dave, let me know here if you can recommend this tool. I'm also interested in a GUI testing solution. Thanks, Matthias
  • Hi Chris, thanks for that heap of information and that nice report. I'll have a look into that ... given the confusion that I raised, I'll have to check my own code. I'll be back ... Matthias
  • Hi Chris, Oh yes ... it looks like I was somewhat off track regarding my own code. When digging through the implementation, I find the following * coerce_parameters is only called when editing the parameters in the user interface. Not when changi…
  • Hi Chris, I think emulating the selection is pretty tedious. I can provide an option that enables selection of objects inside PCell's/library cells, but I'd disable that initially because of the implications I mentioned. I'd like to put that into …
  • Hi, I'm sorry, but the program is not built for that kind of application. I don't know how to redirect output to a graphics view. You may be able to reuse the LayoutView component - but right now it won't work properly without being embedded into a…
  • Hi, please replace the file name by a valid path - without any path, the program will probably try to write to the installation directory which does not make a lot of sense. The new top cell is always created. If you don't want to have this cell, …
  • Hi ycc, here is some tested code. It produces a clip from the rectangle -1mm, -1mm to +1mm, +1mm (for database unit 0.001µm). Please note that the rectangle coordinates must be given in database units: layout = RBA::CellView::active.layoutclip_rec…
  • Hi Chris, I'm afraid, but that's intentional. It gave me too much headache thinking about the implications of selectable subshapes and instances from within PCell's and library cells. Such shapes and instances must not be edited, hence I'd had to p…
  • Hi zlim, thanks for mentioning this issue. That's a bug. I'm afraid the only workaround until the real fix will be to close and re-open the layout or to store and restore the technology after the reload. But the problem also persists when reloading…
  • Hi Chris, Regarding the GUI interaction you're right - sorry for the confusion. Right now, only Apply will set the parameters. But I was projecting into the future :-) In general I think the whole handling is a matter of philosophy. I did not have…
  • Hi Chris, I'd recommend putting these lines at the end of the generation script. Specifically "add_missing_layers" is a good idea. That scheme saves some mouse clicks and doesn't scare away inexperienced users :-) Matthias
  • Hi, since the code above works I can't say a lot, except that it looks fine ... I still don't know what you're doing. Can you give a sample of non-working code? And give instructions how to run it and what is the expected and actual result? What is…
  • Hi, can you give some sample code illustrating your approach? I have no clue what you're doing. Matthias
  • Hi Chris, thanks for providing this code. As I mentioned in the [http://klayout.de/forum/comments.php?DiscussionID=630&page=1#Item_6](other entry), there will be a very similar method in 0.24. I used the following sample code: mw = RBA::Appl…
  • Hi, Thanks for the hint about the typo in the sample code. It's supposed to be "cell_index", not "index". I'm a bit confused about your request. Actually you don't create a MainWindow object - it's already there. You can obtain…
  • Hi Chris, yes ... that solves the puzzle. By "inconsistent" I meant that old_contacts was not always updated to reflect the previous value. Regarding "you cannot assume a certain history of events", I mean that you cannot neces…
  • Hi David, I just released 0.23.11 - this issue should be fixed then. Best regards, Matthias
  • Hi Chris, KLayout does not have a state model for PCell's - they can be cached or in partially updated state. In other words: you cannot assume a certain history of events. KLayout only guarantees that before produce_impl is called, coerce_paramete…
  • Hi Dave, I doubt that QThread and Ruby will work as expected, since Ruby by itself is single-threaded. Once you enter the Ruby interpreter, the global interpreter lock will ensure that only one thread is active. Plus, as you mentioned, Qt is not fu…
  • Hi Dave, hi Chris, I am sorry for that confusion. I have mentioned the reason in a different thread: QFlags are classes in 0.24 and no longer mapped to integers. That enables a syntax close to C++ and all the features that QFlags offers, but lackin…
  • Hi Chris, thanks for mentioning this. Here are some statements from my side * Regarding Ruby: I'll surely shift to 2.x for the binary Windows release for 0.24. On Linux, it will depend on your choice which Ruby version you are building against. I'…
  • Hi chhung, Arrays with dimensions 0x0 are illegal for OASIS (see the last two arguments to CellInstArray). For GDS2 they can be produced, although their interpretation is implementation-dependent. I'd not use 0x0 arrays. If you want to create a si…
  • Hi David, I was able to fix the issue, but in all cases, the deleted cells will appear as new top cells after loading, because they exist in the original file or library. I can try to delete them afterwards but it will be a little tricky to sort ou…
  • Hi David, thanks for pointing that out ... the behaviour is not intended indeed. If you modify LIB_CELL1, it should be updated in the file, no matter what the changes are. I'll debug and try to fix that problem. Thanks for pointing that out. Mat…
  • Hi, (@David: thanks once again for your support! ...) You can use the "KLAYOUT_PATH" environment variant to configure the locations KLayout looks for scripts, .lyt files (inside "tech" below the KLAYOUT_PATH) etc. I admit, the…
  • Hi sapatra, hi David, you could use "variable path extensions", for which you can specify start and end extension separately. If you specify a start extension of 0 and an end extension of half the width you'll get exactly the 0110 extens…
  • Hi, you'll find a lot of details in the documentation about Ruby script programming: http://klayout.de/doc/programming/index.html. Here is a simple script that creates a layout with one layer and produces a rectangle on this layer. You can extend …