浅谈CAD软件二次开发的方法及工具
2019-10-14欧阳旭奕
摘 要:计算机辅助技术(Computer Aided Design)作为杰出的工程技术成就,已广泛地应用于工程设计的各个领域。它推动了几乎所有领域的设计革命,对于加速工程建设和缩短产品开发周期、提高产品质量、降低成本、增强企业竞争力发挥着巨大作用。CAD二次开发指根据客户的特殊用途进行软件的客户化定制和二次开发。它往往能够大大提高企业的生产效率和技术水平,故其二次开发在工业日益发达的今天仍显得十分重要和迫切。
关键词:CAD软件;二次开发;
1 CAD软件的发展背景
计算机辅助技术(Computer Aided Design)作为杰出的工程技术成就,已广泛地应用于工程设计的各个领域。CAD最早出现于二十世纪60年代,是美国麻省理工学院提出的交互式图形学的研究计划,由于当时硬件设施昂贵,只有美国通用汽车公司和美国波音航空公司使用自行开发的交互式绘图系统。二十世纪70年代,小型计算机费用下降,美国工业界才得以开始广泛使用交互式绘图系统。二十世纪80年代,随着PC机的应用,CAD得以迅速发展,出现了专门从事CAD系统开发的公司。当时这其中专业的CAD制作公司VersaCAD开发的CAD软件功能强大,但其昂贵的价格限制了它的普遍应用。而现在的Autodesk公司那时是一个仅有员工数人的小公司,但由于其开发的CAD系统课免费拷贝,故虽然功能较少,但在社会中得以广泛应用。同时,该CAD软件升级迅速也与其系统的开放性此密不可分。
2 CAD软件二次开发的方法
CAD二次开发指根据客户的特殊用途进行软件的客户化定制和二次开发。而CAD软件二次开发的方法有许多,大部分情况下,开发团队会使用参数化、成组化或交互式的方法进行对应的开发,由此提高软件的应用效率。
2.1 CAD软件二次开发参数化方法
参数化方法是在CAD软件二次开发中应用最多的一种方法。在这种方法中,主要是根据软件在二次开发的过程中所产生的不同的需求来制定不同的软件管家,故在进行CAD软件二次开发的过程中,应该在开发之前对CAD软件有一个整体的规划,并在此中将人们对软件的不同需求转化为参数,并将它们进行统一管理。确保CAD在进行二次开发过程中具有更高的效率和更准确的数据。因此也可以将此参数化方法与大数据联系起来,由于CAD软件二次开发面向不同的人群,不同的企业,有着相似或完全不同的要求,但当运用参数化方法进行设计时,对应的CAD二次开发人员按照收集的数据参数进行开发,能更加符合客户的要求。
2.2 CAD软件二次开发成组化方法
成组化方法同样在CAD软件二次开发应用广泛,其来源于CAD软件二次开发过程中,要求复杂,需求众多,但这些不同的需求中实际上是有一定的相似性的,因此就出现了在CAD软件二次开发过程中将相似的需求进行组队,这种成组化方法能够减少CAD软件二次开发者的工作量,带来一定的便利性,同时提高了其工作效率。需要时查找已经存入数据库的通用的集合图像,即可得到简单快捷的数据。
2.3 CAD软件二次开发交互式方法
此外,CAD软件二次开发中的交互式方法应用也较多,它是一种能让CAD软件使用者十分直观的面对自己设计的东西的方法,图像形成显示系统是交互式方法应用的主要部分。除了上述系统,CAD的数据库、图形库、程序库也是交互式方法的应用内容,并且这些库的数据越多就表示CAD的交互性越强。交互性CAD软件二次开发客户化功能定制工具一般分为四类:用户定义特性,知识工程,应用程序编程端和组件应用架构。前两个为CAD系统本身提供的定制工具,功能有一定的局限性。后两者属于二次开发工具,应用程序编程接口入门容易,不过具有一定的应用限制。
3 CAD软件二次开发的工具
前述可知,近年来AutoCAD软件的应用相当广泛,故介绍相关几种针对于AutoCAD软件二次开发的工具。大致分为以下三种:VBA,LISP和Object ARX。
3.1 VBA
VBA是2000版本后具备的功能,它通过AutoCADActive Automation接口对AutoCAD进行编程控制,是一个引入了对象的设计环境,为用户提供类似Visual Basic语言所拥有的功能,可以执行并存取AutoCAD环境的所有资源,适合编写中型的CAD软件。由于AutoCAD的软件系统本身就具备集成开发环境,这种通过VBA接口而进行二次开发的程序会成为AutoCAD的内部程序之一。
3.2 LISP
LISP(List Processing Language)是一种计算机的表处理语言,是广泛应用于人工智能学科领域的程序设计语言。AutoLISP语言是嵌套于AutoCAD内部将LISP语言和AutoCAD有机结合的产物。使用AutoLISP可以直接调用几乎所有的AutoCAD命令。AutoLISP语言同时具有强大的图形处理功能。Visual LISP是AutoLISP的换代,完全兼容AutoLISP,在此基础上进行了扩展,可以通過Microsoft ActiveX Automation接口与对象交互。
3.3 Object ARX
Object ARX应用程序是一个DLL(动态链接库),共享AutoCAD的地址空间,对AutoCAD进行直接函数调用,故使用ARX编程的函数执行速度会大大提高,同时由于ARX类库采用标准的C++类库的封装形式,也极大提高了程序员的可靠度和效率。
随着现代社会生产力的不断发展,CAD技术的单一已难以适应企业生产的设计要求,进行CAD软件二次开发往往能够大大提高企业的生产效率和技术水平,故其在工业日益发达的今天仍显得十分重要和迫切。因此需要研究开发人员将更多优秀与普适性好的方法应用于CAD软件的二次开发中,由此来满足用户复杂以及多样化的需求,充分挖掘和开发CAD软件的功能和价值。
参考文献:
[1]崔丹丹. CAD软件二次开发方法及应用[J]. 电子技术与软件工程. 2018,(10),40
[2]徐尧洋. 交互式CAD/CAE/CAM系统二次开发[J]. 电子技术与软件工程. 2018,(09),44
[3]刘晓花. Auto CAD二次开发技术及其应用研究[J]. 通讯世界. 2017,(11),286-287
[4]刘晓光. CAD软件二次开发方法及应用探析[J]. 无线互联科技. 2015,(24),62-63
作者简介:
欧阳旭奕(1998.04.15)男,汉族,学生,湖南省衡阳市雁峰区黄青巷8号401户,单位:郑州大学机械工程学院,专业: 机械工程 ,研究方向:机械设计