Keith

Forum Replies Created

Viewing 15 posts - 241 through 255 (of 861 total)
  • Author
    Posts
  • in reply to: Forum errors #1818
    Keith
    Keymaster

    Yes, an update of the server's PHP version has caused date()/mktime() errors. This will be fixed in the near future. Apologies in the meantime.

    in reply to: Exact Checks for Spacing & Enclosure #1817
    Keith
    Keymaster

    Yes the enclosure checks use opposite edges – geomEnclose2 already does this.

    in reply to: Regarding Areacheck function #1816
    Keith
    Keymaster

    Min and max area rules are in microns squared. If the docs say otherwise then they will be corrected…

    in reply to: Exact Checks for Spacing & Enclosure #1813
    Keith
    Keymaster

    The Python interface is nearly done, just have to do the multi enclosure check, which is a variant of the existing conditional enclosure check. Hopefully will be finished and tested by 17/4/16.

    The interface code recognises rules like this:

    out_layer = geomAllowedEncs(layer1, layer2, 10,10,4],[2,28,2],[0,32,2, message)

    The rule triplets are of the form [enc1, enc2, max_num_enc1] where enc1 is the smaller enclosure, enc2 is the larger enclosure, and max_num_enc1 is the maximum number of edges that can have the smaller enclosure.

    Another question though: is the 'default' rule of 10nm enclosure on all 4 edges an absolute rule, or is it the minimum? i.e. if you have an enclosure of say 20nm on all sides, should this fail?

    in reply to: flags in geomspace function #1811
    Keith
    Keymaster

    You need to OR the two flags together.

    in reply to: Regarding End of Line spacing #1808
    Keith
    Keymaster

    Not at present. It could probably be done though. I'll see how much is involved.

    in reply to: Regarding geomAllowedWidths #1805
    Keith
    Keymaster

    The optional message has also been added to geomAllowedWidths() now.

    in reply to: Exact Checks for Spacing & Enclosure #1802
    Keith
    Keymaster

    OK so some more questions:

    1. For the multiple enclosure rule, is it a general case that there is e.g. a larger rule for 2 sides and a smaller rule for the other two sides (28 on 2 sides, 2 on other 2)? Or can the number of sides with larger/smaller rule be other than 2?

    2. The example has 1 default rule (10nm all sides) plus 2 other rules (28/2 and 32/0). Can there be e.g. 1 default rule and 1 or more other rules? Or no default rule and 1 or more other rules?

    Is this type of rule only for enclosure?

    in reply to: Regarding geomAllowedWidths #1801
    Keith
    Keymaster

    The geomAllowedWidths issue is fixed in 4.4.67. It now correctly obeys the 'horizontal' and 'vertical' flags:

    horizontal: tracks running horizontally only are considered. More precisely, the width of objects with two projecting horizontal edges is checked.

    vertical: tracks running vertically only are considered. The width of objects with two projecting vertical edges is checked.

    none: the minimum width of objects is checked.

    in reply to: Regarding geomAllowedWidths #1799
    Keith
    Keymaster

    If you want the shape to be exactly 0.064 x 0.064 then use the following:

    geomArea(layer, 0.004096, 0.004096)
    geomWidth(layer, 0.064)

    The first flags any shapes that have area smaller or bigger than 0.064 x 0.064.
    The second traps shapes where one edge is > 0.064 and one < 0.064 but the area passes the first check.

    I will have a look as to why geomAllowedWidths() should treat width/height differently. As with no flags, w/h = 0.064 and h/w = 0.065 should pass.

    in reply to: Regarding geomAllowedWidths #1797
    Keith
    Keymaster

    The issue is that it's seeing the 0.064 as being a valid width and hence the shape passes the rule.

    What should it do if there was a track of say width = 0.064 and height 0.100?

    Only thing you can do is use the horizontal/vertical flags to differentiate width and height.

    About the comment/message, this is a limitation of the way the function is wrapped in Python. I hope to resolve this at some point.

    in reply to: Vertices of a polygon #1794
    Keith
    Keymaster

    In 4.4.67 I will add the following. If p is a polygon, then

    pt = p[0]

    will return the Point at index 0 etc.

    p[0].x

    gives the x coord at index 0

    in reply to: Vertices of a polygon #1793
    Keith
    Keymaster

    Hmm, this could be improved. Given a polygon p,

    pl = p.ptlist()
    pts = pointList(pl, p.nPoints())
    x0 = pts.at(0).x
    y0 = pts.at(0).y

    etc

    I'll see if I can make it a bit more easy in Python so ptlist() returns a Python list.

    in reply to: Exact Checks for Spacing & Enclosure #1790
    Keith
    Keymaster

    OK I see what you are trying to do.

    It is not trivial so may take a little while to get a fully tested implementation.

    in reply to: Command for identifying rectangular shape #1789
    Keith
    Keymaster

    It will be in 4.4.67 to be released on 10th April

Viewing 15 posts - 241 through 255 (of 861 total)