查找无位号器件的SKILL(开源)
功能:1.该SKILL用于查找器件有无位号,并将无位号的器件打印到报表中。
2.会自动跳过本身就无位号的器件(比如定位孔等)。
3.可直接点击报表中的坐标,跳转到指定器件的位置。
4.自动高亮无位号的器件。
代码:/****************************************************/
/* Title :find symbol no refdes */
/* Execute Command :find_symbol_no_refdes */
/* Author :Vivien Luo */
/* Creation Date :2013-09-16 */
/* Update : */
/* Web site :www.allegro-skill.com */
/* E-maial :admin@allegro-skill.com */
/****************************************************/
axlCmdRegister("find_symbol_no_refdes" 'find_symbol_no_refdes)
defun(find_symbol_no_refdes ()
let((curVisible symbols logfile sym txt norefdes)
logifile = outfile("./find_symbol_no_refdes.log")
fprintf(logifile "------------------------------------------\n")
fprintf(logifile "Find symbol no refdes report \n")
fprintf(logifile " Author : Vivien Luo \n")
fprintf(logifile " E-mail : admin@allegro-skill.com \n")
fprintf(logifile "Date&Time : %s \n" getCurrentTime())
fprintf(logifile "------------------------------------------\n")
fprintf(logifile "Refdes\t\t\tLocation\n")
;visible the layers
axlVisibleLayer("PIN/TOP" t)
axlVisibleLayer("PIN/BOTTOM" t)
axlVisibleLayer("REF DES/SILKSCREEN_TOP" t)
axlVisibleLayer("REF DES/SILKSCREEN_BOTTOM" t)
axlVisibleLayer("PACKAGE GEOMETRY/SILKSCREEN_TOP" t)
axlVisibleLayer("PACKAGE GEOMETRY/SILKSCREEN_BOTTOM" t)
axlVisibleUpdate(t)
symbols = axlDBGetDesign()->symbols
foreach(sym symbols
norefdes = t
when(sym->refdes
foreach(txt axlDBGetAttachedText(sym)
when(txt->layer == "REF DES/SILKSCREEN_TOP" || txt->layer == "REF DES/SILKSCREEN_BOTTOM"
norefdes = nil
)
)
when(norefdes
fprintf(logifile "%s\t\t\t(%P)\n" sym->refdes sym->xy)
axlHighlightObject(sym)
)
)
)
close(logifile)
axlUIViewFileCreate("./find_symbol_no_refdes.log" "Find Symbol No Refdes- www.allegro-skill.com" nil)
)
)
欢迎新手积极提出不明白的地方。。。。
虽然用不到,但还是谢谢你,并祝你节日快乐. wolf343105 发表于 2013-9-18 16:29 static/image/common/back.gif
虽然用不到,但还是谢谢你,并祝你节日快乐.
嘿嘿,你也节日快乐哦 虽然用不到,但还是谢谢你 不错,可以用到 不错,辛苦了
谢谢分享 load("find_no_refdes.il")这样对吗:)谢谢 遊樂天空 发表于 2013-11-22 16:34 static/image/common/back.gif
load("find_no_refdes.il")这样对吗谢谢
是的,参考:
http://www.allegro-skill.com/thread-306-1-1.html
http://www.allegro-skill.com/thread-112-1-1.html 谢谢lz