我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 16|回复: 3

[Skill/辅助工具] 下面是快速按顺序切换单个层面的skill源码,我想要在走线命令下运行这个skill,就是在无模状态下可以切换层,请问大神们我应该如何修改源码

[复制链接]
  • TA的每日心情
    开心
    昨天 14:08
  • 签到天数: 242 天

    [LV.8]以坛为家I

    7

    主题

    332

    回帖

    1087

    积分

    二级逆天

    积分
    1087

    终身成就奖

    发表于 4 天前 | 显示全部楼层 |阅读模式

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

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

    ×
    本帖最后由 陛下万年 于 2025-7-11 10:21 编辑

    axlSetAlias("switch_up" "SwitchLayer nil")
    axlSetAlias("switch_down" "SwitchLayer")

    axlCmdRegister( "SwitchLayer" 'SwitchLayer ?cmdType "interactive")
    defun( SwitchLayer (@optional (prev nil))
    prog((lEtchLayer sCurLayerName iNextLayerNo sNextLayer)
            lEtchLayer = setof(layer axlGetParam("paramLayerGroup:ETCH")->groupMembers nequal(axlDBGetLayerType(strcat("ETCH/" layer)) "PLANE"))
            sCurLayerName = cadr(parseString(axlGetActiveLayer() "/"))
            if( member(sCurLayerName lEtchLayer) then
                    if(prev then
                            iNextLayerNo = length(lEtchLayer) - length(member(sCurLayerName lEtchLayer))
                            when(iNextLayerNo < 1 iNextLayerNo = length(lEtchLayer))
                    else
                            iNextLayerNo = length(lEtchLayer) - length(member(sCurLayerName lEtchLayer)) + 2
                            when(iNextLayerNo > length(lEtchLayer) iNextLayerNo = 1)
                    )
            else
                    iNextLayerNo = 1
            )

            sNextLayer = nthelem(iNextLayerNo lEtchLayer)
            axlMsgPut("Current Layer:%L" sNextLayer)
            axlVisibleDesign(nil)
        axlVisibleLayer( strcat("ETCH/" sNextLayer) t )
            axlVisibleLayer( strcat("PIN/" sNextLayer) t )
            axlVisibleLayer( strcat("VIA CLASS/" sNextLayer) t )
            axlVisibleLayer( strcat("DRC ERROR CLASS/" sNextLayer) t )
        axlVisibleLayer( "BOARD GEOMETRY/OUTLINE" t )
            axlSetActiveLayer(strcat("ETCH/" sNextLayer))
            axlUIWRedraw(nil)

    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 14:08
  • 签到天数: 242 天

    [LV.8]以坛为家I

    7

    主题

    332

    回帖

    1087

    积分

    二级逆天

    积分
    1087

    终身成就奖

     楼主| 发表于 昨天 09:05 | 显示全部楼层
    有懂的大神?帮忙看下。谢谢了。
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 08:23
  • 签到天数: 275 天

    [LV.8]以坛为家I

    3

    主题

    363

    回帖

    1353

    积分

    二级逆天

    积分
    1353

    终身成就奖

    发表于 3 天前 | 显示全部楼层
    老吴不是已经做好了  还要你直接来搞?

    点评

    这位同学,请坐下!!!  详情 回复 发表于 昨天 16:26
    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 14:08
  • 签到天数: 242 天

    [LV.8]以坛为家I

    7

    主题

    332

    回帖

    1087

    积分

    二级逆天

    积分
    1087

    终身成就奖

     楼主| 发表于 昨天 16:26 | 显示全部楼层
    柒 发表于 2025-7-12 09:32
    老吴不是已经做好了  还要你直接来搞?

    这位同学,请坐下!!!
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    每日签到,有金币领取。


    Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

    本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

    ( 闽ICP备2024076463号-1 ) 论坛技术支持QQ群171867948 ,论坛问题,充值问题请联系QQ1308068381

    平平安安
    TOP
    快速回复 返回顶部 返回列表