Each check produces edge pairs (two edge pieces plus a measured distance). Defaults: Euclidean metric, shielded, angle_limit(90).
How the comparison works:
< / <=: search within the limit. < keeps every hit in that radius.> / >=: search in a large radius (about max(20×limit, limit+1000 dbu)), then filter on distance.== / !=: tolerance 0.51 dbu on the measured distance.without_touching_corners is set.shielded drops a pair when another edge crosses the shortest connection.width(a)Available · yields edge pairs
check "W" : width(m1) < 0.14 um
Inside distance of opposite edges of the same layer. The marker is the two edge pieces plus the Euclidean distance. Also as a layer: layer nar = width(m1) < 0.14 um.
Notes
width(m1) > 20 um.width(a, b): AND of the sources, then RelWidth on the overlap.space(a)Available · yields edge pairs
check "S" : space(m1) < 0.14 um
Outside distance of all pairs: notch (same shape) and isolated (different shapes).
Notes
notch(a)Available · yields edge pairs
check "N" : notch(m1) < 0.14 um
Outside distance only inside the same shape (a slit, a U). Other polygons are ignored.
Notes
isolated / space).merged, two kissing boxes become one shape — isolated can become notch.isolated(a)Available · yields edge pairs
check "I" : isolated(m1) < 0.14 um
Outside distance only between different polygons. Alias iso.
Also written as: iso
Notes
raw two copies: isolated against itself (two shapes).sep(a, b)Available · yields edge pairs
check "S" : sep(m1, m2) < 0.14 um
Outside distance between two layers. Alias separation. Same-layer skip (neighbour/collinear) is off.
Also written as: separation
Notes
overlap.enc(a, b)Available · yields edge pairs
check "E" : enc(m1, via) < 0.05 um
a should enclose b: overlap relation (enclosure of a around b). Alias enclosing. Too-small overhangs at the edge of b versus a.
Also written as: enclosing
Notes
eol=yes (only the line-end of a long rectangle) filters enclosure to the short ends.width(a, b)Available · yields edge pairs
check "W2" : width(m1, m2) < 0.14 um
Inside distance of the overlap: AND of the two layers, then RelWidth on the intersection. Without an area AND there are no markers (that would be sep).
Notes
sep).overlap.overlap, which forces unshielded).enclosed(a, b)Available · yields edge pairs
check "E" : enclosed(via, m1) < 0.05 um
The reverse of enc: internally enc(b, a). Reading: how far does a lie in b.
Notes
enc, arguments swapped.enc when the edge lengths differ — pair direction follows the overlap-swap.overlap(a, b)Available · yields edge pairs
check "O" : overlap(m1, via) < 0.05 um
Width of the overlap zone (inside, two layers). shielded is turned off.
Notes