【求助】帮我看下附件的skill怎么用
附件skill主要作用是批量报告CLINE的长度。可以直接拷贝到excel里面。主要用处是板子调等长后,再把调好的线数据放入表格,看是否pass。用过intel的芯片,应该知道这要求。之前我用的是打包的skill自动加载的,我现在用不了,但是需要这个功能,所以找到这个skill,但是用普通的load我加载不了。请大神帮我看下代码。这个skill怎么用的。加一句axlCmdRegister("Length_Report" 'Length_Report) 你要结果不是点一根线就生成一根线的长度吧?
Net Length Report
Allan Wu (2003/12/25)
-----------------------------------------
1) R_VGA_HSYNC 7350.345
Total length : 7350.345
-----------------------------------------
点一根就生成一根,点多根就报告多根线。我今天试下你的办法。先谢谢你了 我还提示错误,undefined function_tempFile.能不能加我扣扣啊,这边我传不上图,我扣扣传你看看。84659039 defir 发表于 2016-4-27 22:31
你要结果不是点一根线就生成一根线的长度吧?
Net Length Report
我还有提示错误,能帮我看下? sujuanyu888 发表于 2016-5-1 11:02
我还有提示错误,能帮我看下?
/*
* Net Length Report For Allegro 14.2
*
* Allan Wu (2003/12/25)
*
* 1. Function Key F9 Define
* 2. Set Select Filter CLINES
*/
axlCmdRegister("Length_Report" 'Length_Report)
procedure( Length_Report()
popup = axlUIPopupDefine(nil
(list (list "Done" `axlFinishEnterFun)
(list "Cancel" `axlcancelEnterFun)
))
axlUIPopupSet(popup)
(axlClearSelSet)
(axlSetFindFilter ?enabled(list "noall" "clines" "nameform")
?onButtons(list "noall" "clines"))
axlOpenFindFilter()
port = outfile("./lengthReport.txt")
;port = axlDMOpenLog("lengthReport")
fprintf(port " Net Length Report\n")
fprintf(port " Allan Wu (2003/12/25)\n")
fprintf(port "-----------------------------------------\n")
fprintf(port "-----------------------------------------\n")
axlDMClose(port)
logWindow = axlUIViewFileCreate("lengthReport.txt" "Net Length Report" nil)
)
(while (axlSelect)
cpaths = axlGetSelSet()
total = 0
items = nil
if((logWindow != nil) axlUIWClose(logWindow))
logWindow = nil
port = outfile("./lengthReport.txt")
fprintf(port " Net Length Report\n")
fprintf(port " Allan Wu (2003/12/25)\n")
fprintf(port "-----------------------------------------\n")
foreach(path cpaths
segments = path->segments
pathlen = 0
foreach(segment segments
box = segment->startEnd
lx = caar(box)
ly = cadar(box)
rx = caadr(box)
ry = cadadr(box)
pathlen = pathlen + sqrt( (lx-rx)**2+(ly-ry)**2 )
)
total = total + pathlen
items = cons(list(path->net->name pathlen) items)
)
cpaths = sortcar(items nil)
bknet = caar(cpaths)
bklen = 0
count = 1
foreach( path cpaths
if( (bknet==car(path))
then
bklen = bklen + cadr(path)
else
fprintf(port "%2d)\t%-15s\t%.3f\n" count bknet bklen)
count = count + 1
bknet = car(path)
bklen = cadr(path)
)
)
fprintf(port "%2d)\t%-15s\t%.3f\n" count bknet bklen)
fprintf(port "\nTotal length : %.3f\n" total)
fprintf(port "-----------------------------------------\n")
axlDMClose(port)
if( (logWindow==nil)
then
logWindow = axlUIViewFileCreate("lengthReport.txt" "Net Length Report" nil)
else
(axlUIViewFileReuse logWindow "lengthReport.txt" "Net Length Report" nil)
)
)
if((logWindow != nil) axlUIWClose(logWindow))
axlUIPopupSet(nil)
) sujuanyu888 发表于 2016-5-1 11:02
我还有提示错误,能帮我看下?
用我修改后的试试吧 defir 发表于 2016-5-2 22:07
用我修改后的试试吧
我按照你的skill,执行后,点不了东西,提示图片上错误,而且都退不出来,咋回事啊? 我这是手动加载的。自动加载到文件里,直接软件都打不开。手动加载我打的是:skill load ‘’length_report.il‘’
页:
[1]
2