转载自阿莫论坛,两年前看到的一个帖子了,今天重新整理一下,还是很方便的,特别是进行大规模PCB设计的时候,能剩很多事。
打造的理由:我们知道 AltiumDesigner(Protel 升级版)的 PCB 设计过程中,会陷入色彩斑斓的走线、元 件、过孔、覆铜等等的迷宫中,因此我们有必要化繁就简,突出自己想要操作的部分。我们知道 AltiumDesigner 或 Protel 提供了单层模式 shift+s,让你单看顶层、底层、多工层、丝印层……,它的这个功能不是很完善, 比如:顶层为当前层的时候按 shift+s,走线和顶层的元件并没有区别出来。还有:我们有时候想同时操作 顶层、底层的走线同时屏蔽其他层,那么 shift+S 显然达不到你的要求。
看看我目前正在、喜欢使用的过滤菜单:(左手点快捷键“Y”即可弹出)
点击“只操作电气走线”——也就是屏蔽掉掉诸如:过孔、焊盘、元件、覆铜……,将他们通通置为黑灰色, 只凸显电气走线,并只能操作电气走线。
点击“只操作底层走线”——也就是屏蔽掉诸如:顶层走线、过孔、焊盘、元件、覆铜……,将他们通通置为黑灰色,只凸显底层电气走线,并只能操作底层的走线。
其他的注入“只操作过孔”、“只操作顶层元件”、“只操作底层元件”,可以分别看到其他效果,以及得到相
|
过滤菜单在这里:
手工输入表达式:
只操作顶层走线的表达式为:expr=IsTrack and OnTopLayer|mask=True|apply=True 只操作底层走线的表达式为:expr=IsTrack and OnBottomLayer|mask=True|apply=True 只操作电气走线的表达式为:expr=IsTrack and IsElectrical|mask=True|apply=True 只操作过孔的表达式为: expr=IsVia|mask=True|apply=True 只操作顶层元件的表达式为:expr=IsComponent and OnTopLayer|mask=True|apply=True
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
各位根据自己的需要,写出各种不同的表达式来达到自己的目的,比如:我最近对焊盘、过孔补泪滴,我觉得不是所有的焊盘、过孔都需要补。插针插座之类连接器焊盘比较大,从 MCU 去往该焊盘的线比较 细,那么这个情况下连接器的焊盘需要补泪滴以增加应力。
你选择这个连接器元件,然后使用补泪滴,并勾选里面的只补你“选择的”选项,发现不起作用!因为 AltiumDesigner 只能识别你选择的焊盘而不是元件。你如果一个个去选焊盘,那么连接器有 40Pin 或更多, 那么显然不合适。这个时候你按快捷键 F12 弹出对话框写上 ispad and iscomponentselected,然后右边有个 selected 之类的选项要勾选上,再点 apply,就能迅速地全选你选择的元件的所有焊盘,然后你再补泪滴只补“选择的”——这样,你需要补的焊盘就都补了,不需要补的都没补。当然你也可以将刚才的表达式封装 成一个快捷键,就像我前面讲的。
回复【25 楼】zcllom 星罗棋布
-----------------------------------------------------------------------
学习了,力顶专研精神!不知道这些语法你是怎么搞出来的。那么只操作底层元件就应该是:expr=iscomponent and onbottomlayer|mask=true|apply=true
那么 expr= 是什么意思?其他的在 pcb filter -> helper 和 builder 可以找到相关的输入进去会的到同样的效果
(有点类似 drc 中的设置方法),也可以添加到喜欢选项里。在工具栏过滤器窗口下,点击下拉也有一些。我一般都是简单的键入一些常用的 如:iskeepout 、isconnection……没有楼主弄的漂亮!
-----------------------------------------------------------------------
“那么只操作底层元件就应该是:expr=iscomponent and onbottomlayer|mask=true|apply=true”,对!你还挺会 举一反三的。
expr 也就是 expression(表达式的缩写),如果只是在 Filter 里写过滤屏蔽,则不能写这个 expr,会出错的。 它必须出现在订制菜单的 parameters(参数)框中。
-----------------------------------------------------------------------
这个定制很方便,昨天晚上研究了下 expr,表达式 iscomponent,对象是元件
and,并且 onbottomlayer,在底层 mask=true,进行掩码操作 apply=true,应用确认
我试着将 iscomponent and onbottomlayer 输入到 PCB Filter 中(按 F12 出来,也是在星罗棋布的帖子中学的), 下面的动作中选 mask,按 Apply 后可以完成相同的效果。 感觉脚本定制就是将一连串的操作录制成一个宏,实现一键完成任务。
这些脚本中的关键字在完整版的帮助文件中应该有。不过我们不需要研究完整的脚本语法,有个简单的帮 办法可以学习:在快捷键 Y 的菜单中,打开 Filter For 下拉菜单,下面有一些例子,观察主要是两类 IsXXXX,这个主要过滤的目标对象的大类
OnXXXX,分布在哪一层
用 And 连接这两个条件,然后依葫芦画瓢,可以组合出常用的大多数操作
另一个办法是在 PCB Filter 对话中点 Builder,出来个对话框可以定义非常详细的条件,但它们的语法比前 面的要复杂
比如选层,它是用一个函数 OnLayer() 带上层的名字为参数如 OnLayer("TopLayer"),而且前的方法中只需 要一个宏名 OnTopLayer 即可
订制若干种过孔尺寸,以小键盘区的数字键做快捷键,3 表示 0.3 孔径的过孔、4 表示 0.4 孔径的快捷键、5…………,这样你想用任一种尺寸的过孔,都可以很方便地调出来。我知道 AltiumDesigner 本身
可以通过快捷键“shift+v”在走线过程中调用你填写好的各种尺寸过孔,但我单独放置过孔,要想改尺寸的
话,要按 Tab 键后改写过孔尺寸的数据,非常麻烦。因此我想改用下面的方法:
选择 Apply——“应用”,然后依次编辑各种尺寸的过孔在右边的窗口:
我就以 0.5mm 孔径的过孔举例子:(我把这个过孔的数据绑定到小键盘上的数字“5”,以后按小键盘上“5”,
鼠标上粘着一个这个尺寸的过孔):
本来 Altium 放置过孔默认用快捷键“P”+“V”,我现在用小键盘区的“.”来实现同样的功能:
上面我说到:Altium 放置过孔默认用快捷键“P”+“V”,现在用小键盘区的“.”订制了同样的功能。
我发现:用自己订制的过孔,比如按小键盘上 5 放置 0.5mm 孔径的过孔,你放到走线上,它居然不能获 取该走线的 net 名,过孔仍然是“No Net”,导致过孔、走线因为不同网络名而出现醒目的报警颜色。
究其原因:带有参数——只要在订制菜单中 Parameter 参数框里写了数据的,在放置到走线上时无法融于走线的网络。因此我在上面最后一个图里订制了一个不带参数的过孔,我按小键盘上的“.”得到过孔放下去时,它很好地和走线融合到一起了。
这个我目前还不知道怎么解决,我暂时用的方法是:先按小键盘上“3”或“4”或“5”或“6”得到想要的过孔后, 马上鼠标右键点一下把过孔从光标箭头上去掉,然后按一下小键盘上的“.”,这时鼠标光标上出现的过孔保 持了你刚才选择的尺寸,这个时候放到线上去就没问题了。