找回密码
 注册
关于网站域名变更的通知
楼主: db-_-
打印 上一主题 下一主题

[SKILL分享]Draw Drill Hole钻孔内径绘制工具(源码)

  [复制链接]
  • TA的每日心情
    开心
    2025-7-16 15:01
  • 签到天数: 363 天

    [LV.8]以坛为家I

    16#
    发表于 2025-7-14 15:04 | 只看该作者
    学习一下,感谢大佬。
  • TA的每日心情
    开心
    2024-9-6 15:29
  • 签到天数: 1 天

    [LV.1]初来乍到

    18#
    发表于 2025-7-14 15:24 | 只看该作者
    666666666666666666666666666666666666666666666666666
  • TA的每日心情
    开心
    2024-9-6 15:29
  • 签到天数: 1 天

    [LV.1]初来乍到

    19#
    发表于 2025-7-14 15:32 | 只看该作者
    大佬,请教1个问题,我想要写1个等距离创建过孔的skill,如何点选1个过孔,然后按上下左右以等距离创建过孔?下面是我的代码,但是这个代码只能运行后再点选才能创建过孔,而且无法连续创建,怎么样先点选过孔,再创建
    1. defun( CopyViaBySameDimension (x_offset y_offset)
    2.     let((ViaDbid)
    3.         axlSetFindFilter(?enabled (list "noall" "VIAS") ?onButtons (list "VIAS"))
    4.         axlClearSelSet()
    5.         axlMsgPut("Select a via as reference...")
    6.         selectedVia = axlSingleSelectPoint()
    7.         ViaDbid = axlGetSelSet(selectedVia)                        ;获取选择对象的DBID
    8.                 ;unless(axlOKToProceed() axlShell("done"))
    9.                 when(ViaDbid
    10.                 padstackName = car(ViaDbid)->name      ;获取焊盘名称
    11.             ViaNet = car(ViaDbid)->net->name       ;获取当前选择过孔的网络名称
    12.                 ViaXY  = car(ViaDbid)->xy              ;获取当前选择过孔的坐标
    13.                 ViaRotation  = car(ViaDbid)->via->rotation  ;获取旋转角度
    14.                 ViaMirror  = car(ViaDbid)->via->mirrored  ;获取旋转角度

    15.                 x = xCoord(ViaXY)  ; 获取x坐标
    16.                 y = yCoord(ViaXY)  ; 获取y坐标
    17.                         ;点击左右则x变化,y不变
    18.                 x = x + x_offset
    19.                 ;点击上下则y变化,X不变
    20.                 y = y + y_offset
    21.                         ;unless(axlOKToProceed() axlShell("done"))
    22.                 newVia = axlDBCreateVia(padstackName , x:y , ViaNet, ViaMirror , ViaRotation , nil) ;创建过孔
    23.                         );end while
    24.                 when(newVia
    25.                         NewViaDbid = list(car(newVia))
    26.                     axlHighlightObject(NewViaDbid t)
    27.                 );end when
    28.                     
    29.     );end let   
    30. );end defun       
    复制代码

    点评

    Q:但是这个代码只能运行后再点选才能创建过孔 A:没明白你的意思,代码不都是运行后点选再创建过孔的吗? Q:而且无法连续创建 A:连续创建需要加一个while循环函数。随便找一个类似的支持循环点击的功能源码看看  详情 回复 发表于 2025-7-14 17:39
  • TA的每日心情
    奋斗
    2025-7-18 15:47
  • 签到天数: 634 天

    [LV.9]以坛为家II

    20#
    发表于 2025-7-14 15:54 | 只看该作者
    学习一下:):):)

    该用户从未签到

    21#
    发表于 2025-7-14 15:54 | 只看该作者
    学习一下了,感谢分享了
  • TA的每日心情
    开心
    2023-5-18 15:51
  • 签到天数: 63 天

    [LV.6]常住居民II

    22#
    发表于 2025-7-14 15:57 | 只看该作者
    謝謝您~學習學習~
  • TA的每日心情
    开心
    2025-7-18 15:53
  • 签到天数: 70 天

    [LV.6]常住居民II

    23#
    发表于 2025-7-14 16:37 | 只看该作者
    oh 不小心点错评分 再次感谢db大佬的开源

    该用户从未签到

    24#
    发表于 2025-7-14 17:19 | 只看该作者
    大佬  学习一下
  • TA的每日心情
    奋斗
    2025-7-7 15:38
  • 签到天数: 83 天

    [LV.6]常住居民II

    25#
     楼主| 发表于 2025-7-14 17:39 | 只看该作者
    学无止境``` 发表于 2025-7-14 15:32
    大佬,请教1个问题,我想要写1个等距离创建过孔的skill,如何点选1个过孔,然后按上下左右以等距离创建过孔 ...

    Q:但是这个代码只能运行后再点选才能创建过孔
    A:没明白你的意思,代码不都是运行后点选再创建过孔的吗?

    Q:而且无法连续创建
    A:连续创建需要加一个while循环函数。随便找一个类似的支持循环点击的功能源码看看就知道了

    点评

    这个支持循环点击是什么意思  详情 回复 发表于 2025-7-15 09:52
    这部分代码在form中Up Down Left Right这几个按钮的field下面调用的,是上下左右,点击Up按钮以后,才能点选VIA,创建过孔;无法先点选via,再点击Up按钮,创建VIA  详情 回复 发表于 2025-7-14 18:07
  • TA的每日心情
    慵懒
    2025-1-7 15:06
  • 签到天数: 213 天

    [LV.7]常住居民III

    26#
    发表于 2025-7-14 17:43 | 只看该作者
    强******1111111
  • TA的每日心情
    开心
    2024-9-6 15:29
  • 签到天数: 1 天

    [LV.1]初来乍到

    27#
    发表于 2025-7-14 18:07 | 只看该作者
    db-_- 发表于 2025-7-14 17:39
    Q:但是这个代码只能运行后再点选才能创建过孔
    A:没明白你的意思,代码不都是运行后点选再创建过孔的吗? ...

    这部分代码在form中Up Down Left Right这几个按钮的field下面调用的,是上下左右,点击Up按钮以后,才能点选VIA,创建过孔;无法先点选via,再点击Up按钮,创建VIA

    点评

    你把获取器件信息放到主函数里,把创建via的函数放到上下左右按钮对应的回调函数里就行了。  详情 回复 发表于 2025-7-14 18:20
  • TA的每日心情
    奋斗
    2025-7-7 15:38
  • 签到天数: 83 天

    [LV.6]常住居民II

    28#
     楼主| 发表于 2025-7-14 18:20 | 只看该作者
    学无止境``` 发表于 2025-7-14 18:07
    这部分代码在form中Up Down Left Right这几个按钮的field下面调用的,是上下左右,点击Up按钮以后,才能 ...

    你把获取器件信息放到主函数里,把创建via的函数放到上下左右按钮对应的回调函数里就行了。

    点评

    我没找到循环点击按钮的代码,大佬有没有,可以分享1个吗  详情 回复 发表于 2025-7-14 19:14
  • TA的每日心情
    开心
    2024-9-6 15:29
  • 签到天数: 1 天

    [LV.1]初来乍到

    29#
    发表于 2025-7-14 19:14 | 只看该作者
    db-_- 发表于 2025-7-14 18:20
    你把获取器件信息放到主函数里,把创建via的函数放到上下左右按钮对应的回调函数里就行了。

    我没找到循环点击按钮的代码,大佬有没有,可以分享1个吗

    点评

    点击按钮不需要循环。每点一下按钮就会触发一下form的回调函数。  详情 回复 发表于 2025-7-15 09:47
  • TA的每日心情
    开心
    2024-11-13 15:24
  • 签到天数: 205 天

    [LV.7]常住居民III

    30#
    发表于 2025-7-14 19:47 | 只看该作者
    6666666666666666
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-7-18 18:12 , Processed in 0.109375 second(s), 21 queries , Gzip On.

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

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

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