In a Ruby script I am running, I use the fill_region function to add tiling. I have now encountered a problematic file that generates the following error in KLayout v0.25.3:
The fill_region command runs sucessfully in v0.24.8
Required files for reproducing the issue:
Includes the export script, the fill cell, and the problematic cell.
The text was updated successfully, but these errors were encountered:
I'm able to reproduce this issue and isolate the internal data which cause this error. Internal a big polygon with zero-width spikes is generated. I assume due to some implicit normalization these got deleted in 0.24.x.
I'll try to provide a fix this this. I'm afraid there is no simple workaround currently except using 0.24.
The issue was caused by an internal error in the edge processor. Effectively the weak attractor scheme was causing this problem. As the weak attractors are making things worse rather than better I dropped them. In theory, the weak attractors render an edge undisturbed by neighboring intersection points, but in cases or parallel edges this lead to problems: omitting cut points violates the output edge configuration warranties the the polygon stitcher fails. In addition, to maintain the solution for bug #74, the cut point capture condition was relaxed, so that edge crossing the exact corner of the snapping rectangle of a point are not considered captured.
0.25.4 (2018-08-25): * Bugfix: KLayout/klayout#121 Issue with multiple reads of GDS2 layouts including PCells * Bugfix: KLayout/klayout#134 Error in cell.fill_region caused by big polygon with spikes * Bugfix: KLayout/klayout#139 Libraries have not been reassigned when loading a GDS file from command line (does not happen on File/Open) * Bugfix: KLayout/klayout#141 Issue with RBA::QHostAddress (ambiguous overload) on Qt5 * Bugfix: KLayout/klayout#142 Issue with RBA::RecursiveShapeIterator#region= * Bugfix: KLayout/klayout#144 The Salt package descriptions are not shown with Motif style * Bugfix: KLayout/klayout#148 Wrong font is used * Bugfix: KLayout/klayout#152 Shapes#size reported a wrong shape count in viewer mode * Bugfix: KLayout/klayout#153 Application crash when editing guiding shape properties * Bugfix: KLayout/klayout#155 Program freezes after replacing nothing by something in Macro editor * Bugfix: KLayout/klayout#157 "Replace cell with ..." rejected cell names with a library prefix * Bugfix: KLayout/klayout#158 Repaint issue on cell context * Bugfix: KLayout/klayout#159 Tech specific macros and DRC scripts were not shown in tech manager * Bugfix: 8 bit indexed GIF images can be used for package icons now * Enhancement: Provide a way to specify the type of a macro This feature is mainly useful for command line arguments. If you run KLayout with "klayout -b -r myscript" it will not be able to determine the type of macro without a suffix. You can now explicitly specify a certain type by giving the suffix implicitly like: "klayout -b -r myscript[rb]" This will read "myscript" but pretend it was "myscript.rb" and execute it as Ruby script. This feature is handy if you need to run a file with a specific interpreter but cannot modify the file name. * Enhancement: Selection now shows PCell display names Before, the internal name was shown for instances * Enhancement: There is an option in the View menu to show or hide markers Markers may hide layout under them. With this feature you can quickly disable all markers and the layout becomes visible.