EDA365电子工程师网

标题: 检查走线跨平面Skill源码共享,附中文详细讲解每个步骤。 [打印本页]

作者: wg2005    时间: 2009-12-28 16:05
标题: 检查走线跨平面Skill源码共享,附中文详细讲解每个步骤。
本帖最后由 紫菁 于 2017-9-25 17:32 编辑

源程序见附件。
load("etch_cross_plane.il")
命令:ecp
使用方法:首先在程序里面选择某一电器层,然后选择某一平面层,点击“Check”按钮就可以进行跨平面的检查,检查结果会高亮显示跨平面的走线
程序中几乎每段都用了中文进行详细讲解,对不会Skill编程或初学Skill编程的相信能给您带来一些帮助。望您早日成为Skill编程一员。通过程序的源码,您可以进行试改、修改,对成功的可以进行分享,本人绝对不说您抄袭思路。
程序会涉及到的函数或命令大致有以下:
axlFormCreate()
axlFormColorize()
axlUIWPrint()
axlFormSetField()
axlVisibleDesign()
axlVisibleUpdate()
axlDBGetLayerType()
axlFormClose()
axlGetParam()
axlSetFindFilter()
axlAddSelectAll()
axlGetSelSet()
axlClearSelSet()
axlHighlightObject()
axlDehighlightObject()
axlGeoPointInShape()
deleteFile()
defun()
prog()
case()
foreach()
when()
strcat()
cons()
reverse()
car()
cadr()
由于某些函数或命令在程序不能进行太多详细讲解
如果您觉得我的努力能给您带来一点点的兴趣,哪怕就那么一点,请别忘记帮忙顶下,多谢!


作者: deargds    时间: 2009-12-30 08:46
顶上去
作者: wg2005    时间: 2009-12-30 13:06
呵呵!
作者: 天涯共线    时间: 2009-12-30 14:20
这个太实在了,正需要这种东西来学习学习,一定要顶
作者: yh521py    时间: 2009-12-30 14:39
谢谢 wg2005 !
正需要!!呵呵...
作者: wg2005    时间: 2009-12-30 17:20
哈哈没什么
作者: wolfwang    时间: 2009-12-30 21:32

作者: meterfalls    时间: 2009-12-31 09:04
楼主用的什么编辑器,有skill语法高亮的配置文件吗?
作者: wg2005    时间: 2009-12-31 09:38
Skill二次开发网有Skill语法高亮配置文件
作者: lyh289114980    时间: 2009-12-31 10:48
好~~~~~~~~~~~~~~
作者: deargds    时间: 2009-12-31 10:56
SKILL编辑器
https://www.eda365.com/thread-29902-1-1.html
作者: meterfalls    时间: 2009-12-31 13:10
wg2005
我给你发了一个消息,关于这个skill我加了一个unselect的功能,但是没有成功,那段代码麻烦帮我看看,谢谢楼!
作者: y175813652    时间: 2009-12-31 13:37
正在验证,先顶后下
作者: wg2005    时间: 2009-12-31 15:43
wg2005
我给你发了一个消息,关于这个skill我加了一个unselect的功能,但是没有成功,那段代码麻烦帮我看看 ...
meterfalls 发表于 2009-12-31 13:10



