找回密码
 注册
12
返回列表 发新帖
楼主: tonii聪
打印 上一主题 下一主题

SKill分享:你还在为找换层走线而烦恼吗?

[复制链接]
  • TA的每日心情
    奋斗
    2025-2-7 15:34
  • 签到天数: 33 天

    [LV.5]常住居民I

    16#
     楼主| 发表于 2022-8-15 15:28 | 只看该作者
    leo539 发表于 2022-8-15 11:32
    slon与已有s快捷键冲突,怎么修改?

    你可以试下插入一个菜单调用,或者定义一个快捷键给slon。

    该用户从未签到

    17#
    发表于 2022-9-1 09:22 | 只看该作者

    楼主你这个贡献设置的好高,30个贡献我得攒15天才能攒到,等我以后富裕了再来下载
  • TA的每日心情
    奋斗
    2025-2-7 15:34
  • 签到天数: 33 天

    [LV.5]常住居民I

    18#
     楼主| 发表于 2022-9-2 14:31 | 只看该作者
    几周过去了,分享一下新的源码吧,反正也没啥高级的算法。
    更新了shadow功能,多选高亮等等。

    1. if(axlVersion('version)>16.6
    2.         axlCmdRegister("slon" 'show_layers_of_net ?cmdType "interactive" ?doneCmd 'axlFinishEnterFun ?cancelCmd 'axlCancelEnterFun ?undo t)
    3.         axlCmdRegister("slon" 'show_layers_of_net ?cmdType "interactive" ?doneCmd 'axlFinishEnterFun ?cancelCmd 'axlCancelEnterFun);定义快捷键,16.6以及以下版本要去掉?undo t,17.2 028补丁以前也不支持?undo t
    4. )

    5. (defun show_layers_of_net ()
    6. prog( ()
    7.         axlSetFindFilter( ?enabled list( "NOALL" "CLINES" "VIAS" "SHAPES")  ?onButtons list( "CLINES" "VIAS" "SHAPES") );选择过滤器为CLINES VIAS SHAPES
    8.         mypopup = axlUIPopupDefine( nil
    9.                 (list (list "Done" "axlDBTransactionCommit(_slonTransactionMark), axlFinishEnterFun()")
    10.                 (list "Oops" "axlDBTransactionOops(_slonTransactionMark)");右键菜单的Oops用于返回上一步
    11.                 (list "Cancel" "axlDBTransactionRollback(_slonTransactionMark), axlVisibleSet(slon_oldVis), axlCancelEnterFun()"))
    12.         )
    13.         axlUIPopupSet( mypopup)
    14.         axlClearSelSet()
    15.        
    16.         slon_shdMode = axlColorShadowGet('mode);保留旧的shadow开关
    17.         slon_shdactiveLayer = axlColorShadowGet('activeLayer)
    18.         slon_shdhighlighted = axlColorShadowGet('highlighted)
    19.         slon_shdpercent = axlColorShadowGet('percent)
    20.        
    21.         slon_addSelect = nil;收集选中的CLINES VIAS SHAPES
    22.         slon_oldVis = axlVisibleGet();保留旧的Color
    23.         _slonTransactionMark = axlDBTransactionStart();标记开始的Mark点
    24.         while(axlSelect()
    25.                 axlColorShadowSet('mode t)
    26.                 axlColorShadowSet('activeLayer t)
    27.                 axlColorShadowSet('highlighted t)
    28.                 axlColorShadowSet('percent 20)
    29.                 when(_slonTransactionMark axlDBTransactionMark(_slonTransactionMark));标记Mark点用来返回上一步
    30.                 foreach(slon_select axlGetSelSet()
    31.                         axlHighlightObject(slon_select)
    32.                         slon_addSelect = cons(slon_select slon_addSelect)
    33.                         case(slon_select->objType
    34.                                 ("via"
    35.                                         axlHighlightObject(axlDBGetConnect(slon_select t))
    36.                                         slon_addSelect = append(axlDBGetConnect(slon_select t) slon_addSelect)
    37.                                         foreach(slon_layer axlDBGetConnect(slon_select t)~>layer
    38.                                                 axlVisibleLayer(slon_layer t)
    39.                                         )
    40.                                 )
    41.                                 ("path"
    42.                                         axlHighlightObject(axlDBGetConnect(slon_select t))
    43.                                         slon_addSelect = append(axlDBGetConnect(slon_select t) slon_addSelect)
    44.                                         foreach(slon_pin_via axlDBGetConnect(slon_select t)
    45.                                                 axlHighlightObject(axlDBGetConnect(slon_pin_via t))
    46.                                                 slon_addSelect = append(axlDBGetConnect(slon_pin_via t) slon_addSelect)
    47.                                                 foreach(slon_layer axlDBGetConnect(slon_pin_via t)~>layer
    48.                                                         if(slon_layer != nil
    49.                                                                 axlVisibleLayer(slon_layer t)
    50.                                                         )
    51.                                                 )
    52.                                         )
    53.                                 )
    54.                                 ("shape"
    55.                                         if(slon_select->net then
    56.                                                 axlHighlightObject(axlDBGetConnect(slon_select t))
    57.                                                 slon_addSelect = append(axlDBGetConnect(slon_select t) slon_addSelect)
    58.                                                 foreach(slon_pin_via_cline axlDBGetConnect(slon_select t)
    59.                                                         axlHighlightObject(axlDBGetConnect(slon_pin_via_cline t))
    60.                                                         slon_addSelect = append(axlDBGetConnect(slon_pin_via_cline t) slon_addSelect)
    61.                                                         foreach(slon_layer axlDBGetConnect(slon_pin_via_cline t)~>layer
    62.                                                                 if(slon_layer != nil
    63.                                                                         axlVisibleLayer(slon_layer t)
    64.                                                                 )
    65.                                                         )
    66.                                                 )
    67.                                         else
    68.                                                 axlClearSelSet()
    69.                                         )
    70.                                 )
    71.                         );end case
    72.                 )
    73.         );end while
    74.         _slonTransactionMark = nil
    75.         axlDehighlightObject(slon_addSelect)
    76.         axlVisibleUpdate(nil)
    77.         axlColorShadowSet('mode slon_shdMode)
    78.         axlColorShadowSet('activeLayer slon_shdactiveLayer)
    79.         axlColorShadowSet('highlighted slon_shdhighlighted)
    80.         axlColorShadowSet('percent slon_shdpercent)
    81. );end prog
    82. );end show_layers_of_net
    复制代码

    该用户从未签到

    19#
    发表于 2022-10-15 09:49 | 只看该作者
    对于信号层不多的板子,确实高亮加

    该用户从未签到

    20#
    发表于 2022-10-15 09:56 | 只看该作者
    能动态说明下什么意思吗?就是在哪层走线就可以直接单独走在那层?

    该用户从未签到

    21#
    发表于 2022-10-17 09:43 | 只看该作者
    能弄个动态图说明下吗

    该用户从未签到

    22#
    发表于 2022-10-21 09:14 | 只看该作者
    加载后没反应,当前层还是没打开

    该用户从未签到

    24#
    发表于 2023-3-2 00:26 | 只看该作者
    楼主可以帮忙到邮箱下嘛 贡献不够。。。645497289@qq.com  感谢

    点评

    18楼有源码……  详情 回复 发表于 2023-3-2 09:14
  • TA的每日心情
    奋斗
    2025-2-7 15:34
  • 签到天数: 33 天

    [LV.5]常住居民I

    25#
     楼主| 发表于 2023-3-2 09:14 | 只看该作者
    A645497289 发表于 2023-3-2 00:26
    楼主可以帮忙到邮箱下嘛 贡献不够。。。  感谢

    18楼有源码……
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-6-1 00:09 , Processed in 0.078125 second(s), 21 queries , Gzip On.

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

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

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