Allegro skill
https://blog.csdn.net/wyu0725/article/details/52367199
Allegro skill二次开发和更改菜单页面
简单的使用skill;能够使Aleggro启动时自动加载skill里建立的新命令;sikll文件一般为XXXX.il;其中XXX为文件名
一,查看环境变量所在目录
1.通过查看电脑环境变量中的HOME变量值. 例如HOME变量为d:\ ,那实际的allegro.ilinit文件路径应该放在d:\pcbenv目录下
2.直接在ALLEGRO 命令行输入echo $localenv 也可以得到实际的环境变量目录。
在环境变量目录下如果没有allegro.ilinit文件,可以新建一个文本文件,然后修改文件名即可,allegro在启动时会在环境变量目录下查找allegro.ilinit文件,并执行其中的SKILL语句。可以把allegro.ilinit理解成一个ALLEGRO自动启动的SKILL文件。
二,allegro.ilinit文件的编写
大家经常见到的allegro.ilinit文件内容如下:
;--------------------------------------------------------
setSkillPath(buildString(append1(getSkillPath() "D:/skill")))
load("xxx.il")
;--------------------------------------------------------
以上代码都是标准的SKILL语句,下面介绍所使用到的函数:
getSkillPath() ;函数,作用是获取ALLEGRO的SKILL PATH列表,此列表所包含路径中的SKILL文件可直接使用相对路径调用。
append1 ;函数,在列表中添加内容,append1(getSkillPath() "D:/skill"))) 的作用就是将D:/SKILL这个目录添加进SKILL 路径里,这样只要123.il文件放在D:/skill目录下就可以直接使用load("123.il")来调用。
buildString ;将LIST类型组成字符串,此函数可以省略
setSkillPath ;函数,根据重新组成的路径设置SKILL PATH.
load ;载入函数,如果SKILL带有密码,写法为load("xxx.il" "password");另外也可以使用loadi函数。
使用以上代码后,可以将SKILL文件放入指定文件夹以方便管理,
另外,因为PCBENV目录默认包括在SKILL PATH中,所以如果不使用上面语句,也可以将SKILL文件放入PCBENV目录下,使用相对路径调用 ,如load("test.il");
如果在其它位置也可以使用绝对路径调用,例如load("d:/skill/test.il")
保存allegro.ilinit文件后, 在ALLEGRO命令行里执行skill load("allegro.ilinit") 所有加载的SKILL即可生效,当然也可以重开ALLEGRO.
三,在allegro.ilinit的中定义快捷键
使用axlSetAlias和axlSetFunckey函数
axlSetAlias("F2" "oops")
安装环境: 本人电脑为WIN8.1系统, 安装的是Cadence17.0;
简单的使用skill;能够使Aleggro启动时自动加载skill里建立的新命令;sikll文件一般为XXXX.il;其中XXX为文件名。
skill包可以从如下地址下载:提取码为: d9ff
链接: https://pan.baidu.com/s/1o77oOdG
1,首先应是环境变量的建立,我的安装完成后有HOME变量,按如下图红色框所示建立环境变量中的用户变量;(注意下图只要看红色框内的内容)
2; 在C:\Users\Administrator\pcbenv路径下新建文件夹skill,用来存放下载下来的XXX.il,(比如clinecut.il);
然后新建一个allegro.ilinit的文件,可以新建一个TXT文件后直接修改拓展名;如下图所示
allegro.ilinit文件的内容为:
setSkillPath(buildString(append1(getSkillPath() "~/pcbenv/skill")))
load("clinecut.il")
以上只是加载了一个XXX.il文件,如果需要加载多个,只需要增加skill文件夹里的XXX.il文件,同时把XXX.il通过load(XXX.il)加载启动;
3,上面新的skill命令可以打开.brd文件后测试;在命令栏输入clinecut命令,可以得到如下图箭头所指,表示命令已经成功激活;
Allegro 右边opion如下图所示,表示已经成功,可以截取线段;正是clinecut命令的功能;
4,对于Allegro 菜单的调整;只需要修改C:\Cadence\SPB_17.0\share\pcb\text\cuimenus文件夹下的
allegro.men文件内的内容;可以使用Notepad++工具编辑;
例如;用Notepad++打开allegro.men文件,在1050行后插入红色框内内容;则重新打开Allegro后菜单栏会多出现一个菜单项,如下边第2图所示;
至此已经完成;上边的设置只是针对我个人电脑而言,无论电脑系统版本如何,Cadence版本如何,都应该具有相似性,今天折腾了一下,主要是路径的问题没有设置正确;
Allegro skill的更多相关文章
- Allegro转换PADS终极篇(转载)
Allegro转换PADS终极篇.....http://www.eda365.com/forum.php?mod=viewthread&tid=86947&fromuid=190625 ...
- Allegro学习(http://www.asmyword.com/forum.php?mod=forumdisplay&fid=86)
一.资源 1.网站推荐www.eda365.com,里面有很多有用的东西:当然还有官方代理商的网站http://www.pspice.com.cn/: 2.视频教程:有库源电气的视频教程,还有在www ...
- allegro使用汇总 [转贴]
1.如何在allegro中取消花焊盘(十字焊盘) set up->design parameter ->shape->edit global dynamic shape parame ...
- Allegro的优点与缺点
记得刚毕业出来时就在某台商工作,用的就是allegro,从此上了贼船就下不来了--.其实还用过pcad,protel,powerpcb(以下简称3p,加上pads就4p了,呵呵--).至于mentor ...
- Allegro怎么对元器件进行对齐
Allegro怎么对元器件进行对齐? Ø选择操作模式,点击菜单栏setup-Application Mode,然后选择Placement Edit模式,进行操作: Ø然后Find面板勾选器件选项,sy ...
- Allegro转换PADS终极篇.....
allegro转pads终极篇 ...
- Allegro Desgin Compare的用法与网表比较
转:Allegro Desgin Compare的用法与网表比较 Allegro中自带有Design Compare工具,利用它可以比较明了的看到线路的差异.当然也可以通过SKILL进行比较,不过我们 ...
- 每天进步一点点------Allegro PCB
Allegro PCB 1.如何在allegro中取消花焊盘(十字焊盘) set up->design parameter ->shape->edit global dynamic ...
- Allegro PCB 转 PADS Layout
操作系统:Windows 10 x64 工具1:Allegro PCB Design XL (legacy) version 16.6-2015 工具2:PADS Layout VX.2.3 参考1: ...
随机推荐
- git merge / rebase 分支的新建与合并
merge https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E6%96%B0%E5% ...
- IOS YYKit 源码解析
https://blog.csdn.net/weixin_33874713/article/details/87034047
- 十步优化SQL Server中的数据访问
原文发布时间为:2011-02-24 -- 来源于本人的百度文章 [由搬家工具导入] 转载:http://tech.it168.com/a2009/1125/814/000000814758_all. ...
- 读扇区错误:0柱面0磁头1扇区(硬盘问题,蓝屏等 0x0000007B)
原文发布时间为:2010-05-25 -- 来源于本人的百度文章 [由搬家工具导入] 读扇区错误:0柱面0磁头1扇区(硬盘问题,蓝屏等 0x0000007B) DISKGEN能找到,那就没什么大问题的 ...
- ashx输出文字,执行JavaScript,输出图片等
原文发布时间为:2009-09-30 -- 来源于本人的百度文章 [由搬家工具导入] 一提到Ashx文件,我们就会想到http handler以及图片加载(在之前我们一般使用ASPX或者Webserv ...
- Hibernate的merge与update方法的区别
今天做了个测试,写了个测试用例来看看merge与update时控制台打印出来的日志有什么不一样.实体bean很简单,就id和name两个字段,接下来分别给出以下几种测试情形的控制台日志内容: 1. 数 ...
- [转]在Storyboard中使用自定义的segue类型
转自:http://my.oschina.net/u/728866/blog/92709 我们知道segue共有三种类型:push.modal以及custom.如下图: 很明显,这三种类型的作用分 ...
- php中Mail_mimeDecode无法读取foxmail等eml文件正文问题
使用$cat -A xx.eml文件,发现foxmail的eml文件文件结尾和空行使用的\r\r\n, 如: Received: from WDGTO0MYSBX754J (unknown [106. ...
- Day 30 process&thread_2
进程和线程_2 1.继承类创建线程 import threading,time class Mythread(threading.Thread): #建立类,继承threading.Thread de ...
- 慎用lodash的cloneDeep函数
lodash的cloneDeep函数能够很方便的拷贝对象,但是一旦拷贝一些很复杂的对象就有可能报错.比如用cloneDeep克隆一个vue实例,就有可能包key.charAt is not a Fun ...