next up previous contents index
Next: The !togrid Command: Move Up: Layout Editing Previous: The !polyrev Command: Reverse   Contents   Index


The !noacute Command: Eliminate Acute Angles

Syntax: !noacute
This command will look at each currently selected polygon. For vertices that form an acute angle, vertices will be added so that no angle is acute, i.e. the sharp point is clipped off. This command is useful for preprocessing the database for flash conversion or other functions where acute angles are undesirable. It does not prevent DRC errors, and in fact may produce them. It also produces tiny (order of the layer's minimum dimension or one micron, if the minimum width for the layer is not given) changes to the layout. For example, consider a group of five or more polygons, each one of which is a pie section, that together form a disk. Running this command will produce a hole in the center, where the angles are clipped.

The algorithm works as follows. For each vertex Vn of a polygon, check the angle formed with adjacent vertices Vn-1 ,Vn+1 . If the angle is acute, construct a circle around Vn where the radius is the minimum of the layer's minimum dimension or the distance to the nearest of Vn-1 ,Vn+1 . Find the intersections of the circle with segments Vn ,Vn-1 and Vn ,Vn+1 . Replace the vertex Vn with these two points.


next up previous contents index
Next: The !togrid Command: Move Up: Layout Editing Previous: The !polyrev Command: Reverse   Contents   Index
Stephen R. Whiteley 2022-05-28