云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 基于AutoCAD平台下的机床夹具的压板和压块的设计软件开发

基于AutoCAD平台下的机床夹具的压板和压块的设计软件开发

  • 62 次阅读
  • 3 次下载
  • 2025/5/31 0:58:16

2、 AutoCAD与VBA

2.1 AutoCAD在零件绘图设计中的应用

AutoCAD 是目前国内工程界应用最为广泛的绘图软件。它不仅具有强大的绘图功能与图形编辑功能,而且界面友好直观,容易学习和使用。此外,AutoCAD还具有开放的体系结构,用户可以对其进行二次开发,以满足自己的特殊需求。

通常我们在绘制一张零件图时,都会用到图纸边框、标题栏和粗糙度,对于装配图还要标序号,建立并填写明细表。图纸边框、标题栏、序号、粗糙度以及明细表格式都遵循一定的绘图标准,因而它们的格式一旦被确定往往不会改变。而AutoCAD没有提供这些常规项目的使用菜单,所以在实际使用中,用户往往将这些内容做成块文件而保存起来,在需要的时候根据指定的格式用insea命令插入到图形中。这样虽然可提高绘图速度,但智能化程度不高,使用起来具有相当大的局限性。利用 AutoCADVBA二次开发功能,将这些块文件添加到 AutoCAD 窗口菜单中,使用时在窗口菜单中直接选取即可。这样既可提高绘图效率和智能化程度,又利于统一标准。

2.2 AutoCAD二次开发技术

所谓“二次开发”是指由熟悉产品设计,同时又掌握计算机应用技术的人员在某一CAD软件平台上围绕产品设计的具体要求而对CAD软件进行的应用开发AutoCAD虽然功能强大,但它毕竟是一种通用的软件,很难满足各行业的行业标准。然而,AutoCAD 所具有的开放式结构及其所提供的多种开发工具,使用户能够完个摆脱 AutoCAD 的限制,根据自己的需要对其进行二次开发,这也是 AutoCAD广受人们青睐的主要原因之一。迄今为止,AutoCAD 已经相继推出了五代二次升发工具:1、 AutoLISP语言;2、ADS开发工具;3、Objector; 4、VBA 5、VisualLISP。

组件化是现代开发软件系统的重要特征。在AutoCADR 14.01(R14中文版)中 VBA(Microsoft Visual Basic Application)成为软件的标准安装组件。VBA提供了一个基于对象的编程环境,具有丰富的开发功能,能直接在AutoCAD 内部执行,开发者能够方便地替换和添加 AutoCAD 系统内部的模块。在VBA 中, AutoCAD 中的实体作为对象而存在,对这些实体的操作作为方法,编制处理过程或宏命令。这一开发手段使得开发者能够进入到AutoCAD内部进行用户化处理。另外,VBA能够使得AutoCAD数据与其它VBA应用程序直接共享,如Microsoft Office系列软件。最重要的是VBA的加入,扩展了 AutoCAD 集成用户化I具的能力(集成了 AutoLISP, VisualLISP 和 ObjectARX API 等工具),为访问 AutoCAD 软件的多种技术框架提供了新的选择和新的开放机会,可以按所需求的工作方式进行应用程序的用户化,也可以从战略上考虑开发基于 AutoCAD 的应用程序。

VBA开发 AutoCAD 的技术特点 : VBA是微软开发出来的应用程序共享一种通用的自动化语言,它可以使常用的程序自动化,并可以创建自定义的解决方案。VBA

4

被集成到 AutoCAD 中,VBA和AutoCAD中强大的ActiveX自动化对象模型的结合,代表了一种新型的定制 AutoCAD 的模式构架。通过VBA,我们可以操作 AutoCAD2007,控制ActiveX和其它一些应用程序,使之相互之间发生互易活动。

VBA工具有如下优点: VBA的对话框构件快速、高效,允许开发者快速地定制程序原型和得到设计信息的及时反馈,其工程可以单独存在,也可以嵌入在图形中,这给开发者在发行应用程序时以极大的灵活性;强化了 AutoCAD 与数据库的通讯能力。当然,正如VB与VC的关系一样,VBA在系统开发等方面的功能不及ARX。但Autodesk公司对VBA的高度重视,充分说明VBA是除系统级开发工具以外,最好和最有前途的应用级开发工具,适用于专业和非专业的开发人员使用,具有十分广阔的应用前景。

下面就是VBA作为 AutoCAD二次开发工具的主要功能:

(1)VBA提供强大的窗体创建功能,为应用程序建立对话框及其它屏幕界面。 (2)可以创建自己的工具条。

(3)可以创建功能强大的模块级宏指令,宏名实质上就是模块的过程名。 (4)提供建立类模块的功能,这对开发大型工程非常有用,因此类可以提供重用组。

(5)具备完善的数据访问和管理能力,通过 ADO(ActiveX Data 0bjects),可以对Access数据库或其它外部数据库(像 dBase,FOxPro等)实现访问和管理。此功能比直接使用 AutoCAD 的数据库管理系统要方便,且功能强大。

