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

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    以前用过这个功能,就是在命令行输入1显示的是第一层的器件,孔,线,然后2就切换到第二层,以此类推;3 s/ B+ r- t( c8 k8 r. u
    内层的话只显示线和孔,当然,route keepout也是显示出来的,我用script录制功能试过,但是效果不太好……% _7 B0 Z! `( S5 b7 t
    然后同理,输入ka可以显示所有的route keepout,输入pbt可以显示TOP层的placebound,等等~; ~7 m; L3 M1 j1 H$ s: r
    请教哪位大神有什么好的方法来实现下~
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    推荐
     楼主| 发表于 2015-8-7 16:57 | 只看该作者
    owencai 发表于 2014-9-19 10:08
    - }3 _  q" k# u# @9 L$ o$ o可能用别的语句实现吧!继续研究,共同研究

    & d$ E+ e! \. C+ V/ Q最终搞定了,用了一个小skill搞定了
      s/ s  Q5 `1 y3 E* P: BaxlCmdRegister("c_layer" 'c_layer ?cmdType "interactive")
    4 \6 B# ?3 V6 A
    ; G$ H3 W, d' b6 Y# D3 O% h- S( idefun(c_layer (@optional (layer ""))
    9 u4 B. u6 y* |9 \9 s- o0 _let((allLayer countLayer)
    ) S8 m2 a$ j% h# E& I' @0 @        allLayer = axlGetParam("paramLayerGroup:ETCH")->groupMembers7 D  m& ]; i/ t
            countLayer = length(allLayer)
    8 ^( o* H) f$ U# u        if(layer != "" && atoi(layer)4 @, a# A' o7 Y: S' [* r. s) }- N0 a+ a
                    then5 J$ K/ }3 `! x- a
                            layer = atoi(layer)
    " S! w, \/ F/ J0 c+ S. m                        if( layer <= countLayer && layer > 04 f! p6 l9 W* Q9 R
                                    then
    : p. g9 o  C+ n) D                                        axlVisibleDesign(nil)
    " {- J6 C1 b- J* e& u" y0 y                                        axlVisibleLayer(strcat("ETCH/" nthelem(layer allLayer)) t)
    . H9 k0 u% x+ Z3 H: x( I                                        axlVisibleLayer(strcat("PIN/" nthelem(layer allLayer)) t)
    6 l. a2 C+ H& K, [4 {                                        axlVisibleLayer(strcat("VIA CLASS/" nthelem(layer allLayer)) t)    3 S. k) B: d$ J) l
                                            axlVisibleLayer(strcat("DRC ERROR CLASS/" nthelem(layer allLayer)) t)
      q1 p% _7 x# X3 l                                        axlVisibleLayer(strcat("Board Geometry/Outline") t)
    8 j# I8 i0 K% ]2 c                                        axlVisibleUpdate(t)
      a) D) U% J% e/ C                                        axlUIWPrint(nil "Swtich layer complet...")$ g) C7 w' W" O7 v: o
                                    else; Z1 j7 V) T: p
                                            axlUIWPrint(nil "Error,Wrong layer argument!
    - [0 }) [- f3 M4 W* s7 f                        );end if% l5 J5 v8 o& }. d
                    else5 `+ h. x% Q& T
                            axlUIWPrint(nil "Please Input argument...")
    & U: ^; B! U& e: y4 }3 J. e, c        );end if
    1 o: p+ o4 d) ^- y6 q% c& T);end let
    7 ^5 u* a8 f4 t, h. l);end defun. W) U  L; S& W7 e: ~9 u+ ^

    " S0 E8 N' V% H: H9 E" R, U0 O# ]/ I! @7 Q
    . ]2 D) o6 Z% b8 `& {
    把这个skill加载进allegro,然后输入命令就可以了
    9 y; X% e3 q/ X0 {9 N或者在env文件里面加快捷命令1 2 3 4 ...就可以实现用数字换层
    5 U* z. Z2 [1 }: ?9 M

    评分

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

    查看全部评分

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

    [LV.1]初来乍到

    推荐
     楼主| 发表于 2014-9-19 08:15 | 只看该作者
    owencai 发表于 2014-9-18 16:54
    6 V! N+ q( J( K' _funckey z8 'color -globvis off'! l: B- H( H, \, \8 z0 w! P. Z+ P: @! L
      全部关掉命令,
    . H8 p, L- W' s6 S: r. F: a) _还有你加的那条color -toggle "Via class/Top"我 ...
    % t/ a% ^& y: k% M
    哦,对了,我这边还有个问题……中间层每次的叠层都不一样,在env文件里面写:
    ) v& x, s# d9 c) _4 W5 {0 l2 R3 `7 talias 2 'color -globvis off;color -toggle "Via Class/L02_*";color -toggle "Etch/L02_*";color -toggle "Board Geometry/Outline"'$ B2 ~3 K8 L1 i+ x: z
    我尝试用星号代替,可是无法识别2 \& N- L0 d/ s% E5 p' A
    不知道这个要怎么描述……
  • TA的每日心情
    开心
    2023-2-12 15:39
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2014-9-11 21:20 | 只看该作者
    Skill论坛有个skill,输入命令L1,显示第一层,L2显示第二层,感觉用起来不错哦,
    $ |2 k! J; q# K# x- q; y% v还有一种快捷键设置,但是只能显示器件和线,过孔无法显示,现在用手机上,明天早上再上传,你到时候再研究下能不能改成全部显示,# f6 V; ?& }9 n6 x6 y
    另:录制的应该可以吧,不好用么?
  • TA的每日心情
    开心
    2023-2-12 15:39
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
    发表于 2014-9-12 08:20 | 只看该作者
    funckey zt1 'color -toggle "Package Geometry/Silkscreen_top"'    #控制顶层丝印
    + R3 J/ w8 ^8 M3 p& {( h% i& zfunckey zb1 'color -toggle "Package Geometry/Silkscreen_bottom"' #控制底层丝印
    8 u* `4 Y: S' Y, M+ t* P  S你可以根据上面的语句编你想要的层,route keepout
    ) w5 L( e0 y. b7 Y: X' d# M+ Z: y下面是按1显示器件和线的快捷键,但是不显示过孔,你研究下,看能不能完善下,' T) f# J: I3 v5 b7 c  n3 E
    funckey z1 'color -toggle "Pin/Top";color -toggle "Etch/Top"'
    ( M, J9 y/ f# X+ y* V( R) Qfunckey 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
    * y& c1 v# q% b( J5 t/ B" Tfunckey zt1 'color -toggle "Package Geometry/Silkscreen_top"'    #控制顶层丝印
    . K) L8 |1 A( V* u0 |funckey zb1 'color - ...

    * z8 y# r" z2 I" Y好的,灰常感谢~我自己再研究一下。
    5 a$ M& Q+ g8 W- [- i3 D用script录制的显示的是一步一步的,然后以前用的是输了命令过后直接显示的,所以觉得方法可能不对……
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    5#
     楼主| 发表于 2014-9-12 10:14 | 只看该作者
    zuoyy 发表于 2014-9-12 08:33( j  W% o: a; G# f! v' _
    好的,灰常感谢~我自己再研究一下。) a, j) I* }, G+ `" J! T
    用script录制的显示的是一步一步的,然后以前用的是输了命令过后直 ...

    9 l3 {6 Z9 S0 ?& D8 P$ G那个孔的可以加一条color -toggle "Via Class/Top";然后就能显示孔了,然后最好把funckey改成alias,这样好像就是通过命令行而不是快捷键
    1 `7 I7 u4 f2 j0 O8 f我刚才尝试了下,这个是可以显示的,但是好像只能开,不能在开的同是关掉其他层……( k% p, v# `' l' f4 E8 ]
    那个在color里面有个Global Visibility可以全局的全开和全关,这个想要通过命令行怎么实现?
    - a- w7 n, [7 Y/ P' h! Q如果实现了得话就可以在这些语句前面加一句all off,然后就能把其他的全部关掉,只开我们想要的那些层。
  • TA的每日心情
    开心
    2023-2-12 15:39
  • 签到天数: 1 天

    [LV.1]初来乍到

    6#
    发表于 2014-9-18 16:54 | 只看该作者
    本帖最后由 owencai 于 2014-9-18 17:05 编辑 ' y. G/ Z/ J2 d4 i/ u) m3 [& ~4 ^
    zuoyy 发表于 2014-9-12 10:14' Q8 s! ^4 W* y4 A3 j
    那个孔的可以加一条color -toggle "Via Class/Top";然后就能显示孔了,然后最好把funckey改成alias,这样 ...

    9 r7 B0 O) r/ B6 m8 A. X, L$ S: R; c. ?  [: ?, x
    funckey z8 'color -globvis off'0 E+ H9 P3 K& E1 X
      全部关掉命令,4 _" e5 I' G2 `
    还有你加的那条color -toggle "Via class/Top"我这里是没有用的,显示E- Unmatched quote 我的是16.3 的,
    $ \8 l1 e7 ~$ u+ u7 g+ v' _
    7 {" N: V' H8 ^  }9 S/ y. ?搞不懂,正在测试中 ' o- P, ^; `5 B- l8 Q
    # a4 R( c8 D, H2 q/ t
    经过测试可以用,嘿嘿,不能把这个语句直接复制到命令行执行,否则会出错,直接放在ENV里就可以,
  • TA的每日心情
    奋斗
    2020-7-15 15:35
  • 签到天数: 1 天

    [LV.1]初来乍到

    7#
     楼主| 发表于 2014-9-19 08:09 | 只看该作者
    owencai 发表于 2014-9-18 16:546 t# E0 D5 V2 G( P
    funckey z8 'color -globvis off'
    , l; l8 _6 B+ O4 l$ G  全部关掉命令,( n# N3 j, m% I
    还有你加的那条color -toggle "Via class/Top"我 ...
    $ y$ }( E2 W6 F$ t' q+ C1 ^7 t. a
    哦,感谢~这个命令找不到……后来用录制的scr代替了这一步……, u3 a7 Q' d! w- `4 |
    我的env里面这么写的:# o8 C' _  A( f' c- A
    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"'
    , }6 t  h2 @; |1 `0 m" B2 M我等下把第一步的改一下,用命令执行要快一点,scr文件执行有点慢. s# \' D) [# ~
    那个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
    ) f7 u/ Q9 X& r# ?4 z1 p1 R不能用*号代替,系统识别不了这个subclass,只能在命名层的时候将名字与ENV里一样!
    4 M* G/ F4 c1 q* X5 T
    呃……这样啊……但是我以前用过这个功能啊……叠层不可能每次都一样的……
    3 \4 t2 H0 n6 b6 k以前公司用的是按几就是第几层,然后每次的叠层都不一样的,层的名字也不一样,但是没有改过ENV里面的东西……- Z& C2 u( i7 i# ^- c8 Y$ R# s: V
    好后悔当时怎么没有研究下……以为是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-8-24 02:50 , Processed in 0.125000 second(s), 25 queries , Gzip On.

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

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

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