我未收到你的消息哦!
你是说unselect还是unless?
下面是unless简单举例
unless(
           layer == "ETCH/TOP"
         ....



作者: meterfalls    时间: 2009-12-31 17:09
我想加一个unselect的功能,因为你的程序检查完后不能去高亮,你帮我看看下面的代码。
(defun unselect_object ()
(let (allsel)
    axlSetFindFilter(?enabled '(noall clinesegs clines) ?onButtons '(noall clinesegs clines))
   ; axlSetFindFilter(?enabled '(all) ?onButtons '(all))
    allsel = axlGetSelSet(axlAddSelectAll())
    axlClearSelSet()
    axlSetFindFilter(?enabled '(noall symbols) ?onButtons '(noall symbols))
    allsel = axlGetSelSet(axlAddSelectAll())
    axlClearSelSet()
))
作者: meterfalls    时间: 2009-12-31 17:10
然后我在form里定义了一个按钮来执行这个函数,但是没成功。
作者: wg2005    时间: 2009-12-31 22:19
回复 15# meterfalls


    程序是高亮clinesegs,所以想去亮这些clinesegs,保存下PCB就没有了,你可以试下。
如果通过Skill简单实现可以这样描述:
axlSetFindFilter(?enabled '(noall clinesegs) ?onButtons '(noall clinesegs))   
clines_a = axlGetSelSet(axlAddSelectAll())  
axlDehighlightObject(clines_a)
作者: meterfalls    时间: 2010-1-4 10:16
试了一下,最后一句用axlClearSelSet()好些,呵呵,谢谢wg2005大侠指点!
作者: wg2005    时间: 2010-1-4 13:13
回复 18# meterfalls


   
作者: PP2008    时间: 2010-1-8 16:30
这个太实在了,正需要这种东西来学习学习,一定要顶
作者: andyyu1982    时间: 2010-1-13 10:34
学习了,谢谢!
作者: wolf343105    时间: 2010-1-18 20:54
支持多层板吗?比如,6,8,10层板.
作者: wolf343105    时间: 2010-1-19 21:35
今天试了一下,我用16.2 好象有BUG.比如,没跨的也高亮了.VIA避开的SHAPE,算跨PLANE吗?
作者: wg2005    时间: 2010-1-19 22:33
回复 23# wolf343105


    此程序只在15.xx使用,在16.xx还没有试用,之所以将源码和中文加以解释共享大家,目的是为了让大家进行学习和扩展使用,至于其功能已经不是本贴的关键了。如果觉得不足或有BUG您可以进行尝试的修改,目的只为初学者带来帮助,从中能学到一些基础的知识。望能理解!
作者: yucen007    时间: 2010-1-27 10:59
wg2005
功能确实很新颖
有如下缺点:1、对普通信号出线和入线处都成了跨分割了,能否单独限定下,比如在目前程序下,减去两次后才能记入跨分割行列
            2、既然是考虑平面 跨分割,那么所有的平面如果做了花焊盘则全部高亮,视觉效果不好,不应该高亮平面层的跨分割
作者: wg2005    时间: 2010-1-27 16:55
回复 25# yucen007

  你的问题与Wolf343105同样,是我习惯将平面层用做负片的,而一般负片是不会进行操作的,只有正片的平面层才会进行操作,也是导致你们发现的BUG点。呵呵!

解决方法也很简单,要不把课题留给你,哈哈!

      select_box = axlGetSelSet(axlSingleSelectBox(Cline -> bBox))

    if(length( select_box) == 1  

       then

       axlDehighlightObject(Cline)
   )
作者: iampxj    时间: 2010-2-7 12:38
顶你没商量
作者: iampxj    时间: 2010-2-7 12:39
再顶一个
作者: iampxj    时间: 2010-2-7 12:39
不能连续顶贴?
作者: liuli    时间: 2010-2-7 14:17
这个必须顶
作者: jessie02    时间: 2010-3-30 14:46
top
作者: ghostmlj    时间: 2010-4-1 22:12
dui  不能让这个好帖子沉了
作者: bailey    时间: 2010-4-22 17:35
非常实用的工具,谢谢wg2005.
作者: 0922537716    时间: 2010-4-23 11:38
谢谢了。不为别的,只为学习,
作者: jelly_770    时间: 2010-5-1 10:44
好东西,一起要顶起来~
作者: YMLEI    时间: 2010-8-3 15:38
这个太实在了
作者: leavic    时间: 2010-8-6 10:13
非常强大啊
作者: yawyw    时间: 2010-8-7 16:05
我加载以后只有Etch Layer, Plane Layer 里面什么都没有,怎么回事?
我的是8层板
作者: lcdavid2009    时间: 2010-8-14 11:18
太好了!
作者: cxt668    时间: 2010-8-19 07:50
学习一下,顶顶顶!!!!
作者: ansonjimli    时间: 2010-10-7 16:36
很不错呀,支持一下,嘿嘿。
作者: leoyin    时间: 2010-11-12 18:14
顶啊。。。
作者: anchoret    时间: 2010-12-9 22:17
thx a  lot~~~~
作者: cxyjoe    时间: 2011-2-24 20:28
正需要!!呵呵...
作者: l8877l    时间: 2011-3-1 20:09
谢谢
作者: 花心刺猬    时间: 2011-3-15 17:29
支持!
作者: skyjianhang    时间: 2011-3-21 16:16
谢谢楼主的分享
辛苦了
作者: cccccc32    时间: 2011-3-25 11:08
好贴一定要顶!!!!!!!!!!!!!!
作者: cccccc32    时间: 2011-3-25 11:09
好贴一定要顶!!!!!!!!!!!!!!

作者: xiaoyong_21    时间: 2011-4-11 12:34
多谢,这个实用
作者: cxmvswcy    时间: 2011-4-12 10:21
8错,以后可以用这个辅助查图了
作者: jelly_770    时间: 2011-5-26 16:48
本帖最后由 jelly_770 于 2011-5-26 16:48 编辑

这帖子一定要顶,学习的好例子。。。
作者: menghunabc    时间: 2011-5-30 14:18
都是高手啊,学习了
作者: zhdwc123    时间: 2011-5-31 15:38
Skill二次开发网有Skill语法高亮配置文件
作者: KF1013    时间: 2011-6-13 16:33
怎么不行啊??
作者: XIDIAN    时间: 2011-10-5 18:25
真的吗,太神了吧,一定要试试看

作者: beihaifuyao    时间: 2011-11-10 20:48
seeseesee
作者: 长天落彩霞    时间: 2011-11-11 09:17
太感谢楼主了,支持一下!
作者: xianrui1989    时间: 2012-5-21 10:29
wg2005 发表于 2009-12-30 17:20
哈哈没什么

调用命令不好使啊!!
作者: ketlosangel    时间: 2012-6-25 09:54
兴趣不止一点点
作者: koncc    时间: 2012-7-4 18:11
感謝分享{:soso_e100:}
作者: ghfghyb    时间: 2012-7-4 20:44
努力回复中,争取能看到隐藏部份~~
作者: kim    时间: 2012-7-13 23:31
顶上去{:soso_e100:}
作者: xipanlong    时间: 2012-7-16 00:45
看不了啊,呜呜……急的很哦。
作者: harrisonlove    时间: 2012-7-23 17:50
看不了啊,呜呜……急的很哦。
作者: NeverLazy    时间: 2012-8-15 05:27
赞一个
作者: gavinhuang    时间: 2012-8-16 10:09
最近正在用 cadence自带的EMControl Predicates写rule,很是晕啊
作者: Eric0921    时间: 2012-8-19 08:11
我还没下载就扣了积分,没法看了!!!
作者: apricot    时间: 2012-8-21 18:42
顶起来~
作者: dinodino66    时间: 2012-8-22 22:30
看不太董耶試試看了
作者: xuzhiping_123    时间: 2012-9-4 10:21
学习来了
作者: forewind    时间: 2012-9-5 10:56
顶!
作者: gl2050    时间: 2012-10-21 21:42
顶上去!!
作者: wxmcumtb    时间: 2012-10-22 11:55
这个,一定要顶。。。
作者: siclk    时间: 2012-10-26 18:01
看看啊 谢谢
作者: wishness1123    时间: 2012-10-29 10:51
顶上去
作者: alian_chen    时间: 2012-11-1 12:56
哎  新人級別低呀  很多不能下載呀

樓主 是不是可以mail給新人啊?


作者: wishness1123    时间: 2012-11-1 19:14
顶上去
作者: layout2009    时间: 2012-12-5 14:34
谢谢分享

作者: purnedy    时间: 2012-12-12 15:13
好人呀
作者: daoshuailx    时间: 2012-12-18 19:52
顶上去:lol
作者: hukee    时间: 2012-12-20 15:52
看高速线跨分割好,哈哈。
我先加颜色到差分线,然后用这个检查垮分割。
作者: wxmcumtb    时间: 2012-12-26 17:01
必须顶。。。
作者: mingway    时间: 2013-1-5 15:54
我为啥 下不了!
作者: 3345243    时间: 2013-3-21 20:36
这个必须顶
作者: kandy_zhou    时间: 2013-3-24 10:01
提示: 作者被禁止或删除 内容自动屏蔽
作者: xjf_xxj    时间: 2013-3-25 09:51
好东西。。。
作者: eagerous    时间: 2013-3-30 20:44
顶!!!
作者: zhaoyi    时间: 2013-4-26 23:36
这个太实在了,正需要这种东西来学习学习,一定要顶
作者: kevin890505    时间: 2013-4-27 00:05
LZ仗义
作者: 這侽孓譙悴丶    时间: 2013-5-3 11:49
{:soso_e179:}
作者: 123123    时间: 2013-5-21 16:53
这种情况应该不需要报错。
程序能不能优化一下?
作者: 阿飞小白    时间: 2013-6-18 22:26
感谢分享,正需要这个!
作者: shayanming    时间: 2013-6-22 14:47
不错,谢谢了,学习一下
作者: wuxianglin2000    时间: 2013-8-18 06:45
谢谢分享,挺好用的
作者: 冉小一    时间: 2013-8-28 09:24
没我I权限是什么意思?
作者: feiyue08    时间: 2013-9-16 14:24
感谢分享               
作者: siyuan1220    时间: 2013-12-28 13:26
顶顶顶
作者: yaoshasha    时间: 2013-12-28 14:12
谢谢,先看看!!
作者: owencai    时间: 2013-12-31 11:24
谢谢楼主,学习下,
2013年最后一天了,等待2014的各位顶上去!




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2