本帖最后由 dianzi1987 于 2018-6-26 12:36 编辑 ) C/ N8 _* L) X1 ?
& m$ ~6 E8 R0 j4 Y- v9 pAD语法是精华,可以说,只有想不到的,没有做不到的。做好用过的语法可以添加到喜爱,按快捷键Y调用。当前用到的:! ^- O' k' F% n- `* o4 y. p# H
目的1:是选中,然后按需要编辑。% z! W, A% t2 r8 G
目的2:定义规则或者条件筛选3 z; x5 V( W" ]/ ?
. r- T9 H7 }6 C* @. T5 n0 y1.180度 0度 360度元件:IsComponent And(Rotation = 180)or IsComponent And(Rotation = 0)or IsComponent And(Rotation = 360) $ T0 F8 L- N4 t* w* E/ o8 V' a
2 .底层90度与270度元件:OnBottomLayer and IsComponent And(Rotation = 90)or OnBottomLayer and IsComponent And(Rotation = 270) - w' q7 U7 j! a
3. 顶层90度与270度元件:OnTopLayer and IsComponent And(Rotation = 90)or OnTopLayer and IsComponent And(Rotation = 270) 4.非GND网络焊盘:(ObjectKind = 'Via') And (Net <> 'GND') OR(ObjectKind = 'Pad') And (Net <> 'GND') 5.顶层元件: IsComponent and OnTopLayer 6.底层元件:IsComponent and OnBottomLayer 7.顶层到3.3V层面的过孔:(ObjectKind = 'Via') And (StartLayer = 'Top Layer') And (StopLayer = '3.3V')
5 I8 L: {, i* a8.选取的封装决定铺铜类型,规则设置用: HasFootprint('USB4PIN') 9.选取某一焊盘:Haspad 10.板挖空与电气部分短路设置为允许的语法。 11.IsBoardCutoutRegion 12.选择不是standard的元件,用在BOM数量对照上。 (ObjectKind = 'Component') And (ComponentType <> 'Standard')
- L& ^+ q4 P& [& R0 I
( a* p6 v" {* g0 [; _& ]以下来自网友“星罗棋布”,是通过定义命令菜单实现的,相对麻烦一些。 只操作顶层走线的表达式为:expr=IsTrack and OnTopLayer|mask=True|apply=True& Y6 P1 [3 z3 ^2 S4 v# h# p
只操作底层走线的表达式为:expr=IsTrack and OnBottomLayer|mask=True|apply=True
+ ^) V; N1 t! y只操作电气走线的表达式为:expr=IsTrack and IsElectrical|mask=True|apply=True0 [# E" b1 e/ h' t6 x- G' E. `1 |
只操作过孔的表达式为: expr=IsVia|mask=True|apply=True
' R# `, X: [- g( U9 i) I0 I4 e只操作顶层元件的表达式为:expr=IsComponent and OnTopLayer|mask=True|apply=True
1 `; l0 G' f3 x4 T1 U, G5 K- u+ Uexpr,表达式;( o9 U0 x0 p N
iscomponent,对象是元件;
4 G. @& E4 l4 E* T( jand,并且;/ Y! c, d' H1 m( x% `& q
onbottomlayer,在底层; F; D* J" `( r$ k
mask=true,进行掩码操作;1 e0 \' |# ?6 U* J4 E$ X
apply=true,应用确认。 * v! i( Q1 Z9 y# x3 C
|