2.3 用 VBA 进行 AutoCAD 的二次开发 2.3.1 VBA 开发机理

VBA 通过对主应用程序提供的 Activex 对象的引用,实现对主应用程序的开发。其过程如图2-1所示。

图 2-1 用 VBA开发应用程序的机理

5

其中,ActiveX Object可以是AutoCAD ActiveX Object,也可以是ExcelActiveXObject,也可以是其它主应用程序提供的ActiveX Object。 VBA通过相同的调用格式,对不同的主应用程序的ActiveX Object调用,可以开发出相应的应用程序。

VBA是通过AutoCAD ActiveX Automation接口来建立和AutoCAD对象间的联系。ActiveX是建立在COM对象模型之上的一个标准通信协议,它允许对象之间通过一定的接口相互通信。

AutoCAD ActiveX使用户能够从AutoCAD的内部或外部以编程方式来操作 AutoCAD。它是通过将 AutoCAD 对象显示到“外部世界”来做到这一点的。这些对象被显示后,许多不同的编程语言和环境以及其它应用程序(例如Microsoft Word VBA或Excel VBA)就可以访问它们。

AutoCAD对象是通过分层方式来组织的,应用程序对象为根对象。这种分层结构的视图被归结为对象模型。对象模型提供了用户访问下一层对象的途径。用户可直接通过用户定义变量引用对象。直接引用对象应包括对象 的层次。举一个最简单的例子,在VBA中要利用圆心和半径创建圆可以使用以下代码:

Subdrawcirele()

Dim ptl(2)As Double Dim radius As Double pd(0)=33 ptl(1)=73 ptl(2)=62 radius=46

调用addcircle方法绘制圆

ThisDrawing.ModelSpace.addcircle ptl,radius End Sub

ActiveX 自动化技术是微软建立的标准,是对象链接与嵌入(OLE. Object Linkand Embed)的进一步发展,它允许用户在Windows应用程序中通过暴露的对象控制另一个Windows应用程序。AutoCAD ActiveX技术提供了一种机制,可使编程者通过编程从AutoCAD的内部或外部进行操作控制。AutoCAD ActiveX 提供了一系列ActiveX Object供VBA从AutoCAD内部引用。这一系列ActiveX Object按一定层次组成一种对象结构,每一种ActiveX Object代表了 AutoCAD 中一个明确的功能,如画线、画多段线、图块定义等。AutoCAD所提供的大多数功能,均以方法和属性的方式封装在 ActiveX Object中。作为面向对象编程语言中的一种,VBA可以方便地对这些方法和属性进行引用,从而达到对 AutoCAD 实现编程的目的。

6

2.3.2 建立VBA工程文件

在 AutoCAD 中,VBA程序以工程文件的形式存在,其程序扩展名为“.dvb”。由于VBA是VB的一个子集,所以两者的语法和程序的结构基本上是一样的。通常,VBA工程文件可以包含的元素有:对象、窗体、标准模块、类模块和引用。在窗体和标准模块内部包含一系列针对控件的过程、函数或宏。而宏是能够执行一定功能的VBA子过程,每一个VBA工程中都至少包含一个宏。在标准模块内编辑的过程即为宏。

VBA提供了可视化的集成开发环境 VBA IDE( VBA Intcgrated Development Environment),其界面与 Visual Basic 类似。通过在 AutoCAD 命令行输入 vbaide命令或选择“工具”菜单下“宏”子菜单中的“Visual Basic 编辑器”即可进入 VBA IDE 编程环境,如图2-2所示。

图 2-2 VBA IDE 编程环境

2.3.3 VBA 编程示例

VBA 程序可以方便地调用 AutoCAD Activex 对象的各个属性和方法,下面的例子详细说明了 VBA 对 AutoCAD 的二次开发方法,同时也说明了机床夹具零件及部件的设计软件中绘图所采用的一般方法。

创建并编辑图元:图形对象(也称图元)是组成图形的可见对象(例如直线、圆、光栅图像等)。要创建这些图像,可以使用相应的 Add(Entityname)方法;要修改或查询这些对象,可以使用对象本身的方法和属性。每一个图元都为应用程序提供了执行大部分 AutoCAD 编辑命令(例如复制、删除、移动、镜像等)的方法,

7

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

2、 AutoCAD与VBA 2.1 AutoCAD在零件绘图设计中的应用 AutoCAD 是目前国内工程界应用最为广泛的绘图软件。它不仅具有强大的绘图功能与图形编辑功能,而且界面友好直观,容易学习和使用。此外,AutoCAD还具有开放的体系结构,用户可以对其进行二次开发,以满足自己的特殊需求。 通常我们在绘制一张零件图时,都会用到图纸边框、标题栏和粗糙度,对于装配图还要标序号,建立并填写明细表。图纸边框、标题栏、序号、粗糙度以及明细表格式都遵循一定的绘图标准,因而它们的格式一旦被确定往往不会改变。而AutoCAD没有提供这些常规项目的使用菜单,所以在实际使用中,用户往往将这些内容做成块文件而保存起来,在需要的时候根据指定的格式用insea命令插入到图形中。这样

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com