Not signed in (Sign In)

Vanilla 1.1.4 is a product of Lussumo. More Information: Documentation, Community Support.

    • CommentAuthorJunxian Wu
    • CommentTimeJun 30th 2016
    If I want to check whether a layer is a polygon, I will use "layer.polygons?" and it returns true, if the layer is a polygon layer

    But where is the output? if one part of the layer is not polygon, how do we know? will this part be highlighted or there are some comments somewhere?

    For example: some part of m1 is "polygon", some part of m1 is "path"
    m1 = input(4)
    output = m1.polygons?
    how can I check the output?
    • CommentAuthorMatthias
    • CommentTimeJul 6th 2016


    There are basically two kind of layers: edge and polygon layers. You can ask a layer for it's type using polygon?. This method will return true if the layer is of polygon type. You can use this method in an if statement for example to perform different operations depending on the type.

    On a polygon layer there are only polygons. Paths are converted to polygons too. So are boxes. Hence there is no highlighting of "non-polygon" parts. Every object on a polygon layer is a polygon.


    • CommentAuthorJunxian Wu
    • CommentTimeJul 16th 2016
    I think I did not describe correctly.

    I finish layout with AutoCAD, and save it as a DXF file. but there are some layers are not closed during drawing layout. I save DXF as OAS file use KLayout. After I open the OAS file, these closed layers will be filled with shadow, and un-closed layer will not be filled. If double click, filled layer shows "polygon properties"(that is why I thought these belong polygon), and non-filled layer shows "path properties" (that is why I thought these are paths).

    How can I find these non-filled layer (which is not closed in Layout)?
    • CommentAuthorMatthias
    • CommentTimeJul 18th 2016 edited


    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 feature "filled" polygons corresponding dark or clear areas on the mask. DXF is a sloppy drawing format and offers many pitfalls when trying to translate that into mask data. Please have a look at the LINE/POLYLINE options in File/Reader Options (DXF tab). One of these options may do what you want. Without the proper options, the lines of a DXF drawing are translated into zero-width paths (an approximation to a "line" in GDS/OASIS).

    I say "may" because depending on your drawing style you may not be successful. Specifically unclosed polylines will not necessarily be closed or not in a way you want them to be. Hatches are more likely to be translated correctly.

    In general I discourage use of DXF for mask making. This format is too sloppy and too badly documented to serve as a precise exchange format for something as sensitive as mask data. If you observe strict rules, translating AutoCAD drawings into GDS/OASIS may be successful, but lacking experience therein I cannot give advise.

    Maybe somebody else can.