找回密码
 注册
关于网站域名变更的通知
查看: 3815|回复: 11
打印 上一主题 下一主题

如何在Allegro里面设置用1234...序号命令来换层

[复制链接]
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2014-9-11 15:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    以前用过这个功能,就是在命令行输入1显示的是第一层的器件,孔,线,然后2就切换到第二层,以此类推;9 u0 o5 O1 `9 x7 i
    内层的话只显示线和孔,当然,route keepout也是显示出来的,我用script录制功能试过,但是效果不太好……1 t# o& S; Q6 W/ P
    然后同理,输入ka可以显示所有的route keepout,输入pbt可以显示TOP层的placebound,等等~
    * W5 c3 h) }& S( Z请教哪位大神有什么好的方法来实现下~
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    推荐
     楼主| 发表于 2015-8-7 16:57 | 只看该作者
    owencai 发表于 2014-9-19 10:08
    7 y) h! h, q$ k# \% G: X7 Z可能用别的语句实现吧!继续研究,共同研究
    % p7 \7 H& p$ s1 b1 L: m; `- i" g
    最终搞定了,用了一个小skill搞定了
    $ G' L# S9 v" {3 MaxlCmdRegister("c_layer" 'c_layer ?cmdType "interactive")
    6 U/ A; O: N6 R5 P  b9 l8 Z# ?8 T* K+ ^2 F# `: U& w$ ?  D
    defun(c_layer (@optional (layer ""))
    " z2 p# ~" |8 q" J& @$ Z4 qlet((allLayer countLayer)6 E' c  O* \' M: C9 T
            allLayer = axlGetParam("paramLayerGroup:ETCH")->groupMembers
    1 f2 V4 C+ B" F  `2 w3 o% m        countLayer = length(allLayer)
    8 \( d# z3 S' S$ s: Q6 Y        if(layer != "" && atoi(layer)
    ) X2 F$ N( U1 n                then4 t& c7 d! L/ W  X2 u$ q( W0 Z
                            layer = atoi(layer)/ k; x" ^& h' x6 W7 X+ X$ `- E
                            if( layer <= countLayer && layer > 07 V; a. X  Z5 c
                                    then, @/ w! H$ s) o
                                            axlVisibleDesign(nil)
    5 h; Q+ L& B& ^- |6 Q                                        axlVisibleLayer(strcat("ETCH/" nthelem(layer allLayer)) t)2 N% }- I; J& }3 q1 U
                                            axlVisibleLayer(strcat("PIN/" nthelem(layer allLayer)) t)* g3 z0 W0 n2 }2 Q
                                            axlVisibleLayer(strcat("VIA CLASS/" nthelem(layer allLayer)) t)    8 M7 K; ]5 C& b, A4 w5 T
                                            axlVisibleLayer(strcat("DRC ERROR CLASS/" nthelem(layer allLayer)) t)$ B& r5 f! J3 j- F
                                            axlVisibleLayer(strcat("Board Geometry/Outline") t)
    8 X* ~9 s  N& F2 x. y- h                                        axlVisibleUpdate(t)$ W; G; V1 R- Z5 B1 C
                                            axlUIWPrint(nil "Swtich layer complet...")4 B* p. O! M) j3 p1 j
                                    else! p- ?* ]4 s) S! V2 Z
                                            axlUIWPrint(nil "Error,Wrong layer argument! 8 A* Z( k# A3 z- C& X
                            );end if
    % O/ s/ p& I. @! S/ l( {( o                else+ h5 b. c) v& d. J% A
                            axlUIWPrint(nil "Please Input argument...")+ N1 F; X$ K0 _5 n* O% c/ v
            );end if 6 k* k; T( y2 W5 i5 X- g
    );end let
    ) K9 X7 D/ Q6 k) _7 R1 \);end defun7 C$ a) T: V8 r; i9 A1 L

    7 G$ T5 l& V6 l- j: k# E' j5 M% s- f' ]+ Q: y# C$ p8 j8 h

    8 O5 E. g& L% X; t+ z1 g把这个skill加载进allegro,然后输入命令就可以了
    & ^1 n! G3 M$ l) ]7 s$ h  C# A或者在env文件里面加快捷命令1 2 3 4 ...就可以实现用数字换层) \2 n7 T3 b* t. C- z

    评分

    参与人数 1威望 +2 收起 理由
    owencai + 2 你终于修炼成了啊,很给力!

    查看全部评分

  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    推荐
     楼主| 发表于 2014-9-19 08:15 | 只看该作者
    owencai 发表于 2014-9-18 16:54
    : l- t7 X' G/ {3 x2 v9 T9 Z' lfunckey z8 'color -globvis off'
    0 ]& c! X  c# t1 U9 C& w; g  全部关掉命令,- z1 ]: @4 ?$ X1 P* S
    还有你加的那条color -toggle "Via class/Top"我 ...
    3 c9 I9 k0 r' Y" I( z# [
    哦,对了,我这边还有个问题……中间层每次的叠层都不一样,在env文件里面写:/ d# X" K9 ?  |" f, M
    alias 2 'color -globvis off;color -toggle "Via Class/L02_*";color -toggle "Etch/L02_*";color -toggle "Board Geometry/Outline"'
    - f1 ]0 W" g2 S# H; N4 a我尝试用星号代替,可是无法识别
    0 n5 X, ?6 _4 U  x5 B不知道这个要怎么描述……
  • TA的每日心情
    开心
    2023-2-12 15:39
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2014-9-11 21:20 | 只看该作者
    Skill论坛有个skill,输入命令L1,显示第一层,L2显示第二层,感觉用起来不错哦,
    / d; k- Y6 a9 z, e1 ^# W还有一种快捷键设置,但是只能显示器件和线,过孔无法显示,现在用手机上,明天早上再上传,你到时候再研究下能不能改成全部显示,
    2 {/ o: S5 a1 i& F) m另:录制的应该可以吧,不好用么?
  • TA的每日心情
    开心
    2023-2-12 15:39
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
    发表于 2014-9-12 08:20 | 只看该作者
    funckey zt1 'color -toggle "Package Geometry/Silkscreen_top"'    #控制顶层丝印) T! \+ v% ?% o1 m9 @+ S3 s+ T
    funckey zb1 'color -toggle "Package Geometry/Silkscreen_bottom"' #控制底层丝印
    5 d% @3 w7 h+ }: j你可以根据上面的语句编你想要的层,route keepout* W4 r( h: K, v% i* n' |
    下面是按1显示器件和线的快捷键,但是不显示过孔,你研究下,看能不能完善下,
    $ A) V) ]/ ~+ }( ofunckey z1 'color -toggle "Pin/Top";color -toggle "Etch/Top"' ; p7 a; f: i, o+ C. L% b! l  u
    funckey z6 'color -toggle "Pin/BOTTOM";color -toggle "Etch/BOTTOM"'
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
     楼主| 发表于 2014-9-12 08:33 | 只看该作者
    owencai 发表于 2014-9-12 08:20
    , H# n. x3 T3 M8 R* Efunckey zt1 'color -toggle "Package Geometry/Silkscreen_top"'    #控制顶层丝印: E3 s' x; d2 }6 c+ O% F
    funckey zb1 'color - ...
    $ |1 m) S. G- F' a( y  {: S
    好的,灰常感谢~我自己再研究一下。% ~& I' c" P/ U0 j7 W8 |$ {
    用script录制的显示的是一步一步的,然后以前用的是输了命令过后直接显示的,所以觉得方法可能不对……
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    5#
     楼主| 发表于 2014-9-12 10:14 | 只看该作者
    zuoyy 发表于 2014-9-12 08:33
    % K+ c, W6 t1 P2 b2 e好的,灰常感谢~我自己再研究一下。6 d: L; }& M4 C: P$ R/ y
    用script录制的显示的是一步一步的,然后以前用的是输了命令过后直 ...

    # I8 f' x, J' _: L9 i那个孔的可以加一条color -toggle "Via Class/Top";然后就能显示孔了,然后最好把funckey改成alias,这样好像就是通过命令行而不是快捷键( F/ x4 j  T0 Z) }* w
    我刚才尝试了下,这个是可以显示的,但是好像只能开,不能在开的同是关掉其他层……
    2 O+ Q! U  a7 {: V2 T0 @那个在color里面有个Global Visibility可以全局的全开和全关,这个想要通过命令行怎么实现?
    ; i5 D/ C2 c: W; i! Z如果实现了得话就可以在这些语句前面加一句all off,然后就能把其他的全部关掉,只开我们想要的那些层。
  • TA的每日心情
    开心
    2023-2-12 15:39
  • 签到天数: 1 天

    [LV.1]初来乍到

    6#
    发表于 2014-9-18 16:54 | 只看该作者
    本帖最后由 owencai 于 2014-9-18 17:05 编辑
    0 F; f0 q7 f. D4 m6 U8 K
    zuoyy 发表于 2014-9-12 10:14
    + s, Y% ~& M8 h1 R0 i$ A1 Z- V那个孔的可以加一条color -toggle "Via Class/Top";然后就能显示孔了,然后最好把funckey改成alias,这样 ...

    2 x2 H, t( L' m$ E: [+ U9 {; |. s8 o" d0 }' Q9 W
    funckey z8 'color -globvis off'
    ( z; F/ J( x; D$ W  全部关掉命令,
    / |0 g2 g( @3 O# L还有你加的那条color -toggle "Via class/Top"我这里是没有用的,显示E- Unmatched quote 我的是16.3 的,( o6 K; K# a4 W
    1 `# z7 [* `* `. F! a/ l
    搞不懂,正在测试中
    ! g" l+ P# G6 z' G" H
    1 |' l  P9 ~$ t& X经过测试可以用,嘿嘿,不能把这个语句直接复制到命令行执行,否则会出错,直接放在ENV里就可以,
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    7#
     楼主| 发表于 2014-9-19 08:09 | 只看该作者
    owencai 发表于 2014-9-18 16:54
    1 d. f) g  H& r5 D8 K- v) p5 v: {  yfunckey z8 'color -globvis off'
    , a& `0 b4 X  i9 l  全部关掉命令,
    . s9 z( W6 w. H" c% U5 Z还有你加的那条color -toggle "Via class/Top"我 ...
    # g, ]' O2 x  t. j) k' n: }
    哦,感谢~这个命令找不到……后来用录制的scr代替了这一步……
    , T4 ?0 `% Y. V6 W我的env里面这么写的:# i& c5 e5 V8 `0 p$ f4 E
    alias T 'replay alloff;color -toggle "Via Class/Top";color -toggle "Pin/Top";color -toggle "Etch/Top";color -toggle "Package Geometry/Silkscreen_Top";color -toggle "Board Geometry/Outline"'2 F* f& q4 ~* k0 U% M2 W/ w
    我等下把第一步的改一下,用命令执行要快一点,scr文件执行有点慢/ J8 l* ]8 ?  w) j  Q2 A
    那个Via Class/Top我这边是可以的,你看一下你的那个层名称是不是这样命名的,这个好像还是区分大小写的
  • TA的每日心情
    开心
    2023-2-12 15:39
  • 签到天数: 1 天

    [LV.1]初来乍到

    9#
    发表于 2014-9-19 08:32 | 只看该作者
    不能用*号代替,系统识别不了这个subclass,只能在命名层的时候将名字与ENV里一样!
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    10#
     楼主| 发表于 2014-9-19 08:46 | 只看该作者
    owencai 发表于 2014-9-19 08:32: ?! g# E/ u" O
    不能用*号代替,系统识别不了这个subclass,只能在命名层的时候将名字与ENV里一样!

    . Q+ v. C8 `9 j& a! t呃……这样啊……但是我以前用过这个功能啊……叠层不可能每次都一样的……
    3 r$ F- k) v9 c' W2 l以前公司用的是按几就是第几层,然后每次的叠层都不一样的,层的名字也不一样,但是没有改过ENV里面的东西……9 t' Y; `: P, _, F* V% ]: Y
    好后悔当时怎么没有研究下……以为是Cadence软件自带的功能……
  • TA的每日心情
    开心
    2023-2-12 15:39
  • 签到天数: 1 天

    [LV.1]初来乍到

    11#
    发表于 2014-9-19 10:08 | 只看该作者
    可能用别的语句实现吧!继续研究,共同研究

    点评

    最终搞定了,用了一个小skill搞定了 axlCmdRegister("c_layer" 'c_layer ?cmdType "interactive") defun(c_layer (@optional (layer "")) let((allLayer countLayer) allLayer = axlGetParam("paramLayerGrou  详情 回复 发表于 2015-8-7 16:57
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-24 10:44 , Processed in 0.156250 second(s), 25 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表