摘要:对在AutoCAD2000中实现焊接符号快速标注的原理和方法进行了研究,提出了以人机交互方式实现焊接符号标注的系统运行模式,设计了具有良好人机学特性的系统界面,极大地提高了焊接符号标注的效率。以VisualC++6.0和ObjectARX3.0为开发工具,运用自定义实体类技术,通过对一系列ObjectARX类函数的重载,开发了基于AutoCAD2000的焊接符号快速标注系统。详细讨论了从AcDbEntity类派生自定义焊接符号类所涉及的相关应用技术。
关键词:焊接符号;ObjectARX;AcDbEntity类;AcEdJig类;AcDbObject类
AutoCAD是目前微机系统中广泛使用的CAD绘图软件,利用它可以大大提高绘图的效率和自动化程度。但AutoCAD本身是一个通用的CAD支撑软件,随着CAD应用的不断深入,应用范围的不断拓宽,越来越多的用户需要借助二次开发来使该系统更好地适应本地使用需求。很多行业有自己的专用符号体系,各自的标注规则,这时AutoCAD自带的标注系统很难满足用户的需求。好在AutoCAD提供了很强的二次开发手段,借助这些开发手段,可以把这种使用率很高的绘图过程用简单的命令加以实现。
ObjectARX(AutoCADRuntimeeXtension)工具是Autodesk公司推出的一种新的AutoCAD二次开发工具,采用并支持面向对象技术,是新一代AutoCAD二次开发的首选工具[1]。利用它的类库,可解决许多AutoLisp、ADS、VBA难以解决或不能解决的问题[2],提高开发效率。ARX应用程序利用AutoCAD核心数据库结构、图形系统、几何造型核心及代码,建立和AutoCAD本身固有命令有同样操作方式的新命令。利用ObjectARX开发工具进行CAD应用系统开发已有一些成功的案例,如用ObjectARX开发滑动轴承结构CAD设计系统。[3]
本文对在AutoCAD中实现机械设计中常用的焊接符号的标注进行了深入研究。本系统以Auto CAD2000为平台,以VisualC++6.0和ObjectARX3.0为二次开发工具[4],成功地实现了常用焊接符号的标注。本系统以选择坡口的形式来决定焊接符号,符合设计人员的设计习惯,把用户从繁杂的焊接符号选择和组合中解放出来。本标注系统生成的焊接符号是从AcDbEntity类派生的自定义类的对象,因此它具有AutoCAD实体的各种属性和操作方式。焊接符号生成后用户可以很方便地修改它的层、字体,对它进行平移、缩放、拉伸等操作,极大地满足了后期对设计图进行编辑和修改的需要。
1 系统开发、运行环境
本系统是在VisualC++6.0和ObjectARX3.0编程环境下开发的,可在AutoCAD2000下动态加载运行,操作系统为Windows98或W