您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 对vb软件系统进行CAD二次开发
对vb软件系统进行CAD二次开发关键词:标准零件、AutoCADVBA语言、AutoCAD的二次开发计算机辅助制图是现代企业生产和设计的重要工具,AutoCAD是计算机辅助设计工具的一种,VB是AutoCAD软件的重要组成部分。它是AutoCAD软件二次开发的重要工具。它可使一些常用的机械零件能很快的调用,简捷方便,很大的提高了工作效率缩短了新产品的开发周期,提高制图的质量。利用VB语言对AutoCAD进行二次开发是现代计算机技术不可缺少的内容,而且直接影响到制图的速度和质量。本次设计是AutoCAD软件二次开发的其中一部分,它在AutoCAD软件开发中占有一定的地位和作用。AutoCAD为用户提供了多种二次开发工具,其中较常用的有AutoLISP、VBA、ObjectARX三种方式。AutoLISP是一种解释性的表结构处理语言,具有语言结构简单、开发周期短、不依赖于操作平台的特点,但是作为解释语言,其运行速度和保密性方面有一定的缺陷,并且不适合开发有复杂运算的软件。VisualBasic(VB)是美国微软公司推出的程序开发工具,它简单易学,适用面广,在Windows平台上被广泛使用。为此,可以作为测绘工作者进行程序设计的首选工具。VBA是VisualBasicforApplications的缩写,由VisualBasic派生而来,现在已经成为Mictosoft产品的标准语言。与VB一样,VBA是面向对象的设计语言,它继承了VB语法简单、功能强大的特点,同时,由于VBA可与主程序在同一内存空间内运行,大大提高了运行的速度,并具有某些“智能”功能VBA的概念与作用VBA(VisualBasicforApplication)是一种完全面向对象体系结构的编程语言,由于其在开发方面的易用性和具有强大的功能,因此许多应用程序均嵌入该语言作为开发工具。利用VB进行AutoCAD二次开发的关键步骤首先,要在VB中引用AutoCAD的类型库Acad.tlb,该库位于AutoCADR14的安装目录下。其次,要建立用VB开发的应用程序与AutoCAD间的联系,这一过程,称为初始化。相应的程序代码如下:PrivateSubInitGraph()OnErrorResumeNextSetAcadApp=GetObject(,AutoCAD.Application)IfErrThenMsgBoxErr.DescriptionUnloadMeEndIfAcadApp.Visible=TrueSetAcadDoc=AcadApp.ActiveDocumentSetMoSpace=AcadDoc.ModelSpaceEndSub之后,即可以用AutoCAD类型库提供的属性、方法对AutoCAD进行操作,如画线,可用AddLightWeightPolyline语句来完成,写文字,可用AddText语句来实现。螺栓编程流程图PrivateSubcanshu_Click()EndSubPrivateSubCmdExit_Click()UnloadMeEndSubPrivateSubCmdOk_Click()'检查参数赋值情况IfTextX.Text=OrTextY.Text=OrTextZ.Text=ThenMsgBox请在屏幕选起点!,vbExclamation,警告ExitSubEndIf'定义直线对象DimobjLine01,ObjLine02,ObjLine03,ObjLine04,ObjLine05,ObjLine06,ObjLine07,ObjLine08,ObjLine09,ObjLine10,ObjLine11,ObjLine12,ObjLine13,ObjLine14,ObjLine15AsAcadLine'定义数组变量,作为各顶点的坐标DimPt01(2)AsDouble:DimPt02(2)AsDouble:DimPt03(2)AsDoubleDimPt04(2)AsDouble:DimPt05(2)AsDouble:DimPt06(2)AsDoubleDimPt07(2)AsDouble:DimPt08(2)AsDouble:DimPt09(2)AsDoubleDimPt10(2)AsDouble:DimPt11(2)AsDouble:DimPt12(2)AsDoubleDimPt13(2)AsDouble:DimPt14(2)AsDouble:DimPt15(2)AsDoubleDimPt16(2)AsDouble:DimPt17(2)AsDouble:DimPt18(2)AsDoubleDimPt19(2)AsDouble:DimPt20(2)AsDouble:DimPt21(2)AsDoubleDimPt22(2)AsDouble:DimPt23(2)AsDouble:Dimd,l,bAsDoubleDimx,y,zAsVariantx=TextX:y=TextY:z=TextZ'检查参数赋值情况IfTextZhiJ.Text=OrTextChangD.Text=ThenMsgBox参数不能为空,请检查参数的输入.,vbExclamation,警告ExitSubEndIfd=TextZhiJ:l=TextChangDIfd=5ThenMsgBox螺栓长度应为:GB578025~50;GB578110~40,vbExclamation,警告b=16Ifl16Orl50ThenExitSubEndIfEndIfIfd=6ThenMsgBox螺栓长度应为:GB578030~60;GB578112~50,vbExclamation,警告b=18Ifl18Orl60ThenExitSubEndIfEndIfIfd=8ThenMsgBox螺栓长度应为:GB578035~80;GB578116~65,vbExclamation,警告b=22Ifl22Orl80ThenExitSubEndIfEndIfIfd=10ThenMsgBox螺栓长度应为:GB578040~100;GB578120~80,vbExclamation,警告b=26Ifl26Orl100ThenExitSubEndIfEndIfIfd=12ThenMsgBox螺栓长度应为:GB578045~120;GB578125~100,vbExclamation,警告b=30Ifl30Orl120ThenExitSubEndIfEndIfIfd=16ThenMsgBox螺栓长度应为:GB578055~160;GB578135~100,vbExclamation,警告b=38Ifl38Orl160ThenExitSubEndIfEndIfIfd=20ThenMsgBox螺栓长度应为:GB578065~200;GB578140~100,vbExclamation,警告b=40Ifl40Orl200ThenExitSubEndIfEndIfIfd=24ThenMsgBox螺栓长度应为:GB578080~240;GB578150~100,vbExclamation,警告b=54Ifl54Orl240ThenExitSubEndIfEndIfIfd=30ThenMsgBox螺栓长度应为:GB578090~300;GB578160~100,vbExclamation,警告b=66Ifl66Orl300ThenExitSubEndIfEndIfIfd=36ThenMsgBox螺栓长度应为:GB5780110~300;GB578170~100,vbExclamation,警告b=78Ifl78Orl300ThenExitSubEndIfEndIfIfd=42ThenMsgBox螺栓长度应为:GB5780160~420;GB578180~420,vbExclamation,警告b=96Ifl96Orl420ThenExitSubEndIfEndIfIfd=48ThenMsgBox螺栓长度应为:GB5780180~480;GB578190~480,vbExclamation,警告b=108Ifl108Orl480ThenExitSubEndIfEndIf'判断语句Ifd5#Andd6Andd8Andd10Andd12Andd16Andd20Andd24Andd30Andd36Andd42Andd48ThenMsgBox螺栓直径可能为5,6,8,10,12,16,20,24,30,36,42,48?,vbExclamation,警告ExitSubEndIfNextEndSub在本次设计中,主要是VBA的编程工作。其中涉及了VBA的对话框、判断语句、选择语句、条件语句、位置的确定、图层的设置、线形的选择、对话框的连接、技术标准的选取等等诸多方面的问题。与此同时,也比较熟练的掌握了AutoCAD的运用。由于本人的水平有限,在设计中有许多不足之处恳请各位老师予以指正。参考文献[1]《明经通道》郑立楷[2]《五金手册》李维荣机械工业出版社[3]《AutocadVBA初级教程》(第四课程序的调试和保存)[4]《齿轮加工的三维动画仿真》孙永红谭寿再[5]《工程制图》刘义李俊武机械工业出版社[6]
本文标题:对vb软件系统进行CAD二次开发
链接地址:https://www.777doc.com/doc-2398018 .html