欢迎来到天天文库
浏览记录
ID:1276585
大小:167.00 KB
页数:5页
时间:2017-11-09
《通过脚本提高altium designer的使用效率》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、通过脚本提高AltiumDesigner的使用效率更新于2007-11-0515:58:01AltiumDesigner的脚本系统支持DelphiScript,VisualBasic和Jscript语言。无需使用外部开发工具即可编写和调试脚本,从专业级的语义文本编辑器、拖放形式的设计直到脚本调试器都包含在内。采用脚本可自动执行简单的重复任务,生成定制报告,或者直接控制设计对象。为什么我要使用脚本?通过AltiumDesigner的脚本系统可开发并运行脚本,执行设计文档中的操作。使用脚本能够通过最小的用户输入、
2、更少的键盘操作和鼠标点击达到设计目标!通过脚本您可以自动执行重复任务,进行编辑操作,而这在AltiumDesigner的现有命令中是无法完成的。例如,您可以使用脚本在PCB文档中搜索并更新基准标记,或者导出定制的网络列表。使用脚本也可以把公司标志的位图导入到PCB中。脚本可以有效解决的一个设计挑战就是PCB文件中的公司logo。情况如下:每次我使用AltiumDesigner的PCB编辑器创建PCB时都需要包括我们公司的logo,它是一个光栅类型的位图。如何实现呢?就我所知,我只能在PCB编辑器中放置线轨和矢
3、量类型的对象。AltiumDesigner的PCB编辑器是基于矢量的编辑器,具有特定的对象集。由于logo是光栅(基于像素)图像,因此我们需要一个工具把光栅图像转换成AltiumDesigner编辑器中的矢量对象。PCBLogoCreator脚本如何工作?我们需要一个脚本来扫描位图文件,然后把每个像素转换到线轨中。在转换的过程中会进行测试,查看是否转换了相邻像素,并且通过单一线轨段替换所有的邻接像素。结果,一组小的水平线轨就构成了整个图像。为了实现上述目标,脚本需要进行如下操作: ·提供让用户选择图像以及其他
4、选项(如比例)的对话框·检查位图是否为单色,如果不是单色则进行告警并产生异常中断。位图将显示在单层PCB上,所以只能是单色图像。·扫描图像文件,检查每个像素是打开还是关闭。·比较相邻像素,以便能够以单个线轨对象进行替换。·支持比例尺。·支持镜像以简化所需层次的放置。 脚本的核心就是一个算法,它扫描黑白像素,在相同线路上生成邻接的彩色像素。例如,在同一个线路上有40个相邻的白色像素,则将其转换为一个线轨。线轨的长度和宽度由用户定义的比例参数设定。因此如果有40个像素,比例是1,那么将在PCB文档中放置1mil宽
5、、40mil长的PCB线轨。我在此就不详细讨论该脚本了,如果您对此感兴趣,可以在AltiumDesigner范例中找到DelphiScript版本的PCBlogo生成器,其具体位置在本文的末尾。通过PCBLogoCreator脚本范例,一个logo转换为一系列PCB线轨。通过脚本能做什么?AltiumDesigner的脚本引擎支持DelphiScript,VisualBasic,以及Jscript语言。也支持EnableBasic和TCL,但由于这两种语言不支持格式设计接口,因此您可能希望使用支持该接口的另外
6、三种语言。通过格式设计接口您可以创建高级的对话框或向导,获取脚本输入参数。使用DelphiScriptformdesigner设计您自己的脚本对话(格式)。您可以采用2种方式用脚本与AltiumDesigner进行交互。第一种是进程+参数的调用,该方法的工作方式与使用标志菜单、工具栏和快捷键相同。例如,如果您想要查看PCB库中的所有组件并将参考设为Center,那就需要运行PCB的process+parameter组合,PCB:SetComponentReference+Location=Center,然后p
7、rocessPCB:NextComponent.在DelphiScript中编写的代码如下:ResetParameters;AddStringParameter('Location','Center');RunProcess('PCB:SetComponentReference');RunProcess('PCB:NextComponent');使用该方法的一个小技巧是按住Ctrl键,单击工具栏按钮或按钮条目,查看该命令后的进程和参数。使用脚本与AltiumDesigner进行接口的第二种方法就是通过应用编程
8、接口(ApplicationProgrammingInterface)。这种编程的方法要快得多而且功能更加强大,在不同的编辑器之间转换时,您可以访问AltiumDesigner自身使用的应用-到-应用功能。通过这种方法也可以访问MicrosoftWindowsAPI,也正是通过这种方法来构建PCBlogocreator范例,部分代码如下所示:PCBTrack.X1:=Sheet.SheetX+Mil
此文档下载收益归作者所有