EDA365电子论坛网

标题: highlight via [打印本页]

作者: penny190    时间: 2010-10-12 11:29
标题: highlight via
  跪求各位大大,有highlight via 的SKILL可以分享嗎?
謝謝
作者: oday    时间: 2010-10-12 17:03
把需求写明确撒,这样大家才能帮你啊,你是要高亮所有的via吗?
作者: oday    时间: 2010-10-12 17:04
axlCmdRegister("hlvia" 'via_highlight)
procedure(via_highlight()
        Visible_List = axlVisibleGet()       
        groupMembers = axlGetParam("paramLayerGroup:ETCH")->groupMembers
        foreach(layer groupMembers               
                axlVisibleLayer(sprintf(nil "Via Class/%s" layer) t)
        )
        axlClearSelSet()
                axlSetFindFilter(?enabled '("NOALL" "Vias") ?onButtons '("Vias"))
        vias = axlGetSelSet(axlAddSelectAll())
        axlClearSelSet()
        foreach(via vias
                axlHighlightObject(via)
        )
        axlVisibleSet(Visible_List)
)
作者: penny190    时间: 2010-10-12 17:21
不好意思,我寫不夠清楚。
例如,BOARD上有三種VIA TYPE,我想個別highlight ,
所以想請問各位大大有沒有SKILL可以分享

謝謝
作者: oday    时间: 2010-10-12 17:29
本帖最后由 oday 于 2010-10-12 17:49 编辑

axlCmdRegister("hlvia" 'via_highlight)
procedure(via_highlight(name)
        Visible_List = axlVisibleGet()       
        groupMembers = axlGetParam("paramLayerGroup:ETCH")->groupMembers
        foreach(layer groupMembers               
                axlVisibleLayer(sprintf(nil "Via Class/%s" layer) t)
        )
        axlClearSelSet()
    axlSetFindFilter(?enabled '("NOALL" "Vias") ?onButtons '("Vias"))
        vias = axlGetSelSet(axlAddSelectAll())
        axlClearSelSet()
        foreach(via vias
                if(via->name == name then
                        axlHighlightObject(via)
                )
        )
        axlVisibleSet(Visible_List)
)
作者: oday    时间: 2010-10-12 17:30
本帖最后由 oday 于 2010-10-12 17:52 编辑

运行方法:比如我要高亮VIA16类型的via则
Skill >via_highlight(“VIA16”)
作者: penny190    时间: 2010-10-12 18:19
謝謝大大
作者: penny190    时间: 2010-10-13 09:50
不好意思oday大大,我試過您第一個highlight 全部VIA的SKILL是OK的,非常感謝,但我的資質愚笨,您個別highlight的SKILL,我一直失敗,不知道錯在哪,因為我對SKILL完全沒概念,全靠大家好心分享的SKILL
,我修改的SKILL跟執行發法如下,麻煩請oday大大,告知我哪的程序做錯了,謝謝

axlCmdRegister("hlvia" 'via_highlight)
procedure(via_highlight(via20d10)
        Visible_List = axlVisibleGet()        
        groupMembers = axlGetParam("paramLayerGroup:ETCH")->groupMembers
        foreach(layer groupMembers               
                axlVisibleLayer(sprintf(nil "Via Class/%s" layer) t)
        )
        axlClearSelSet()
    axlSetFindFilter(?enabled '("NOALL" "Vias") ?onButtons '("Vias"))
        vias = axlGetSelSet(axlAddSelectAll())
        axlClearSelSet()
        foreach(via vias
                if(via->name == name then
                        axlHighlightObject(via)
                )
        )
        axlVisibleSet(Visible_List)
)


在command:hlvia

卻出現- *Error* via_highlight: too few arguments (1 expected, 0 given) - nil
作者: oday    时间: 2010-10-13 13:15
程序你不用修改,via_highlight(via20d10),我本来传了个形参name,你改成这个怎么行呢?请改回去
使用方法:在command下
Command >skill load "via_highlight.il"
Command >hlvia "via20d10"
这样就可以了,注意引号和空格。最近比较忙没什么时间,要不就写一个窗体出来让你直接选via的类型然后高亮了
作者: penny190    时间: 2010-10-13 14:14
非常感謝oday大大,經過您的解說,可以執行了
真的非常的感謝
作者: oday    时间: 2010-10-13 14:30
我也才学习skill不久,大家一起相互学习,共同进步撒
作者: fft    时间: 2014-6-10 16:00
oday 发表于 2010-10-13 13:15
程序你不用修改,via_highlight(via20d10),我本来传了个形参name,你改成这个怎么行呢?请改回去
使用方 ...

为什么在 16.6下,没有高亮?
作者: yang-2200    时间: 2014-6-13 14:11
fft 发表于 2014-6-10 16:00
为什么在 16.6下,没有高亮?

在16.5也沒有高亮
作者: Ling    时间: 2021-8-11 17:57
oday 发表于 2010-10-13 13:15
程序你不用修改,via_highlight(via20d10),我本来传了个形参name,你改成这个怎么行呢?请改回去
使用方 ...

对我来说很有用的功能,谢谢分享





欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2