rita188 发表于 2014-9-24 10:57:51

怎樣快速尋找via孔落在兩個pad 上

兩顆零件背對背擺放,via 孔同時落在這兩顆零件的pad 上,能快速找到這個孔嗎? 制程時會有漏錫情況.
多謝幫忙!!

二月花开早 发表于 2014-9-29 15:55:50

闲着也是闲着,友情赠送你这个skill:D
defun( xxx ()
let(
(vialist a b c p i j)

    p=outfile("./vialist.log")
    ;选择所有过孔
   axlClearSelSet()
    axlSetFindFilter( ?enabled list( "noall" "vias") ?onButtons list( "vias"))
    axlVisibleDesign(nil)
    axlVisibleLayer("via class" t)
    axlAddSelectAll()
    vialist=axlGetSelSet()
    j=0
    foreach(a vialist
        b=axlDBGetConnect(a t)
        i=0
        foreach(c b if(c->objType=="pin" then i=i+1))
        if(i>1 then
          fprintf(p "%L\n" a->xy);把via坐标输出到文件
          j=1
        )
    )
    close(p)
    ;有此类via,显示输出的文件
    if(j==1 then
        logWindow =axlUIViewFileCreate("vialist.log" "via Report" t)
    )
)
)

vivienluo 发表于 2014-9-24 11:50:51

{:soso__ad20c1d38827ff7e-ef5809ad88aed555-50f5acc3ff93237448a99ebc67367c63.jpg_1:}

rita188 发表于 2014-9-24 14:30:00

vivienluo 发表于 2014-9-24 11:50
{:soso__ad20c1d38827ff7e-ef5809ad88aed555-50f5acc3ff93237448a99ebc67367c63.jpg_1:}

群主,可以幫忙寫一個編程嗎?{:soso_e163:}

二月花开早 发表于 2014-9-29 09:40:08

选中所有via,然后一个一个检查有没有碰到多个焊盘
b=axlDBGetConnect(a t);a是其中的一个via
i=0
foreach(c b if(c->objType=="pin" then i=i+1)) ;i>1的话就是连到多个pin上

rita188 发表于 2014-9-29 10:59:34

高手,我不知道怎么用呢!可以教我嗎?輸入什么命令啊?
是下面的代碼嗎?
b=axlDBGetConnect(a t)
i=0
foreach(c b if(c->objType=="pin" then i=i+1)) ;i>1

二月花开早 发表于 2014-9-29 15:23:03

先选中所有via,然后用上面三行代码foreach检查每一个via

rita188 发表于 2014-10-29 14:03:06

大哥,要輸入什么命令啊?:funk:

vivienluo 发表于 2014-10-29 18:17:33

wall5831030 发表于 2014-10-29 18:10
老大   給解釋一下那個哥哥發的代碼被    不會用啊   我們都是小白

axlCmdRegister("ff" 'xxx)
把上面的加到文件开头,使用ff执行命令。
原理是就是查找过孔是否连接了两个盘。。。

rita188 发表于 2014-10-30 08:38:35

太棒了,已經試出來了.感謝老大分享...太厲害了 :D:D:D
页: [1]
查看完整版本: 怎樣快速尋找via孔落在兩個pad 上