找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 3850|回复: 13
打印 上一主题 下一主题

dxp过滤器(PCB Filter)语法技巧收集,希望大家集思广益,打造layout效率巅...

[复制链接]

6

主题

100

帖子

1655

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1655
跳转到指定楼层
1#
发表于 2013-9-14 23:00 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 dianzi1987 于 2013-9-21 11:07 编辑
# {6 [# |) P3 f
' u' A2 ]9 o8 M, Y3 }- [在论坛搜索了PCB Filter,出来的结果着实不多,突发奇想,一定有很多坛友都希望更好的使用过滤器语法来提高效率,没错,我也不例外。
6 `4 p1 V* d/ }+ ~% r! Y  w一下对我知道的语法列举出来,希望看到的坛友也能写出你的喜爱语法。
9 O) g) U& L5 K+ E9 {* w' w以下是引用阿莫论坛  主题” 【物尽其用】将AltiumDesigner(Protel升级版)的PCB设计打造成利器——订制应用、操做“中29楼,先让大家了解以下。原帖内容请自行搜索。
# A6 y7 H( n8 v8 }8 q; p% _/ T
expr,表达式5 u; |& }6 T5 M8 I. G/ k5 O
iscomponent,对象是元件- K9 i3 B: _! ^
and,并且8 |! L3 S# _/ d& K0 A3 L
onbottomlayer,在底层
7 _$ ?( @! ], k& n3 `mask=true,进行掩码操作
  ?- q5 v" t0 k# C4 lapply=true,应用确认
. m9 l( ]' T8 |" n( e6 A* f$ C/ [0 z. M6 k% Y1 z2 m  C# Q2 ]/ u- f
5 v- X( ^+ W" L1 e6 @( e* |
我试着将 iscomponent and onbottomlayer 输入到PCB Filter中(按F12出来,也是在星罗棋布的帖子中学的),下面的动作中选mask,按Apply后可以完成相同的效果。
+ r6 X; G# I( h! e感觉脚本定制就是将一连串的操作录制成一个宏,实现一键完成任务。3 E0 y: b9 `; D; w" J; a' P  _3 p3 H
( D% n& E. d( l# i! b& }
这些脚本中的关键字在完整版的帮助文件中应该有。不过我们不需要研究完整的脚本语法,有个简单的帮办法可以学习:在快捷键Y的菜单中,打开 Filter For 下拉菜单,下面有一些例子,观察主要是两类% d9 Y9 ]$ x7 C; ^5 w+ [$ A1 F
IsXXXX,这个主要过滤的目标对象的大类
* X6 Y$ R: O8 V" ^1 D4 oOnXXXX,分布在哪一层) e: g, c3 a8 U& p7 E: ?1 F7 V
用 And 连接这两个条件,然后依葫芦画瓢,可以组合出常用的大多数操作
9 G6 ?+ X1 x8 t& y3 g. `* ^0 r
$ _: R4 {2 L, s另一个办法是在 PCB Filter 对话中点 Builder,出来个对话框可以定义非常详细的条件,但它们的语法比前面的要复杂0 Q9 r: U% ?/ n; ]. X5 k
比如选层,它是用一个函数 OnLayer() 带上层的名字为参数如OnLayer("TopLayer"),而且前的方法中只需要一个宏名 OnTopLayer即可
6 P1 p( U6 t; Y, q' g
7 U: ~1 f& K; J6 A* [& d
! a( Y8 O' ~. [3 M; f7 P$ Z# v; x! l
对于我常用喜欢定制到收藏菜单,然后按Y调用。
5 {; x6 Z2 p( i1.全部元件: iscomponent  输入过滤器后点击应用,即可多多有元件进行操作。
( E( ^$ U0 x! M7 P  Q2 M2.全部过孔 :isvia& I" i* G; {' a& h" A
还是来张图片吧!
6 R1 W" N6 F* D4 ~! O; h
* {' M3 @/ G; u" B, F9 D' [5 ?) n这些定义收藏的,都可以按Y键快速调用。
% i0 }# M8 J1 ]5 G+ B6 [/ j
) d9 m) M. Y, C7 D2 w像90度270度 顶(底)层元件,多用于制作元件位置图时使用。+ J  {/ P  `5 y9 L0 ]
非GND焊盘过孔 打泪滴时候使用,
2 I* D; W, @2 w: R* \0 T全部多边形 元件 等等,需要操作的时候使用。
" Q4 o% F( s, {5 t  @* B以上都是我比较喜欢的过滤器语法。1 h' n) h" r* R5 @8 x* m

, Z/ j- Z3 S' J- `$ ?
6 |9 D% g- G! @3 M: E6 _
1 c7 J( C- E' K3 t- @; v8 w& Q5 \6 U9 l( Z
再来说个我喜欢的多边形规则定制,主要是为了满热焊盘花孔连接与实心连接的功能。
! a  G( o# F+ t; C6 K首先多边形的铺铜的时候,需要填写多边形名称。例如: 填写任意都可以,只要自己能分清,我不喜欢英文(英文盲{:soso_e149:} )所以,就用咱们的汉语拼音来代替了,所以,实心的为“shi”{:soso_e128:} 莫笑啊。# Z% J6 u( o+ e% W0 H$ s
然后规则: 8 ~. a1 ~  d9 T6 |2 F
经过这样的设置之后,需要热焊盘的就在铺铜的时候写入“hua”,需要实心的就写入“shi”,是不是非常方便呢。; a; Q9 e8 Y/ m: g
另外,可以在多边形管理器里选中多边形后来创建多边形连接类型。
' ^5 }6 y, a9 B. Z3 ]" v# p语法为:IsNamedPolygon('hua')  或者IsNamedPolygon('shi')

& _/ E; o  \/ V8 g# k- a' l8 S0 f
IS***为选择的对象,这个想知道都有哪些对象可以按下F12后输入is后面就会弹出很多对象,看看需要的选择,这个很省事啊。
" @0 j! [9 H9 {$ B) W
6 A) P7 Z1 {, b# y如果遇到需要某一个元件的某一个引脚需要花焊盘连接怎么办呢?
7 }6 v. f+ ~. @" O3 d6 ]这个就需要用到焊盘类的设置了,设置之后可以对个别焊盘铺铜满足需要了,这个是规则下的设置,如有朋友需要,请告知。! r! O6 r& g' }3 n

* f$ N5 V) Z0 O5 S6 C% _待续。。。, A( s. D6 r1 I9 U* L! j  b1 q  c
5 q& W/ q' [; W! ^" \( Q
4 s: N2 Y, @% Q: U" n7 K* m

" }" C. T, f, e. E3 ?

点评

期望置顶,已做地址转载...  发表于 2013-9-19 17:34

评分

参与人数 2贡献 +10 收起 理由
xiaofan1979 + 5
wanghanq + 5

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏4 支持!支持! 反对!反对!

0

主题

219

帖子

4070

积分

五级会员(50)

Rank: 5

积分
4070
推荐
发表于 2013-9-16 10:37 | 只看该作者
基本上從Example中的10個範例,已經可以當作參考來學習.建議先了解這些範例.- x. U# M3 o. X' k4 H3 o! I8 q5 R
0.        Hidden comments strings
. I- R1 c0 a) R  P. NIsComment And (Hide = True)
) Z6 F) v5 ^9 T1 X# m+ B- }, v1.        Locked components: a, M4 Q7 h2 d5 {3 v3 w
IsComponent and (Locked = True), B& S) T$ A! U& H6 g0 [
2.        Pads and vias with a hole size between 15 and 30, B9 Y) H( t: r* R
(IsPad Or IsVia) And (HoleSize > 15) And (HoleSize < 30)
3 C8 K% |9 p. k9 R6 `* d( _; e3.        Teacks less than 2 units long
  C; Y6 G: w" D% r) hIsTrack And (Sqrt(Sqr(X1-X2) + Sqr(Y1-Y2)) < 2)( n& f5 P2 {  P* g/ o
4.        All testpoints+ ]/ O  w7 P& X8 V
(TestPointTop = True) Or (TestPointBottom = True)
' f8 Q3 Y2 j$ i  R5.        Component track and arc silkscreen primitives
3 \* a5 J8 q! n- F7 M3 ]; bOnSilkscreen And (IsTrack Or IsArc) And IsComponentPrimitive
( Q- ~5 m7 H" L8 W5 P: s8 f+ F6.        Components not on a 5 mil grid% O2 k2 R4 s: b& D. B6 y0 ^9 U4 C9 G! [
IsComponent And ((Frac(X1/5) <> 0) Or (Frac(Y1/5) <> 0))
5 a7 ^" i7 q0 v9 ]2 {; f7.        Signal layer tracks at an odd angle3 D+ u% o5 @, {
Not(IsHorizontal Or IsVertical Or IsOblique) And IsTrack And OnSignal
4 j. N# u- N% i6 u4 s1 g8.        Top signal layer keep objects9 Z+ L% S. n7 l2 B8 B2 d
IsKeepout And OnTopLayer
. r/ Z. @, J! A; a9.        Non-horizontal designators1 X, F/ d% z; u$ H5 {5 M
IsDesignator And (Rotation <> 0) And (Rotation <> 360)

评分

参与人数 1贡献 +5 收起 理由
wanghanq + 5

查看全部评分

6

主题

100

帖子

1655

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1655
3#
 楼主| 发表于 2013-9-14 23:04 | 只看该作者
沙发备用

6

主题

100

帖子

1655

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1655
4#
 楼主| 发表于 2013-9-16 11:25 | 只看该作者
icm 发表于 2013-9-16 10:37
  }* V& l  e' W基本上從Example中的10個範例,已經可以當作參考來學習.建議先了解這些範例.
3 G7 N8 _4 U1 |' w, c( }0.        Hidden comments strings
4 t7 T4 s! ]( E. Y# w+ ?3 F ...

: m7 S9 S8 o# t非常感谢你的支持,相信会有更多坛友会受益于此。

15

主题

1136

帖子

6571

积分

EDA365版主(50)

Rank: 5

积分
6571
5#
发表于 2013-9-19 17:33 | 只看该作者
本帖最后由 wanghanq 于 2013-9-25 20:22 编辑 & ]- H/ C+ y9 \# U( p4 G+ X) a+ c$ I

9 |8 y: p4 l; Z9 \' N# t+ dad10中怎么一次性删除所有走线和过孔还有铜皮
3 z. H4 g; J1 c5 _https://www.eda365.com/forum.php?mod=viewthread&tid=92090&fromuid=4169
! |8 }5 I4 _* C2 F/ v- K, T7 a& F! v, W9 B( X4 T( h- G
icm:( j. O& B  p2 D' n2 P
PCB Filter Panel填入以下語句- U  m4 a4 H4 Y. G- t% u# }
((IsPad and Not IsComponentPad) or IsVia or IsPoly or IsRegion or IsTrack or IsArc or IsFill) and OnSignal
! K: O% N* t) a4 h點擊Apply 接者 Delete.
/ |( j; H4 p& |! B9 {$ |7 w

% b  P% v- ?4 `+ s
* C: x7 Z8 n. t. [0 P5 F1 N7 r
ttgoer :- ~6 H! m6 v- |) H
给不懂语法的同志:# n9 S% h$ N! V
很简单的,S--free objects,deltete...就可以全部删除所有的走线。
4 z$ r  M  K* m不过,你可能需要先作以下一些操作,如果有相应顶目的话:
8 v& @2 D: Y+ ^; g; _1、关闭KO,TO,BO(防止删除相应层的板边框,丝印线)
  u' x3 k, b& O5 [2、把所有的PAD HIDE(防止删除定位孔)
8 G5 V8 G' J1 h7 U$ s
业余,多多指正指教。

5

主题

222

帖子

555

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
555
6#
发表于 2013-9-20 23:18 | 只看该作者
不错,很受用,支持高手发言交流经验

17

主题

425

帖子

9345

积分

六级会员(60)

Rank: 6Rank: 6

积分
9345
7#
发表于 2013-9-21 00:04 | 只看该作者
好贴,支持下!

49

主题

210

帖子

2288

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
2288
8#
发表于 2013-9-21 08:12 | 只看该作者
好贴,支持下

6

主题

100

帖子

1655

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1655
9#
 楼主| 发表于 2013-9-22 17:59 | 只看该作者
论坛的高手进来吧,自己顶。

0

主题

17

帖子

68

积分

二级会员(20)

Rank: 2Rank: 2

积分
68
10#
发表于 2013-10-5 21:04 | 只看该作者
{:soso_e179:}

4

主题

88

帖子

223

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
223
11#
发表于 2015-10-22 18:06 | 只看该作者
非常给力

2

主题

42

帖子

194

积分

二级会员(20)

Rank: 2Rank: 2

积分
194
12#
发表于 2015-10-28 13:12 | 只看该作者
哈哈,这个正是在下几年前发表的一个原创帖子,很荣幸被转载引用到EDA365论坛上。EDA365论坛是我非常喜欢的为数不多的几个论坛之一。希望抛砖引玉,大家发掘出更多更好的软件特性,方便大家使用。

0

主题

1829

帖子

2213

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
2213
13#
发表于 2016-10-21 15:25 | 只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-12-14 21:30 , Processed in 0.084003 second(s), 40 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表