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

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    以前用过这个功能,就是在命令行输入1显示的是第一层的器件,孔,线,然后2就切换到第二层,以此类推;/ o# D2 Q/ l/ i+ G0 j
    内层的话只显示线和孔,当然,route keepout也是显示出来的,我用script录制功能试过,但是效果不太好……
    % F, l' h0 r* G5 _6 U! W然后同理,输入ka可以显示所有的route keepout,输入pbt可以显示TOP层的placebound,等等~( A( |% J" ]- ?9 o. E# H
    请教哪位大神有什么好的方法来实现下~
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    推荐
     楼主| 发表于 2015-8-7 16:57 | 只看该作者
    owencai 发表于 2014-9-19 10:08
    3 _+ Q# s* o3 ~, L可能用别的语句实现吧!继续研究,共同研究

    ) q5 ~; n) K5 f- _" I' s6 i最终搞定了,用了一个小skill搞定了  s4 K% w: ~( ]/ v+ n
    axlCmdRegister("c_layer" 'c_layer ?cmdType "interactive")
    * Y. M+ I. W5 U2 V  T; s- o( h+ k2 _7 I; J' M
    defun(c_layer (@optional (layer ""))
    , O3 P; ]  L) L7 Q$ V% C2 t: y  @3 Zlet((allLayer countLayer)8 V# ~( R" \- R7 V4 Y7 `+ U
            allLayer = axlGetParam("paramLayerGroup:ETCH")->groupMembers# m6 d, u/ u  o: d* d9 F
            countLayer = length(allLayer)! ?  B% {9 t. i* P2 F
            if(layer != "" && atoi(layer)6 n; ^% _0 n0 G( I& g/ a) h
                    then
    1 H0 {3 v7 q& w( Z  `+ j- u                        layer = atoi(layer)% N1 x- e& C8 K
                            if( layer <= countLayer && layer > 0- A, F& G8 \3 q. m5 e
                                    then+ P5 Z$ c. V% o1 V& T9 m$ o. ~
                                            axlVisibleDesign(nil)! a9 h& B) c8 r/ ]
                                            axlVisibleLayer(strcat("ETCH/" nthelem(layer allLayer)) t)  \4 k' t" W% c9 B: j# T8 ]+ h
                                            axlVisibleLayer(strcat("PIN/" nthelem(layer allLayer)) t)& N% Q: ]) n4 E
                                            axlVisibleLayer(strcat("VIA CLASS/" nthelem(layer allLayer)) t)   
    " u/ v) e* J( c* Y% s                                        axlVisibleLayer(strcat("DRC ERROR CLASS/" nthelem(layer allLayer)) t). q  ]# E6 z+ s6 q
                                            axlVisibleLayer(strcat("Board Geometry/Outline") t)  R3 n( V, q% @) f+ e! p7 L/ e) @' ~
                                            axlVisibleUpdate(t)1 f, ^! M8 h# w, r6 M# B6 P
                                            axlUIWPrint(nil "Swtich layer complet...")
    - Y3 b1 h% s1 H  r9 l0 O! \                                else# U2 q) m* V3 {$ A: f: v# T: L
                                            axlUIWPrint(nil "Error,Wrong layer argument!
    2 e8 Q- O6 I' O5 u3 G                        );end if
    # _, a6 \# N) }; g                else
    ' D9 M+ r" |& o7 A4 t, d                        axlUIWPrint(nil "Please Input argument...")' T6 b1 _2 j! t# Z4 v% L! W
            );end if
    + _' C3 y- |0 z0 }, r);end let, ?' A' M- ]1 P
    );end defun# f, J  b. |/ M/ A+ D1 M& m

    0 D- Q' S) A6 C# w# {7 x* [2 F0 d- `- a7 u1 r

    4 @4 H' p2 ]7 o4 E1 R: Z6 R" }4 |把这个skill加载进allegro,然后输入命令就可以了
    % A) z+ ~/ R) c" U3 N或者在env文件里面加快捷命令1 2 3 4 ...就可以实现用数字换层) S; m1 H) A& H7 w4 G$ }4 [

    评分

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

    查看全部评分

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

    [LV.1]初来乍到

    推荐
     楼主| 发表于 2014-9-19 08:15 | 只看该作者
    owencai 发表于 2014-9-18 16:54( z" c. U3 y( O8 m1 o
    funckey z8 'color -globvis off'
    , ], ~0 j5 `+ Q. {4 u% M! w4 R- t9 I  全部关掉命令," R- d6 ]( X, C
    还有你加的那条color -toggle "Via class/Top"我 ...

    / V& n1 d' c' l( k: O+ T! n哦,对了,我这边还有个问题……中间层每次的叠层都不一样,在env文件里面写:) a( R; G1 O/ d4 X$ y) u  i6 W
    alias 2 'color -globvis off;color -toggle "Via Class/L02_*";color -toggle "Etch/L02_*";color -toggle "Board Geometry/Outline"'% {8 N' y; [% L2 _' s
    我尝试用星号代替,可是无法识别
    : [5 s, @; }+ p" Y6 ]+ m( J  M不知道这个要怎么描述……
  • TA的每日心情
    开心
    2023-2-12 15:39
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2014-9-11 21:20 | 只看该作者
    Skill论坛有个skill,输入命令L1,显示第一层,L2显示第二层,感觉用起来不错哦,
    ) _7 f$ [* `' n) d: B还有一种快捷键设置,但是只能显示器件和线,过孔无法显示,现在用手机上,明天早上再上传,你到时候再研究下能不能改成全部显示,
    2 d8 @: J5 p! ^4 x另:录制的应该可以吧,不好用么?
  • TA的每日心情
    开心
    2023-2-12 15:39
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
    发表于 2014-9-12 08:20 | 只看该作者
    funckey zt1 'color -toggle "Package Geometry/Silkscreen_top"'    #控制顶层丝印7 I' b" t0 Q, d! A; i; ?' s
    funckey zb1 'color -toggle "Package Geometry/Silkscreen_bottom"' #控制底层丝印
    9 p% D. ]0 x8 B; w6 G% [你可以根据上面的语句编你想要的层,route keepout
    $ U  d9 g# O, R下面是按1显示器件和线的快捷键,但是不显示过孔,你研究下,看能不能完善下,# s3 G4 w, S$ R( |
    funckey z1 'color -toggle "Pin/Top";color -toggle "Etch/Top"' . X( z- k  q2 Y+ ~7 z! M' S
    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
    9 I; i5 D$ d7 g" K; \1 Qfunckey zt1 'color -toggle "Package Geometry/Silkscreen_top"'    #控制顶层丝印
    4 i$ b5 d5 h3 O2 A0 B8 _funckey zb1 'color - ...
      {- r0 {* v6 d9 P. m
    好的,灰常感谢~我自己再研究一下。, H, j( G: n; b5 f4 ]" J
    用script录制的显示的是一步一步的,然后以前用的是输了命令过后直接显示的,所以觉得方法可能不对……
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    5#
     楼主| 发表于 2014-9-12 10:14 | 只看该作者
    zuoyy 发表于 2014-9-12 08:33+ p* C4 d9 k" G9 b2 H1 n+ V
    好的,灰常感谢~我自己再研究一下。2 o2 C/ h! L$ q
    用script录制的显示的是一步一步的,然后以前用的是输了命令过后直 ...
    : }+ }& c0 U  O4 x
    那个孔的可以加一条color -toggle "Via Class/Top";然后就能显示孔了,然后最好把funckey改成alias,这样好像就是通过命令行而不是快捷键' H) b1 ]) Y! F; e$ D
    我刚才尝试了下,这个是可以显示的,但是好像只能开,不能在开的同是关掉其他层……
    $ H& U3 I$ j# \/ u那个在color里面有个Global Visibility可以全局的全开和全关,这个想要通过命令行怎么实现?
    1 Y+ @$ ^8 ?; e1 B. P$ a+ {9 l2 m如果实现了得话就可以在这些语句前面加一句all off,然后就能把其他的全部关掉,只开我们想要的那些层。
  • TA的每日心情
    开心
    2023-2-12 15:39
  • 签到天数: 1 天

    [LV.1]初来乍到

    6#
    发表于 2014-9-18 16:54 | 只看该作者
    本帖最后由 owencai 于 2014-9-18 17:05 编辑
    5 I; O# V. n* ?- Z
    zuoyy 发表于 2014-9-12 10:145 k# Q1 \) R5 L6 M0 \6 p$ u
    那个孔的可以加一条color -toggle "Via Class/Top";然后就能显示孔了,然后最好把funckey改成alias,这样 ...

    ! N2 b: H7 M3 u
    : I8 l1 B. Y3 }funckey z8 'color -globvis off'
    5 R) E  \$ t1 R, m0 O8 x2 M1 W" p  全部关掉命令,
    # ]4 s. N* o7 Q还有你加的那条color -toggle "Via class/Top"我这里是没有用的,显示E- Unmatched quote 我的是16.3 的,
    ) G. u- i( Q. X3 w% H  W& @* e1 C, x& a
    搞不懂,正在测试中
    - R  g9 \) u7 F0 s7 [$ S, h' f" G. B8 E2 {1 [! T% [/ @
    经过测试可以用,嘿嘿,不能把这个语句直接复制到命令行执行,否则会出错,直接放在ENV里就可以,
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    7#
     楼主| 发表于 2014-9-19 08:09 | 只看该作者
    owencai 发表于 2014-9-18 16:540 _- q7 \9 R; }1 ^0 n9 U: |
    funckey z8 'color -globvis off'6 B: h& l" N, E4 M: H' r& `5 H
      全部关掉命令,9 e0 J* {; v2 ~/ t7 V
    还有你加的那条color -toggle "Via class/Top"我 ...

    4 `5 l! |* H8 s/ I5 B哦,感谢~这个命令找不到……后来用录制的scr代替了这一步……2 N, K+ p4 @  N
    我的env里面这么写的:  @* [  I- D3 b
    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"'
    0 J: o8 ?# P% `, X+ E* g! U; R7 h: y我等下把第一步的改一下,用命令执行要快一点,scr文件执行有点慢* h( n& ^8 P/ z" b* J
    那个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: c2 ]! a  s7 t' G# U  h
    不能用*号代替,系统识别不了这个subclass,只能在命名层的时候将名字与ENV里一样!
    # ^' E8 }- L( y4 K9 p& ^1 H/ ~
    呃……这样啊……但是我以前用过这个功能啊……叠层不可能每次都一样的……& Y8 J! F: h8 y/ J9 f
    以前公司用的是按几就是第几层,然后每次的叠层都不一样的,层的名字也不一样,但是没有改过ENV里面的东西……- A, y* c" u4 N, \; Z; ~6 W
    好后悔当时怎么没有研究下……以为是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-10-9 02:34 , Processed in 0.171875 second(s), 25 queries , Gzip On.

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

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

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