找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

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

[新手求教]Skill中移动器件的实现方法

[复制链接]

3

主题

13

帖子

110

积分

二级会员(20)

Rank: 2Rank: 2

积分
110
跳转到指定楼层
1#
发表于 2014-7-11 22:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

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

x
        想做个简单的Skill,功能中包含了移动器件。查阅帮助文档和编程实践,已经可以获取某个DBID并且读出坐标属性。简单想法是把该DBID的xy属性修改,然后刷新DBID,既然求教,自然是没成功。看了下align.il的源码,作者是获取DBID后读取多个信息,然后删除原对象重画一个。有没有其他方法,各位大大指教。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏1 支持!支持! 反对!反对!

3

主题

13

帖子

110

积分

二级会员(20)

Rank: 2Rank: 2

积分
110
2#
 楼主| 发表于 2014-7-12 19:54 | 只看该作者
貌似只能自娱自乐鸟

3

主题

13

帖子

110

积分

二级会员(20)

Rank: 2Rank: 2

积分
110
3#
 楼主| 发表于 2014-7-12 23:07 | 只看该作者
顶顶才健康。
实现了功能,很多细化的工作还可以做。
采用axlTransformObject就可以移动器件了,还有多种操作方式可以选择,镜像等等,具体可以参考帮助文档。

;移动器件  第一次选中symbol,第二次选中figure,symbol将移动到该figure  xy处。
;可考虑增加光标显示、提示等等。
axlClearSelSet()
axlSetFindFilter(
?enabled        (list "symbols" "text")
?onButtons (list "all"))

while(
        axlSelect(?prompt "Pick a symbol.")
        list_obj = axlGetSelSet()
        oldobj = car(list_obj)
       
        oldx = xCoord(oldobj->xy)
        oldy = yCoord(oldobj->xy)
        println(oldobj->xy)
        println(oldx)
        println(oldy)       
       
        axlSelect(?prompt "Pick a new figure.")
        list_obj = axlGetSelSet()
        newobj = car(list_obj)
       
        newx = xCoord(newobj->xy)
        newy = yCoord(newobj->xy)
        println(oldobj->xy)
        println(newx)
        println(newy)
        deltax = newx-oldx
        deltay = newy-oldy
        delta_point = deltax:deltay
        println(delta_point)
        axlTransformObject(oldobj ?move delta_point)
)

评分

参与人数 1贡献 +8 收起 理由
betamelody + 8 支持!

查看全部评分

3

主题

13

帖子

110

积分

二级会员(20)

Rank: 2Rank: 2

积分
110
4#
 楼主| 发表于 2014-7-15 20:17 | 只看该作者
亚麻得  终于有个人来评论了。今天想做一个新的东西,加强版Swap pins,还没搞出来。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

巢课

技术风云榜

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

GMT+8, 2025-2-24 00:30 , Processed in 0.056221 second(s), 36 queries , Gzip On.

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

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

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