Doc updates

This commit is contained in:
Matthias Koefferlein 2022-12-09 23:33:31 +01:00
parent 3e9d66ea6d
commit 9607594020
4 changed files with 65 additions and 65 deletions

View File

@ -16,7 +16,7 @@
</ul>
<p>
"angle" represents the edge orientation filter on the primary shape edges in
<a href="/about/drc_ref_drc.xml">DRC</a> expressions (see <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a> and <a href="/about/drc_ref_global.xml#angle">angle</a> for more details). In this context,
<a href="/about/drc_ref_drc.xml">DRC</a> expressions (see <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a> and <a href="/about/drc_ref_drc.xml#angle">DRC#angle</a> for more details). In this context,
the operation acts similar to <a href="/about/drc_ref_layer.xml#with_angle">Layer#with_angle</a>.
</p>
<a name="antenna_check"/><h2>"antenna_check" - Performs an antenna check</h2>
@ -41,7 +41,7 @@ is equivalent to "layer.area" (see <a href="/about/drc_ref_layer.xml#area">Layer
polygons in the layer.
</p><p>
Without a layer argument, "area" represents an area filter for primary shapes in
<a href="/about/drc_ref_global.xml">global</a> expressions (see <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a> and <a href="/about/drc_ref_global.xml#area">area</a> for more details).
<a href="/about/drc_ref_global.xml">global</a> expressions (see <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a> and <a href="/about/drc_ref_drc.xml#area">DRC#area</a> for more details).
</p>
<a name="area_ratio"/><h2>"area_ratio" - Selects primary shapes based on the ratio of bounding box and polygon area</h2>
<keyword name="area_ratio"/>
@ -50,7 +50,7 @@ Without a layer argument, "area" represents an area filter for primary shapes in
<li><tt>area_ratio (in condition)</tt></li>
</ul>
<p>
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#area_ratio">area_ratio</a> and <a href="/about/drc_ref_global.xml#area_ratio">area_ratio</a> for more details.
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#area_ratio">area_ratio</a> and <a href="/about/drc_ref_drc.xml#area_ratio">DRC#area_ratio</a> for more details.
</p>
<a name="bbox_aspect_ratio"/><h2>"bbox_aspect_ratio" - Selects primary shapes based on the aspect ratio of their bounding boxes</h2>
<keyword name="bbox_aspect_ratio"/>
@ -59,7 +59,7 @@ See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#area_ratio">
<li><tt>bbox_aspect_ratio (in condition)</tt></li>
</ul>
<p>
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#bbox_aspect_ratio">bbox_aspect_ratio</a> and <a href="/about/drc_ref_global.xml#bbox_aspect_ratio">bbox_aspect_ratio</a> for more details.
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#bbox_aspect_ratio">bbox_aspect_ratio</a> and <a href="/about/drc_ref_drc.xml#bbox_aspect_ratio">DRC#bbox_aspect_ratio</a> for more details.
</p>
<a name="bbox_height"/><h2>"bbox_height" - Selects primary shapes based on their bounding box height</h2>
<keyword name="bbox_height"/>
@ -73,7 +73,7 @@ bounding box height satisfies the condition. Conditions may be written as arithm
against numeric values. For example, "bbox_height &lt; 2.0" will select all primary shapes whose
bounding box height is less than 2 micrometers. See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a> for more details about comparison
specs. Plain "bbox_min" is equivalent to "primary.bbox_min" - i.e. it is used on the primary
shape. Also see <a href="/about/drc_ref_global.xml#bbox_min">bbox_min</a>.
shape. Also see <a href="/about/drc_ref_drc.xml#bbox_min">DRC#bbox_min</a>.
</p>
<a name="bbox_max"/><h2>"bbox_max" - Selects primary shapes based on their bounding box height or width, whichever is larger</h2>
<keyword name="bbox_max"/>
@ -82,7 +82,7 @@ shape. Also see <a href="/about/drc_ref_global.xml#bbox_min">bbox_min</a>.
<li><tt>bbox_max (in condition)</tt></li>
</ul>
<p>
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#bbox_max">bbox_max</a> and <a href="/about/drc_ref_global.xml#bbox_max">bbox_max</a> for more details.
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#bbox_max">bbox_max</a> and <a href="/about/drc_ref_drc.xml#bbox_max">DRC#bbox_max</a> for more details.
</p>
<a name="bbox_min"/><h2>"bbox_min" - Selects primary shapes based on their bounding box height or width, whichever is smaller</h2>
<keyword name="bbox_min"/>
@ -91,7 +91,7 @@ See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#bbox_max">bb
<li><tt>bbox_max (in condition)</tt></li>
</ul>
<p>
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#bbox_min">bbox_min</a> and <a href="/about/drc_ref_global.xml#bbox_min">bbox_min</a> for more details.
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#bbox_min">bbox_min</a> and <a href="/about/drc_ref_drc.xml#bbox_min">DRC#bbox_min</a> for more details.
</p>
<a name="bbox_width"/><h2>"bbox_width" - Selects primary shapes based on their bounding box width</h2>
<keyword name="bbox_width"/>
@ -100,7 +100,7 @@ See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#bbox_min">bb
<li><tt>bbox_max (in condition)</tt></li>
</ul>
<p>
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#bbox_height">bbox_height</a> and <a href="/about/drc_ref_global.xml#bbox_height">bbox_height</a> for more details.
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#bbox_height">bbox_height</a> and <a href="/about/drc_ref_drc.xml#bbox_height">DRC#bbox_height</a> for more details.
</p>
<a name="bjt3"/><h2>"bjt3" - Supplies the BJT3 transistor extractor class</h2>
<keyword name="bjt3"/>
@ -1049,7 +1049,7 @@ For further methods on the source object see <a href="/about/drc_ref_source.xml"
This function can be used with a layer argument. In this case it
is equivalent to "layer.length" (see <a href="/about/drc_ref_layer.xml#length">Layer#length</a>). Without a layer
argument, "length" represents the edge length filter on the primary shape edges in
<a href="/about/drc_ref_drc.xml">DRC</a> expressions (see <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a> and <a href="/about/drc_ref_global.xml#length">length</a> for more details). In this context,
<a href="/about/drc_ref_drc.xml">DRC</a> expressions (see <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a> and <a href="/about/drc_ref_drc.xml#length">DRC#length</a> for more details). In this context,
the operation acts similar to <a href="/about/drc_ref_layer.xml#with_length">Layer#with_length</a>.
</p>
<a name="log"/><h2>"log" - Outputs as message to the logger window</h2>
@ -1370,7 +1370,7 @@ is equivalent to "layer.perimeter" (see <a href="/about/drc_ref_layer.xml#perime
total perimeter of all polygons in the layer.
</p><p>
Without a layer argument, "perimeter" represents a perimeter filter for primary shapes in
<a href="/about/drc_ref_drc.xml">DRC</a> expressions (see <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a> and <a href="/about/drc_ref_global.xml#perimeter">perimeter</a> for more details).
<a href="/about/drc_ref_drc.xml">DRC</a> expressions (see <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a> and <a href="/about/drc_ref_drc.xml#perimeter">DRC#perimeter</a> for more details).
</p>
<a name="polygon"/><h2>"polygon" - Creates a polygon object</h2>
<keyword name="polygon"/>
@ -1486,7 +1486,7 @@ To remove this condition, call "region_touch" without any arguments.
<li><tt>relative_height (in condition)</tt></li>
</ul>
<p>
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#relative_height">relative_height</a> and <a href="/about/drc_ref_global.xml#relative_height">relative_height</a> for more details.
See <a href="/about/drc_ref_layer.xml#drc">Layer#drc</a>, <a href="#relative_height">relative_height</a> and <a href="/about/drc_ref_drc.xml#relative_height">DRC#relative_height</a> for more details.
</p>
<a name="report"/><h2>"report" - Specifies a report database for output</h2>
<keyword name="report"/>

View File

@ -461,11 +461,11 @@ For the conversion of edges, edge pairs and polygons into other types, these
methods are provided:
</p><p>
<ul>
<li>"<a href="/about/drc_ref_global.xml#polygons">polygons</a>": converts edge pairs to polygons </li>
<li>"<a href="/about/drc_ref_global.xml#extended">extended</a>", "<a href="/about/drc_ref_global.xml#extended_in">extended_in</a>", "<a href="/about/drc_ref_global.xml#extended_out">extended_out</a>": converts edges to polygons </li>
<li>"<a href="/about/drc_ref_global.xml#first_edges">first_edges</a>", <a href="/about/drc_ref_global.xml#second_edges">second_edges</a>": extracts edges from edge pairs </li>
<li>"<a href="/about/drc_ref_global.xml#edges">edges</a>": decomposes edge pairs and polygons into edges </li>
<li>"<a href="/about/drc_ref_global.xml#corners">corners</a>": can extract corners from polygons </li>
<li>"<a href="/about/drc_ref_drc.xml#polygons">DRC#polygons</a>": converts edge pairs to polygons </li>
<li>"<a href="/about/drc_ref_drc.xml#extended">DRC#extended</a>", "<a href="/about/drc_ref_drc.xml#extended_in">DRC#extended_in</a>", "<a href="/about/drc_ref_drc.xml#extended_out">DRC#extended_out</a>": converts edges to polygons </li>
<li>"<a href="/about/drc_ref_drc.xml#first_edges">DRC#first_edges</a>", <a href="/about/drc_ref_drc.xml#second_edges">DRC#second_edges</a>": extracts edges from edge pairs </li>
<li>"<a href="/about/drc_ref_drc.xml#edges">DRC#edges</a>": decomposes edge pairs and polygons into edges </li>
<li>"<a href="/about/drc_ref_drc.xml#corners">DRC#corners</a>": can extract corners from polygons </li>
</ul>
</p><p>
The following example decomposes the primary polygons into edges:
@ -506,8 +506,8 @@ The "drc" framework supports the following edge and edge/polygon operations:
</p><p>
<ul>
<li>Edge vs. edge and edge vs. polygon booleans </li>
<li>Edge vs. polygon interactions ("<a href="/about/drc_ref_global.xml#interacting">interacting</a>", "<a href="/about/drc_ref_global.xml#overlapping">overlapping</a>") </li>
<li>Edge sampling ("<a href="/about/drc_ref_global.xml#start_segments">start_segments</a>", "<a href="/about/drc_ref_global.xml#centers">centers</a>", "<a href="/about/drc_ref_global.xml#end_segments">end_segments</a>") </li>
<li>Edge vs. polygon interactions ("<a href="/about/drc_ref_drc.xml#interacting">DRC#interacting</a>", "<a href="/about/drc_ref_drc.xml#overlapping">DRC#overlapping</a>") </li>
<li>Edge sampling ("<a href="/about/drc_ref_drc.xml#start_segments">DRC#start_segments</a>", "<a href="/about/drc_ref_drc.xml#centers">DRC#centers</a>", "<a href="/about/drc_ref_drc.xml#end_segments">DRC#end_segments</a>") </li>
</ul>
</p><p>
<h3>Filters </h3>
@ -515,14 +515,14 @@ The "drc" framework supports the following edge and edge/polygon operations:
Filter operators select input polygons or edges based on their properties. These filters are provided:
</p><p>
<ul>
<li>"<a href="/about/drc_ref_global.xml#area">area</a>": selects polygons based on their area </li>
<li>"<a href="/about/drc_ref_global.xml#perimeter">perimeter</a>": selects polygons based on their perimeter </li>
<li>"<a href="/about/drc_ref_global.xml#area_ratio">area_ratio</a>": selects polygons based on their bounding box to polygon area ratio </li>
<li>"<a href="/about/drc_ref_global.xml#bbox_aspect_ratio">bbox_aspect_ratio</a>": selects polygons based on their bounding box aspect ratio </li>
<li>"<a href="/about/drc_ref_global.xml#relative_height">relative_height</a>": selects polygons based on their relative height </li>
<li>"<a href="/about/drc_ref_global.xml#bbox_min">bbox_min</a>", "<a href="/about/drc_ref_global.xml#bbox_max">bbox_max</a>", "<a href="/about/drc_ref_global.xml#bbox_width">bbox_width</a>", "<a href="/about/drc_ref_global.xml#bbox_height">bbox_height</a>": selects polygons based on their bounding box properties </li>
<li>"<a href="/about/drc_ref_global.xml#length">length</a>": selects edges based on their length </li>
<li>"<a href="/about/drc_ref_global.xml#angle">angle</a>": selects edges based on their orientation </li>
<li>"<a href="/about/drc_ref_drc.xml#area">DRC#area</a>": selects polygons based on their area </li>
<li>"<a href="/about/drc_ref_drc.xml#perimeter">DRC#perimeter</a>": selects polygons based on their perimeter </li>
<li>"<a href="/about/drc_ref_drc.xml#area_ratio">DRC#area_ratio</a>": selects polygons based on their bounding box to polygon area ratio </li>
<li>"<a href="/about/drc_ref_drc.xml#bbox_aspect_ratio">DRC#bbox_aspect_ratio</a>": selects polygons based on their bounding box aspect ratio </li>
<li>"<a href="/about/drc_ref_drc.xml#relative_height">DRC#relative_height</a>": selects polygons based on their relative height </li>
<li>"<a href="/about/drc_ref_drc.xml#bbox_min">DRC#bbox_min</a>", "<a href="/about/drc_ref_drc.xml#bbox_max">DRC#bbox_max</a>", "<a href="/about/drc_ref_drc.xml#bbox_width">DRC#bbox_width</a>", "<a href="/about/drc_ref_drc.xml#bbox_height">DRC#bbox_height</a>": selects polygons based on their bounding box properties </li>
<li>"<a href="/about/drc_ref_drc.xml#length">DRC#length</a>": selects edges based on their length </li>
<li>"<a href="/about/drc_ref_drc.xml#angle">DRC#angle</a>": selects edges based on their orientation </li>
</ul>
</p><p>
For example, to select polygons with an area larger than one square micrometer, use:
@ -546,7 +546,7 @@ In the same fashion, "perimeter" applies to the perimeter of the polygon.
use the respective dimension for filtering the polygon.
</p><p>
Note that it's basically possible to use the polygon filters on any input - computed and secondaries.
In fact, plain "area" for example is a shortcut for "<a href="/about/drc_ref_global.xml#primary">primary</a>.area" indicating that
In fact, plain "area" for example is a shortcut for "<a href="/about/drc_ref_drc.xml#primary">DRC#primary</a>.area" indicating that
the area of primary shapes are supposed to be computed.
However, any input other than the primary is not necessarily complete or it may
consist of multiple polygons. Hence the computed values may be too big or too small.
@ -562,9 +562,9 @@ passes the polygons if the condition is met.
The predicates available currently are:
</p><p>
<ul>
<li>"<a href="/about/drc_ref_global.xml#rectangles">rectangles</a>": Filters rectangles </li>
<li>"<a href="/about/drc_ref_global.xml#squares">squares</a>": Filters squares </li>
<li>"<a href="/about/drc_ref_global.xml#rectilinear">rectilinear</a>": Filters rectilinear ("Manhattan") polygons </li>
<li>"<a href="/about/drc_ref_drc.xml#rectangles">DRC#rectangles</a>": Filters rectangles </li>
<li>"<a href="/about/drc_ref_drc.xml#squares">DRC#squares</a>": Filters squares </li>
<li>"<a href="/about/drc_ref_drc.xml#rectilinear">DRC#rectilinear</a>": Filters rectilinear ("Manhattan") polygons </li>
</ul>
</p><p>
For the same reason as explained above, it's recommended to use these predicates
@ -656,7 +656,7 @@ Note that the precise form of the example above is
out = l1.drc((primary &amp; secondary(l2)).area &gt; 1.0)
</pre>
</p><p>
The "<a href="/about/drc_ref_global.xml#secondary">secondary</a>" operator indicates that "l2" is to be used as secondary input to the "drc" function. Only
The "<a href="/about/drc_ref_drc.xml#secondary">DRC#secondary</a>" operator indicates that "l2" is to be used as secondary input to the "drc" function. Only
in this form, the operators of the boolean AND can be reversed:
</p><p>
<pre>
@ -672,7 +672,7 @@ from the primary, it's neighborhood (secondaries) or from deriving shape sets.
Obviously the primary is a simple one: it consists of a single shape, because
this is how the loop operates. Derived shape sets however can be more complex.
"Quantifiers" allow assessing properties of the complete, per-primary shape
set. A simple one is "<a href="/about/drc_ref_global.xml#count">count</a>" which checks if the number of shapes within
set. A simple one is "<a href="/about/drc_ref_drc.xml#count">DRC#count</a>" which checks if the number of shapes within
a shape set is within a given range.
</p><p>
Obviously, "primary.count == 1" is always true. So using "count" primaries isn't

View File

@ -428,7 +428,7 @@ output(w, "width violations")</pre>
<a href="/about/drc_ref_layer.xml#overlapping">overlapping</a><br/>
<a href="/about/drc_ref_layer.xml#pull_inside">pull_inside</a>,
<a href="/about/drc_ref_layer.xml#pull_interacting">pull_interacting</a>,
<a href="/about/drc_ref_layer.xml#pull_outside">pull_overlapping</a>,
<a href="/about/drc_ref_layer.xml#pull_overlapping">pull_overlapping</a>,
These methods are available as in-place operations as well:<br/>
<a href="/about/drc_ref_layer.xml#select_covering">select_covering</a>,
<a href="/about/drc_ref_layer.xml#select_interacting">select_interacting</a>,

View File

@ -129,11 +129,11 @@ module DRC
# methods are provided:
#
# @ul
# @li "\global#polygons": converts edge pairs to polygons @/li
# @li "\global#extended", "\global#extended_in", "\global#extended_out": converts edges to polygons @/li
# @li "\global#first_edges", \global#second_edges": extracts edges from edge pairs @/li
# @li "\global#edges": decomposes edge pairs and polygons into edges @/li
# @li "\global#corners": can extract corners from polygons @/li
# @li "\DRC#polygons": converts edge pairs to polygons @/li
# @li "\DRC#extended", "\DRC#extended_in", "\DRC#extended_out": converts edges to polygons @/li
# @li "\DRC#first_edges", \DRC#second_edges": extracts edges from edge pairs @/li
# @li "\DRC#edges": decomposes edge pairs and polygons into edges @/li
# @li "\DRC#corners": can extract corners from polygons @/li
# @/ul
#
# The following example decomposes the primary polygons into edges:
@ -174,8 +174,8 @@ module DRC
#
# @ul
# @li Edge vs. edge and edge vs. polygon booleans @/li
# @li Edge vs. polygon interactions ("\global#interacting", "\global#overlapping") @/li
# @li Edge sampling ("\global#start_segments", "\global#centers", "\global#end_segments") @/li
# @li Edge vs. polygon interactions ("\DRC#interacting", "\DRC#overlapping") @/li
# @li Edge sampling ("\DRC#start_segments", "\DRC#centers", "\DRC#end_segments") @/li
# @/ul
#
# @h3 Filters @/h3
@ -183,14 +183,14 @@ module DRC
# Filter operators select input polygons or edges based on their properties. These filters are provided:
#
# @ul
# @li "\global#area": selects polygons based on their area @/li
# @li "\global#perimeter": selects polygons based on their perimeter @/li
# @li "\global#area_ratio": selects polygons based on their bounding box to polygon area ratio @/li
# @li "\global#bbox_aspect_ratio": selects polygons based on their bounding box aspect ratio @/li
# @li "\global#relative_height": selects polygons based on their relative height @/li
# @li "\global#bbox_min", "\global#bbox_max", "\global#bbox_width", "\global#bbox_height": selects polygons based on their bounding box properties @/li
# @li "\global#length": selects edges based on their length @/li
# @li "\global#angle": selects edges based on their orientation @/li
# @li "\DRC#area": selects polygons based on their area @/li
# @li "\DRC#perimeter": selects polygons based on their perimeter @/li
# @li "\DRC#area_ratio": selects polygons based on their bounding box to polygon area ratio @/li
# @li "\DRC#bbox_aspect_ratio": selects polygons based on their bounding box aspect ratio @/li
# @li "\DRC#relative_height": selects polygons based on their relative height @/li
# @li "\DRC#bbox_min", "\DRC#bbox_max", "\DRC#bbox_width", "\DRC#bbox_height": selects polygons based on their bounding box properties @/li
# @li "\DRC#length": selects edges based on their length @/li
# @li "\DRC#angle": selects edges based on their orientation @/li
# @/ul
#
# For example, to select polygons with an area larger than one square micrometer, use:
@ -214,7 +214,7 @@ module DRC
# use the respective dimension for filtering the polygon.
#
# Note that it's basically possible to use the polygon filters on any input - computed and secondaries.
# In fact, plain "area" for example is a shortcut for "\global#primary.area" indicating that
# In fact, plain "area" for example is a shortcut for "\DRC#primary.area" indicating that
# the area of primary shapes are supposed to be computed.
# However, any input other than the primary is not necessarily complete or it may
# consist of multiple polygons. Hence the computed values may be too big or too small.
@ -230,9 +230,9 @@ module DRC
# The predicates available currently are:
#
# @ul
# @li "\global#rectangles": Filters rectangles @/li
# @li "\global#squares": Filters squares @/li
# @li "\global#rectilinear": Filters rectilinear ("Manhattan") polygons @/li
# @li "\DRC#rectangles": Filters rectangles @/li
# @li "\DRC#squares": Filters squares @/li
# @li "\DRC#rectilinear": Filters rectilinear ("Manhattan") polygons @/li
# @/ul
#
# For the same reason as explained above, it's recommended to use these predicates
@ -324,7 +324,7 @@ module DRC
# out = l1.drc((primary & secondary(l2)).area > 1.0)
# @/code
#
# The "\global#secondary" operator indicates that "l2" is to be used as secondary input to the "drc" function. Only
# The "\DRC#secondary" operator indicates that "l2" is to be used as secondary input to the "drc" function. Only
# in this form, the operators of the boolean AND can be reversed:
#
# @code
@ -340,7 +340,7 @@ module DRC
# Obviously the primary is a simple one: it consists of a single shape, because
# this is how the loop operates. Derived shape sets however can be more complex.
# "Quantifiers" allow assessing properties of the complete, per-primary shape
# set. A simple one is "\global#count" which checks if the number of shapes within
# set. A simple one is "\DRC#count" which checks if the number of shapes within
# a shape set is within a given range.
#
# Obviously, "primary.count == 1" is always true. So using "count" primaries isn't
@ -596,49 +596,49 @@ CODE
# against numeric values. For example, "bbox_height < 2.0" will select all primary shapes whose
# bounding box height is less than 2 micrometers. See \Layer#drc for more details about comparison
# specs. Plain "bbox_min" is equivalent to "primary.bbox_min" - i.e. it is used on the primary
# shape. Also see \global#bbox_min.
# shape. Also see \DRC#bbox_min.
# %DRC%
# @name bbox_width
# @brief Selects primary shapes based on their bounding box width
# @synopsis bbox_max (in condition)
#
# See \Layer#drc, \bbox_height and \global#bbox_height for more details.
# See \Layer#drc, \bbox_height and \DRC#bbox_height for more details.
# %DRC%
# @name bbox_max
# @brief Selects primary shapes based on their bounding box height or width, whichever is larger
# @synopsis bbox_max (in condition)
#
# See \Layer#drc, \bbox_max and \global#bbox_max for more details.
# See \Layer#drc, \bbox_max and \DRC#bbox_max for more details.
# %DRC%
# @name bbox_min
# @brief Selects primary shapes based on their bounding box height or width, whichever is smaller
# @synopsis bbox_max (in condition)
#
# See \Layer#drc, \bbox_min and \global#bbox_min for more details.
# See \Layer#drc, \bbox_min and \DRC#bbox_min for more details.
# %DRC%
# @name bbox_aspect_ratio
# @brief Selects primary shapes based on the aspect ratio of their bounding boxes
# @synopsis bbox_aspect_ratio (in condition)
#
# See \Layer#drc, \bbox_aspect_ratio and \global#bbox_aspect_ratio for more details.
# See \Layer#drc, \bbox_aspect_ratio and \DRC#bbox_aspect_ratio for more details.
# %DRC%
# @name relative_height
# @brief Selects primary shapes based on the ratio of height and width of their bounding boxes
# @synopsis relative_height (in condition)
#
# See \Layer#drc, \relative_height and \global#relative_height for more details.
# See \Layer#drc, \relative_height and \DRC#relative_height for more details.
# %DRC%
# @name area_ratio
# @brief Selects primary shapes based on the ratio of bounding box and polygon area
# @synopsis area_ratio (in condition)
#
# See \Layer#drc, \area_ratio and \global#area_ratio for more details.
# See \Layer#drc, \area_ratio and \DRC#area_ratio for more details.
%w(
bbox_height
@ -669,7 +669,7 @@ CODE
# polygons in the layer.
#
# Without a layer argument, "area" represents an area filter for primary shapes in
# \global# expressions (see \Layer#drc and \global#area for more details).
# \global# expressions (see \Layer#drc and \DRC#area for more details).
# %DRC%
# @name hulls
@ -704,7 +704,7 @@ CODE
# total perimeter of all polygons in the layer.
#
# Without a layer argument, "perimeter" represents a perimeter filter for primary shapes in
# \DRC# expressions (see \Layer#drc and \global#perimeter for more details).
# \DRC# expressions (see \Layer#drc and \DRC#perimeter for more details).
# %DRC%
# @name rectangles
@ -748,7 +748,7 @@ CODE
# This function can be used with a layer argument. In this case it
# is equivalent to "layer.length" (see \Layer#length). Without a layer
# argument, "length" represents the edge length filter on the primary shape edges in
# \DRC# expressions (see \Layer#drc and \global#length for more details). In this context,
# \DRC# expressions (see \Layer#drc and \DRC#length for more details). In this context,
# the operation acts similar to \Layer#with_length.
# %DRC%
@ -757,7 +757,7 @@ CODE
# @synopsis angle (in condition)
#
# "angle" represents the edge orientation filter on the primary shape edges in
# \DRC# expressions (see \Layer#drc and \global#angle for more details). In this context,
# \DRC# expressions (see \Layer#drc and \DRC#angle for more details). In this context,
# the operation acts similar to \Layer#with_angle.
%w(