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

如何在ALLEGRO中使用SKILL语言统计过孔数量

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-7-29 11:56 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
如何在allegro中使用skill语言统计过孔数量

请大虾指教,小弟不胜感激!

如有代码,请发到我邮箱:xieh_17@163.com

该用户从未签到

来自 14#
 楼主| 发表于 2012-12-14 16:41 | 只看该作者
本帖最后由 xieh_17 于 2012-12-14 16:44 编辑


以下是获得通孔板上所有属性为via的过孔数量,就是版主提供的代码,自己加了一个显示窗口。
  1. axlCmdRegister("test",'test)

  2. defun( test ()
  3. prog((lVia)
  4.         axlClearSelSet()
  5.         axlSetFindFilter(?enabled '("noall", "VIAS", "invisible"), ?onButtons '("noall", "VIAS"))
  6.         lVia = setof(v axlGetSelSet(axlAddSelectAll()) v->isThrough)
  7.         axlClearSelSet()
  8.         ;Via Count
  9.         str = sprintf(nil "%d" length(lVia))
  10.         axlUIConfirm(strcat("Through via : " str))
  11. ))
复制代码

该用户从未签到

推荐
 楼主| 发表于 2017-9-19 16:16 | 只看该作者
mark:axlDBDeleteProp(axlDBGetDesign()->symbols "FIXED_PRIVATE")

该用户从未签到

2#
发表于 2012-8-2 10:03 | 只看该作者
这位兄弟问问题最好能详细一点,比如:只要是PLATED就算过孔吗,还是不论pth nonpth 还是bbvia都算过孔?

该用户从未签到

3#
 楼主| 发表于 2012-8-7 23:23 来自手机 | 只看该作者
呵呵,先搞简单一点,统计通孔板上所有的通孔,望大虾指点

该用户从未签到

4#
发表于 2012-8-8 09:54 | 只看该作者
参考以下代码:
  1. ;https://www.eda365.com
  2. defun( GetThroughViaCount ()
  3. prog((lVia)
  4.         axlClearSelSet()
  5.         axlSetFindFilter(?enabled '("noall", "VIAS", "invisible"), ?onButtons '("noall", "VIAS"))
  6.         lVia = setof(v axlGetSelSet(axlAddSelectAll()) v->isThrough)
  7.         axlClearSelSet()
  8.         ;Via Count
  9.         return(length(lVia))
  10. ))
复制代码

该用户从未签到

5#
 楼主| 发表于 2012-8-8 23:23 | 只看该作者
感谢版主,我先看看这代码

该用户从未签到

6#
发表于 2012-8-9 23:45 | 只看该作者
经典的 invisible 选项, 呵呵
axlSetFindFilter(?enabled '("noall"), ?onButtons '("noall"))
习惯设置完毕后还原下。
有的时候不用  invisible  选项给程序无限潜力,把层留给用户去切换也好玩。
有的时候可以灵活使用axlVisibleLayer产生多种不同应用。

该用户从未签到

7#
 楼主| 发表于 2012-8-13 23:11 | 只看该作者
deargds版主提供的统计通孔数量代码很好用.

再请教一下,如何统计HDI板上,激光孔和机械孔数量呢?

说明,激光孔径一般为4mil,机械孔径8mil,激光孔可能会因为HDI板阶数孔名称不一样,这样给我统计激光孔数量带来一些难度.

请大神指教!
  • TA的每日心情
    开心
    2025-6-7 15:41
  • 签到天数: 62 天

    [LV.6]常住居民II

    8#
    发表于 2012-10-13 11:09 | 只看该作者
    我急要  统计 板子 的钻孔数 希望楼主做出来 后发出来
      能发到我邮箱 不胜感激  306597060@qq.com
  • TA的每日心情
    开心
    2025-2-8 15:59
  • 签到天数: 726 天

    [LV.9]以坛为家II

    9#
    发表于 2012-10-26 14:01 | 只看该作者
    我也需要. 感謝!!!
    請發到的信箱:yang.peggy@iac.com.tw

    该用户从未签到

    10#
    发表于 2012-10-26 14:07 | 只看该作者
    chouqiu 发表于 2012-10-13 11:09
    我急要  统计 板子 的钻孔数 希望楼主做出来 后发出来
      能发到我邮箱 不胜感激

    這個不需要用到Skill,只要出NC Legend就能統計
    如下圖是不是你所須要的

    该用户从未签到

    11#
    发表于 2012-10-26 16:46 | 只看该作者
    正确.
  • TA的每日心情
    开心
    2025-6-7 15:41
  • 签到天数: 62 天

    [LV.6]常住居民II

    12#
    发表于 2012-10-29 10:04 | 只看该作者
    XYX365 发表于 2012-10-26 14:07
    這個不需要用到Skill,只要出NC Legend就能統計
    如下圖是不是你所須要的

    这个我知道  我想问的是 能不能直接把所有孔 都一次性统计 出来
       钻孔图  好的自己一个一个加 才知道

    该用户从未签到

    13#
     楼主| 发表于 2012-11-21 18:06 | 只看该作者
    以下是获得通孔板上所有属性为via的过孔数量,就是版主提供的代码,自己加了一个显示窗口。
    axlCmdRegister("test",'test)

    defun( test ()
    prog((lVia)
            axlClearSelSet()
            axlSetFindFilter(?enabled '("noall", "VIAS", "invisible"), ?onButtons '("noall", "VIAS"))
            lVia = setof(v axlGetSelSet(axlAddSelectAll()) v->isThrough)
            axlClearSelSet()
            ;Via Count
            str = sprintf(nil "%d" length(lVia))
            axlUIConfirm(strcat("Through via : " str))
    ))

    该用户从未签到

    15#
    发表于 2012-12-14 16:45 | 只看该作者
    xieh_17 发表于 2012-12-14 16:41
    以下是获得通孔板上所有属性为via的过孔数量,就是版主提供的代码,自己加了一个显示窗口。

    strcat可以省掉了
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-6-10 05:09 , Processed in 0.093750 second(s), 32 queries , Gzip On.

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

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

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