找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 1861|回复: 12
打印 上一主题 下一主题

move_pin_via

[复制链接]

36

主题

125

帖子

480

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
480
跳转到指定楼层
1#
发表于 2010-7-13 10:14 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您!

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

x
本帖最后由 neky 于 2010-7-13 17:23 编辑

axlCmdRegister("moveviatopin_x" 'moveviatopin_x )
procedure(moveviatopin_x()
prog(
      (pin_a
       via_a
       pin_a_xy
       via_a_xy
       via_stack
       x
       y
      )
     axlSetFindFilter(?enabled '("NOALL" "VIAS") ?onButtons '("NOALL" "VIAS"))
     axlClearSelSet()
     axlMsgPut( "select a via!" )
        if( axlSingleSelectPoint()
            then
               via_a  = axlGetSelSet()
               via_stack = car(via_a)->name
               via_a  = car(via_a)
               via_a_xy = via_a->xy
               y=nth(1 via_a_xy)
               axlHighlightObject(via_a  t)
           )

     axlMsgPut( "select a pin!" )
     axlSetFindFilter(?enabled '("VIAS" "PINS") ?onButtons '("VIAS" "PINS"))
       if( axlSingleSelectPoint()
            then
               axlSingleSelectPoint()
               pin_a = axlGetSelSet()
               pin_a = car(pin_a)
               pin_a_xy =pin_a->xy
               x=nth(0 pin_a_xy)
               axlHighlightObject(pin_a  t)
           )
     
      via_a_xy = (x:y)
      axlShell("done")
      axlDeleteObject(via_a)
      axlDBCreateVia(via_stack via_a_xy)
      axlDehighlightObject(pin_a t)
      axlDehighlightObject(via_a t)
      
))


axlCmdRegister("moveviatopin_y" 'moveviatopin_y )
procedure(moveviatopin_y()
prog(      
      (pin_a
       via_a
       pin_a_xy
       via_a_xy
       via_stack
       x
       y
      )
     axlSetFindFilter(?enabled '("NOALL" "VIAS") ?onButtons '("NOALL" "VIAS"))  
     axlClearSelSet()
     axlMsgPut( "select a via!" )
        if( axlSingleSelectPoint()
            then
               via_a  = axlGetSelSet()
               via_stack = car(via_a)->name
               via_a  = car(via_a)
               via_a_xy = via_a->xy
               x=nth(0 via_a_xy)
               axlHighlightObject(via_a  t)
           )

     axlMsgPut( "select a pin!" )
     axlSetFindFilter(?enabled '("VIAS" "PINS") ?onButtons '("VIAS" "PINS"))
       if( axlSingleSelectPoint()
            then
               axlSingleSelectPoint()
               pin_a = axlGetSelSet()
               pin_a = car(pin_a)
               pin_a_xy =pin_a->xy
               y=nth(1 pin_a_xy)
               axlHighlightObject(pin_a  t)
           )
      via_a_xy = (x:y)
      axlShell("done")
      axlDeleteObject(via_a)
      axlDBCreateVia(via_stack via_a_xy)
      axlDehighlightObject(pin_a t)
      axlDehighlightObject(via_a t)
      
))


此为我写的一个skill是用来让via和pin对齐的。但是只能动via ,请高手看一下怎么改进???
还有我怎么判断我选中的是via还是pin。还有这个skill为什么要在我done之后才有动作呢??
请高手指点。
谢谢!!!!!!!!!!!!!!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏1 支持!支持! 反对!反对!

36

主题

125

帖子

480

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
480
13#
 楼主| 发表于 2010-7-21 13:38 | 只看该作者
THANK YOU  !!问题已解决!!!

6

主题

220

帖子

3571

积分

五级会员(50)

Rank: 5

积分
3571
12#
发表于 2010-7-20 19:41 | 只看该作者
在下认为你写的应该没错,以上面的程序中,pin_a已经得到pin的dbid,要得到symbol加入sym=pin_a->parent就应该要得到symbol的dbid了,如果还是有问题可能要请你提供更多讯息了

36

主题

125

帖子

480

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
480
11#
 楼主| 发表于 2010-7-20 11:18 | 只看该作者
回复 8# ginooolu


   请教高手一下我怎么在选中pin的情况下来得到symbol的基本数据的
用那些语句
是不是用
pin->parent
但是我用它写了一个skill返回的都 是nil
请高手指点一下了

11

主题

35

帖子

1225

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1225
10#
发表于 2010-7-19 21:55 | 只看该作者
这个Skill正好我也需要,把楼主的程序改了一下.可以在SMD的引脚上添加过孔,放在引脚的正中间.
以前干这个需要一个多小时,现在一下子就好了.

本帖子中包含更多资源

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

x

36

主题

125

帖子

480

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
480
9#
 楼主| 发表于 2010-7-19 15:21 | 只看该作者
thank you

6

主题

220

帖子

3571

积分

五级会员(50)

Rank: 5

积分
3571
8#
发表于 2010-7-16 12:37 | 只看该作者
在下认为加入这行:
seltype = car(via_a)->objType (seltype为任意名称)
如果回传为"pin"就是pin
如果回传为"via"就是via

36

主题

125

帖子

480

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
480
7#
 楼主| 发表于 2010-7-14 22:29 | 只看该作者
请版主指点一下哟
谢谢!!!!!!!!!

36

主题

125

帖子

480

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
480
6#
 楼主| 发表于 2010-7-14 22:28 | 只看该作者
请问一下我应该用那个语句去判断呢????

117

主题

2352

帖子

1万

积分

EDA365特邀版主

Rank: 6Rank: 6

积分
13799

最佳敬业奖

5#
发表于 2010-7-14 17:13 | 只看该作者
判断每个dbid的objType属性。
谁画出这天地 又画下我和你

36

主题

125

帖子

480

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
480
4#
 楼主| 发表于 2010-7-13 14:29 | 只看该作者
对的!!axlSetFindFilter(?enabled '("vias" "pins") ?onButtons '("vias" "pins"))
我们可以有这句来选pin或via但是我们选中之后怎么样判断是pin还是via呢????
请坛中的高手给一下指点!!!!

36

主题

125

帖子

480

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
480
3#
 楼主| 发表于 2010-7-13 14:24 | 只看该作者
回复 2# wg2005


     请楼上的我怎么判断是pin还是via???

42

主题

222

帖子

1513

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1513
2#
发表于 2010-7-13 12:27 | 只看该作者
回复 1# neky


    axlDBCreateVia() 这句是创建过孔的函数。
    如果需要PIN对齐,需要利用axlDBCreatePin()
[img][/img]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-10-18 19:26 , Processed in 0.068421 second(s), 36 queries , Gzip On.

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

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

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