本文最后更新于88 天前,其中的信息可能已经过时,如有错误请发送邮件到daoshilaoqi@qq.com
一、Overview
Type: layer operation
Purpose: 选择与坐标系x 轴的较小角度幅度满足给定约束条件的边。
二、Usage
Angle layer constraint
Output: edge
三、Input & parameter
- layer:可以是 original layer,可以是 derived layer,也可以是 layer 组成的集合,还可以是edge layer。
- constraint:在 “约束” 主题中第 68 页表 2 – 2 的 “约束表示法” 列中列出的必需约束。约束必须包含浮点数(以度为单位解释),且必须大于或等于 0 但小于或等于 90,不能指定约束大于 90。
四、Description
选择所有相对于坐标系 x 轴具有较小角度幅度且符合约束条件的图层边。
每条边相对于坐标系的 x 轴有两个角度:一个较小幅度的角度和一个较大幅度的角度。下图展示了这两个角度。Angle 操作始终计算 0 到 90 度(包括 0 度和 90 度)之间的较小角度幅度。
从数学角度,若严格要求只能是锐角(即大于 0° 且小于 90° ),在设定约束条件时,应避免使用等于 0° 或 90° 的约束。例如,使用 “> 0 < 90” 这样的约束,而非 “≥ 0 ≤ 90” 。这样就能确保所选边与 x 轴形成的较小角度幅度严格处于锐角范围。
所有angle相关的操作,只能检测0 ~ 90度之间(包括0度和90度),还可参考 “Not Angle”(非角度)、“Drawn Acute”(绘制锐角)、“Drawn Angled”(绘制角度)、“Flag Acute”(标记锐角)、“Flag Angled”(标记角度)、“Exclude Acute”(排除锐角)、“Exclude Angled”(排除角度)和 “Deangle”(去除角度)等操作。
五、Test cases
Test rules list:
Rule name | Description | Op | Value |
OD.R.1 | The angle of OD | == | 45° |
NW.R.1 | Shapes must be orthogonal or on a 45 degree angle |
Test deck rules:
DRC SELECT CHECK OD.R.1 NW.R.1
OD.R.1 { @ The angle of OD == 45°
angle OD >= 0 < 45
angle OD > 45 <= 90
}
NW.R.1 { @ Shapes must be orthogonal or on a 45 degree angle
angle NW > 0 < 45
angle NW >45 < 90
}
Test patterns:
Highlight results:
问题:OD.R.1和NW.R.1左上角我都设置的是正交旋转45度,为什么右侧边Highlight呢?
原因:我的OD和NW是在正交图形的基础上进行rotate 45度得到的,会有可能导致offgrid,这样就不是45度了。
解决方法:建议重新按照45度来画,而不是通过正交图形旋转得到。
旋转会导致snap,从而不on grid