基于AutoLisp的AutoCAD二次开发自动生成系统图

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于AutoLisp的AutoCAD二次开发自动生成系统图
【摘要】本文主要阐述了应用AutoLisp语言二次开发AutoCAD自动生成系统图的实现方案。

【关键词】AutoCAD;AutoLisp;二次开发;系统图
0 引言
水汽集中取样分析装置主要应用于发电厂水汽系统化学分析样品的预处理、人工取样,监督热力系统设备腐蚀、积盐情况,保证热力系统和发电机组安全、经济运行。

由于各电厂工程配置不同,的系统配置也有较大差异,对于该设备的生产厂家,工程设计人员设计时每个工程项目都需要绘制系统图,工作量大,效率低。

如运用集成在Autocad 软件内部的AutoLisp 语言开发系统图自动生成软件,使得系统图根据初始设计条件由程序自动绘制完成,将大大提高工程设计人员的绘图效率,既方便、又快捷准确无误。

1 软件目标
应用AutoLisp二次开发AutoCAD程序,在AutoCAD界面中自动生成系统图,并自动生成明细表。

2 实现方案
程序读取预设的初始设计条件,根据初始设计条件程序自动配置元器件,并在CAD中绘制相应的系统图,其中各元器件以图块形式预设,最后程序统计元器件块的数量,生成明细表。

2.1 初始设计条件的设置
在初始设计条件表格中设置好样点数量、样点名称以及温度压力等参数,并选取元器件、仪表配置,其中“1”代表本项目有该器件,空白代表无需此器件。

程序运行时,读取表格中的参数信息,并以“扩展数据”的形式储存在当前DWG图纸中,以便于后续程序的调用。

2.2 程序运行逻辑
程序读取初始参数后,在当前CAD中打开“初始模板”,该模板中以“图块”的形式存储了各种元器件的图形信息。

然后,程序进行逻辑运算,根据不同条件进行系统图绘制、插入不同的元器件图块,程序逻辑图如图2所示。

程序根据样点总数依次循环绘制,如果样点温度>200℃则进入高温架的预冷装置,配置高温高压阀门,如果200℃>样点温度>50℃则不进高温架的预冷,配置中温中压阀,两者均需进行冷却器降温,减压阀减压后进入低温屏的恒温系统。

如果样点温度<50℃,则不进入高温架,直接进入低温屏的恒温系统。

之后程序根据样点的仪表配置,逐条绘制该样点仪表线路,以完成单个样点的系统线路绘制。

待所有系统线路完成后,循环结束,程序根据初始条件判断是否生成扩容器、回收箱等元器件以生成该部分,然后再绘制出母管等管线、生成注解说明文字、插入标准图框,完成系统图图纸部分的自动绘制。

接下来,程序首先对系统图进行预处理,删除重复的直线以及重复的图块,再全选图块,根据块名不同统计图块的种类及数量,也就是元器件的种类及数量,在系统图中按从左到右从上到下的顺序生成序号标注,并在空白区域绘制明细表部分以及接口表部分,插入明细表图框,完成全部功能。

3 关键程序片段
在该程序程序编写中,除了需要有清晰严谨的系统逻辑。

子函数的应用也起到决定性作用。

3.1 相对点坐标计算子程序
3.2 生成直线、文字子程序
3.3 插入块子程序
3.4 删除重复块
4 结束语
应用AutoLisp语言对AutoCAD进行二次开发,可实现水汽集中取样分析装置系统图程序化、参数化自动生成,图纸布局美观。

早期设计人员一两天的工作量,现在仅需几分钟就可以完成,极大的提高了工作效率,图纸准确,版面美观。

该程序也可引申为绘制其他工艺流程的系统图,减少重复工作,进行程序化、模块化、智能化绘制图纸,减少工程设计人员的工作量,提高工作效率。

【参考文献】
[1]吴永进,林美樱.AutoLISP & DCL基础篇[M].北京:中国铁道出版社,2003.
[2]陈伯雄,冯伟.Visual LISP程序设计技巧与范例[M].北京:人民邮电出版社,2002.。

相关文档
最新文档