论文部分内容阅读
摘 要 VBA是一个AutoCAD应用程序集成开发环境,是一种面向对象的可视化结构编程语言,被广泛应用于各领域的实际工作中。在铁路信号工程设计中,电缆径路图中电缆类型和长度的统计相当繁琐,依靠设计者逐条电缆进行统计,工作量大且准确率低。因此,针对电缆统计应用VBA开发环境设计了一个辅助程序。实际工作应用中效果良好,不仅减轻了设计者的工作强度,同时也提高了工作效率,保障了数据的准确性。
关键词 VBA;AutoCAD;可视化;铁路信号
中图分类号:TP391 文献标识码:A 文章编号:1671-7597(2015)03-0082-01
近年来,随着国企改革的不断深入,我国经济和科技发展正处于关键的转型期。铁路建设能够有效的拉动国民经济发展,促进国家实力大幅提升。在当前国家政策的大力支持下,预计未来几年铁路建设仍将成为我国基建领域的重点。在铁路建设投资不断扩大,工程数量不断增多的背景下,提高铁路工程设计的质量和效率则尤为重要。
AutoCAD是当今最流行的二维绘图软件,它具有良好的用户界面,方便的菜单和命令行操作,因此也成为铁路工程设计中最主要的绘图工具。AutoCAD虽然绘图功能强大,但在处理数据统计,图框表格等问题上却功能有限。因此有必要对AutoCAD进行二次开发,简化绘图过程,避免重复性工作,充分发挥其快速、准确的优势。AutoCAD提供了AutoLISP、ADS、ARX、VBA[1]和Visual LISP等作为二次开发的工具。其中VBA的应用程序运行速度快,编程语言和开发环境简单且与Windows操作系统具有良好的交互性,因此被作为实用工具广泛应用于各个领域。
1 AutoCAD VBA简介
VBA(Microsoft Visual Basic for Applications)是一个AutoCAD应用程序集成开发环境,它具有完整的高级语言特征,且面向对象,可实现与多种应用程序的直接共享,还可与其它应用程序通信,并具有管理数据库的功能。在AutoCAD中,AutoCAD VBA允许VBA编程环境与AutoCAD同时运行,并通过ActiveX Automation接口对AutoCAD进行编程控制。它不仅能控制AutoCAD对象,也可以向其他应用程序发送或提取数据[2]。
VBA具有直接增加和修改AutoCAD自有命令,扩展图形编辑能力,建立独立的数据库和图形库,并对当前图形进行访问和修改等功能。本文设计了一个AutoCAD VBA程序,应用到铁路信号工程的设计中,完成电缆长度及类型的统计工作。
2 AutoCAD VBA在铁路信号工程设计中的应用
在铁路信号工程设计[3]中,电缆是主要的投资项目,电缆类型和数量也是工程预算的重要组成部分,对于较大型的站场,由于室外信号设备众多,图中各类电缆纵横交错,电缆的类型和长度统计相当繁琐,一般只能依靠设计者逐条电缆进行统计,工作量大且准确率低。因此,本文针对此问题应用VBA开发环境设计了一个辅助电缆统计程序。
电缆径路图中的电缆长度芯数数据一般格式如下:
其中,sss为电缆长度。○为电缆芯数,如8表示8芯普通电缆,8A表示数字内屏蔽A型8芯数字电缆。(s)为备用的电缆芯数。□有L、-D、和省略三种形式,其中,L为铝护套信号电缆;-D为低烟无卤电缆;省略为普通信号电缆。
VBA程序加载成功后,首先由用户选择电缆径路图中的全部图形对象,由ThisDrawing.SelectionSets.Add()命令建立选择集,并由element.TextString命令获取全部对象元素。然后设计程序根据上述电缆长度类型芯数数据格式,通过InStr()命令对全部数据进行逐个筛选,当前元素如果不是所需的数据类型时,返回继续选择一下元素,如果确认是电缆数据类型,则通过if...else if....else条件语句根据程序定义的全部电缆分类来记录此条电缆的长度,完成之后返回选择集筛选并记录下一条电缆数据。当有电缆型号与芯数数据类型相同时,电缆长度进行累加并更新数据。
通过对全部对象元素进行筛选统计后,可以得到全部电缆分类后的长度统计数据,最后由用户通过ThisDrawing.Utility.GetPoint()命令选择数据在AutoCAD图形文件的插入位置,完成数据的生成,并可由ActiveWorkbook.SaveAs path & “\XX.xls”命令实现数据由AutoCAD到Excel文件的输出功能。在程序中还可以通过对查找到的电缆数据进行修改字体或字体颜色等操作,来突出显示此类数据,方便设计者的复核和查找遗漏。
3 结束语
本程序在AutoCAD2007/2010环境下能够稳定正常运行,工程设计工作中应用效果十分良好,使设计者能够高质高效地完成电缆类型及长度的统计工作,减轻了设计者的工作强度,同时极大地提高了工作效率。
本文通过对电缆类型和长度统计程序介绍了一种AutoCAD VBA在铁路信号工程设计中的简单应用,将其应用在铁路信号工程设计中可以大大提高设计绘图的效率和质量,减少人为的失误和疏忽,保障工程的准确性。VBA的开发应用设计在本领域还有很大的发挥空间,如信号机、电缆盒、道岔的模块化绘图处理中的应用等。
参考文献
[1]李凤华.AutoCAD2002/2000 VBA开发指南[M].清华大学出版社,2001.
[2]张晋西.Visual Basic与AutoCAD二次开发[M].清华大学出版社,2002.
[3]王秉文.6502电气集中工程设计[M].中国铁道出版社,2010.
作者简介
郭庆龙(1984-),男,辽宁锦州人,硕士研究生,助理工程师,从事铁路信号方面的设计研究工作。
关键词 VBA;AutoCAD;可视化;铁路信号
中图分类号:TP391 文献标识码:A 文章编号:1671-7597(2015)03-0082-01
近年来,随着国企改革的不断深入,我国经济和科技发展正处于关键的转型期。铁路建设能够有效的拉动国民经济发展,促进国家实力大幅提升。在当前国家政策的大力支持下,预计未来几年铁路建设仍将成为我国基建领域的重点。在铁路建设投资不断扩大,工程数量不断增多的背景下,提高铁路工程设计的质量和效率则尤为重要。
AutoCAD是当今最流行的二维绘图软件,它具有良好的用户界面,方便的菜单和命令行操作,因此也成为铁路工程设计中最主要的绘图工具。AutoCAD虽然绘图功能强大,但在处理数据统计,图框表格等问题上却功能有限。因此有必要对AutoCAD进行二次开发,简化绘图过程,避免重复性工作,充分发挥其快速、准确的优势。AutoCAD提供了AutoLISP、ADS、ARX、VBA[1]和Visual LISP等作为二次开发的工具。其中VBA的应用程序运行速度快,编程语言和开发环境简单且与Windows操作系统具有良好的交互性,因此被作为实用工具广泛应用于各个领域。
1 AutoCAD VBA简介
VBA(Microsoft Visual Basic for Applications)是一个AutoCAD应用程序集成开发环境,它具有完整的高级语言特征,且面向对象,可实现与多种应用程序的直接共享,还可与其它应用程序通信,并具有管理数据库的功能。在AutoCAD中,AutoCAD VBA允许VBA编程环境与AutoCAD同时运行,并通过ActiveX Automation接口对AutoCAD进行编程控制。它不仅能控制AutoCAD对象,也可以向其他应用程序发送或提取数据[2]。
VBA具有直接增加和修改AutoCAD自有命令,扩展图形编辑能力,建立独立的数据库和图形库,并对当前图形进行访问和修改等功能。本文设计了一个AutoCAD VBA程序,应用到铁路信号工程的设计中,完成电缆长度及类型的统计工作。
2 AutoCAD VBA在铁路信号工程设计中的应用
在铁路信号工程设计[3]中,电缆是主要的投资项目,电缆类型和数量也是工程预算的重要组成部分,对于较大型的站场,由于室外信号设备众多,图中各类电缆纵横交错,电缆的类型和长度统计相当繁琐,一般只能依靠设计者逐条电缆进行统计,工作量大且准确率低。因此,本文针对此问题应用VBA开发环境设计了一个辅助电缆统计程序。
电缆径路图中的电缆长度芯数数据一般格式如下:
其中,sss为电缆长度。○为电缆芯数,如8表示8芯普通电缆,8A表示数字内屏蔽A型8芯数字电缆。(s)为备用的电缆芯数。□有L、-D、和省略三种形式,其中,L为铝护套信号电缆;-D为低烟无卤电缆;省略为普通信号电缆。
VBA程序加载成功后,首先由用户选择电缆径路图中的全部图形对象,由ThisDrawing.SelectionSets.Add()命令建立选择集,并由element.TextString命令获取全部对象元素。然后设计程序根据上述电缆长度类型芯数数据格式,通过InStr()命令对全部数据进行逐个筛选,当前元素如果不是所需的数据类型时,返回继续选择一下元素,如果确认是电缆数据类型,则通过if...else if....else条件语句根据程序定义的全部电缆分类来记录此条电缆的长度,完成之后返回选择集筛选并记录下一条电缆数据。当有电缆型号与芯数数据类型相同时,电缆长度进行累加并更新数据。
通过对全部对象元素进行筛选统计后,可以得到全部电缆分类后的长度统计数据,最后由用户通过ThisDrawing.Utility.GetPoint()命令选择数据在AutoCAD图形文件的插入位置,完成数据的生成,并可由ActiveWorkbook.SaveAs path & “\XX.xls”命令实现数据由AutoCAD到Excel文件的输出功能。在程序中还可以通过对查找到的电缆数据进行修改字体或字体颜色等操作,来突出显示此类数据,方便设计者的复核和查找遗漏。
3 结束语
本程序在AutoCAD2007/2010环境下能够稳定正常运行,工程设计工作中应用效果十分良好,使设计者能够高质高效地完成电缆类型及长度的统计工作,减轻了设计者的工作强度,同时极大地提高了工作效率。
本文通过对电缆类型和长度统计程序介绍了一种AutoCAD VBA在铁路信号工程设计中的简单应用,将其应用在铁路信号工程设计中可以大大提高设计绘图的效率和质量,减少人为的失误和疏忽,保障工程的准确性。VBA的开发应用设计在本领域还有很大的发挥空间,如信号机、电缆盒、道岔的模块化绘图处理中的应用等。
参考文献
[1]李凤华.AutoCAD2002/2000 VBA开发指南[M].清华大学出版社,2001.
[2]张晋西.Visual Basic与AutoCAD二次开发[M].清华大学出版社,2002.
[3]王秉文.6502电气集中工程设计[M].中国铁道出版社,2010.
作者简介
郭庆龙(1984-),男,辽宁锦州人,硕士研究生,助理工程师,从事铁路信号方面的设计研究工作。