AUTO-cad二次开发论文(键-VB开发)_第1页
AUTO-cad二次开发论文(键-VB开发)_第2页
AUTO-cad二次开发论文(键-VB开发)_第3页
AUTO-cad二次开发论文(键-VB开发)_第4页
AUTO-cad二次开发论文(键-VB开发)_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘要本说明书主要是关于AutoCAD 2000的用VB语言二次开发的说明和利用VB语言开发船舶标准件的源程序。说明书中主要涉及到了,AutoCAD软件的使用、VB语言简介、船舶标准件的结构特点和技术要求和利用VB编制的船舶标准件程序。论文中介绍了设计人员的设计思路。 船舶标准零件主要包括:螺栓、螺母、垫圈、键、销、滚动轴、承弹簧等。船舶标准件的结构特点、图形画法及技术要求是本次设计的基础,熟练掌握并用AutoCAD VBA(Visual Basic for Application)语言对AutoCAD进行船舶标准零件二次开发,以达到下述目的: 调用程序时出现对话框,输入要求的零件主要参数后能够

2、自动生成零件图形。并且图形要符合国家标准件的技术要求。 AutoCAD VBA(Visual Basic for Application)语言的任务是对AutoCAD进行二次开发促使AutoCAD更高效的工作。关键词:标准零件、AutoCAD VBA语言、AutoCAD的二次开发- -ABSTRACTManual this about 2000 AutoCAD with VB explanation and utilize VB language develop source program , shipping of standard component, language of secon

3、dary development mainly. Have involved mainly in the manual , use, VB, AutoCAD of software language brief introduction of, structure characteristic and specification requirement , shipping of standard component utilize shipping standard component procedure that VB work out. Have introduced the desig

4、ners mentality of designing in the thesis.Whether shipping standard part include mainly. Bolt , nut , washer , key , axis , bearing the spring of selling , rolling ,etc. Structure characteristic , the technique of painting of the figure and specification requirement for the shipping standard compone

5、nt are foundations designed this time, know and language carry on shipping standard part secondary development to AutoCAD with AutoCAD VBA (Visual Basic for Application ) skillfully, in order to achieve the following purposes:Appear communication frame at the procedure of transfering, part required

6、to input can produce the part figure automatically behind the main parameter. And the figure should accord with the specification requirement for the national standard component .AutoCAD VBA (Visual Basic for Application) task of language to carry on secondary development impel AutoCAD high-efficien

7、t work to AutoCADKEY WORDS: standard part、AutoCAD VBA language、Secondary development of AutoCAD- -前言计算机辅助制图是现代企业生产和设计的重要工具,AutoCAD是计算机辅助设计工具的一种,VB 是AutoCAD软件的重要组成部分。它是AutoCAD软件二次开发的重要工具。它可使一些常用的机械零件能很快的调用,简捷方便,很大的提高了工作效率缩短了新产品的开发周期,提高制图的质量。利用VB语言对AutoCAD进行二次开发是现代计算机技术不可缺少的内容,而且直接影响到制图的速度和质量。本次设计是 Au

8、toCAD软件二次开发的其中一部分,也就是基于AutoCAD2000的船舶零件开发,它在AutoCAD软件开发中占有一定的地位和作用。此次设计是由老师分配和指导的,此论文参考了很多的书籍和刊物,有答辩小组最后进行审定。由于编者的水平有限,书中缺陷和不挡之处在所难免,敬请老师批评指正。- -目 录前言摘要Abstract第一章 综述1 第一节 AutoCAD发展概况1 第二节 现代AutoCAD技术发展的方向第二章 AutoCAD VBA编程系统第一节 AutoCAD VBA第二节 结束语与致谢参考文献第一章 综 述第一节 AutoCAD的发展概况随着现代工业文明的发展,越来越多的企业对工业产品

9、的外形和内部结构的要求越来越高,产品更新的速度越来越快,传统的手工制图已经不能满足现代企业的要求计算机辅助设计技术的引进是近代工业史上的一次革命,它显著的提高了制图的速度和制图的质量,缩短了新产品设计开发的时间。AutoCAD是计算机辅助设计工具的一种,它是美国Autodesk公司在1982年12月开发出来的,AutoCAD软件是计算机辅助设计与绘图相结合的综合软件,从第一版AutoCADR1.0起,经历了若干次升级,现已达到AutoCAD2006。在AutoCAD 14版中,Autodesk首次包括了Microsoft的Visual Basic for Applications(VBA).将

10、AutoCAD和Visual Basic的功能结合在一起,可以创建非常好的定制应用程序,从而在使用AutoCAD执行当前任务时,可以在很短的时间内创建出正常情况下需要好几个小时才能完成的图形。经过三十多年的发展,CAD技术得到了迅速普及,已成为电子信息技术的重要组成部分CAD技术使产品的内容和方式发生了根本性变革,这一技术已成为工业发达国家保持竞争优势,开拓市场的主要技术手段1989年,美国国家工程科学院将CAD技术评为人类25年间(1965-1989)当代十项最杰出工程技术成就之一CAD技术之所以在短短的三十年发展如此迅速,是因为它几乎推动了一切领域的设计革命,彻底的改变了传统的手工绘图的方

11、式,极大的提高了产品开发的速度,提高了设计精度这一新技术的应用将使人类的聪明才智和创造能力与计算机高速而精确的计算能力、大容量的储存和数据处理功能结合起来,是两者相得益彰CAD技术的发展与应用水平成为衡量的科学技术现代化和工业现代化的重要标志之一近几年来,随着计算机技术的飞速发展,CAD技术已由发达国家向发展中国家扩展,而且发展的势头非常迅猛我国政府部门十分重视这一技术,已经和科技界、工业界一起把CAD技术的应用推广当作一件大事来抓,如果国家科委实施了CIMS工程和CAD应用工程,组建了全国性的CAD培训网络;机械工业部把1997年定位CAD推广年将CAD推广工作作为重中之重项目,目前正在组织

12、实施CAD应用1550工程很多大中型甚至小型企业都在努力引进这一新技术,以提高企业自身的技术素质,增强产品在国内外市场上的竞争能力另外,CAD教学也得到了个高校的普遍重视要想全面推广普及CAD技术,提高我国的整体技术水平为了拓宽AutoCAD的运用领域,从1993年夏季起,Autodesk公司已设计自动化为主题,相继推出了极具应用价值的软件群体,包括3D MAX AutoCAD、 Designer Auto surf AutoCAD、 Data Extension Auto、 Vision Animator Studio AutoCAD 、MAP Mechanical Desktop(MDT)

13、.这些将在AutoCAD中得到很好的发挥,AutoCAD也将会也来越强大。- 1 -第二节现代AutoCAD技术发展方向任何一种软件都是有缺陷的,不是完美无瑕的。AutoCAD这一软件也是一样,只有在不断的发展中,找到自己的不足力求弥补,才能趋向臻化,达到一种完美。当然这也都是相对的,是就当时的社会需求相联系的,社会需要什么样功能的软件,公司就提供什么样的软件。这是发展的根本方向。现就最新的版本的AutoCAD 2006进行介绍:2.1.1动态图块的操作图块,是大多数图形中的基本构成部分,它用于表示现实中的物体。现实物体的不同种类需要定义各种不同的图块。这样就需要定义成千上万的图块定义,在这种

14、情况下,如果图块的某个外观有些区别,用户就需要炸开图块来编辑其中的几何图形。这种解决方法会产生大量的、矛盾的和错误的图形。在2006版本中,新增的功能强大的动态图块功能使用户可编辑图形外观而不需要炸开它们。用户可以在插入图形时或插入图块后操作图块实例。选择多种图形的可见性图块定义可包含特别符号的多个外观形状。在插入后,用户可选择使用哪种外观形状。例如,一个单一的块可保存水龙头的多个视图、多种安装尺寸,或多种阀的符号。使用多个不同的插入点在插入动态图块时,可以遍历图块的插入点来查找更适合的插入点插入。这样可以消除用户在插入图块后还要移动块。贴齐到图中的图形在用户将块移动到图中的其它图形附近时,图

15、块会自动贴齐到这些对象上。编辑图块几何图形指定动态图块中的夹点可使用户能移动、缩放、拉伸、旋转和翻转块中的部分几何图形。编辑图块可以强迫在最大值和最小值间指定或直接在定义好属性的固定列表中选择值。如,有一个螺钉的图块,可以在总长1到4个图形单位间拉伸。在拉伸螺钉时,长度按0.5个单位的增量增加,而且螺纹也在拉伸过程中自动增加或减少。另外一个例子是一个插图编号的块,包含了圆、文字和引线。用户可在绕圆旋转引线,而文字和圆则保持原有状态。第三个例子是一个门的图块,用户可拉伸门的宽度和翻转门轴的方向。数据输入和对象选择2006对用户界面进行了很大的改进。它让用户能更简单的与软件交互,使用户能更注重于自

16、己的设计。在焦点附近查看和输入数据在图形中绘制和编辑对象时,用户经常要阅读和回应显示于命令行中提示。- -如果忘了阅读命令行,可能会漏掉一些重要的选项,最后可能导致结果出错。在命令行交互,尽管是必须的,但却转移了人的注意力。用户必须大图形界面上的光标绘图焦点处转移到命令行,然后再转回来。如果在教新用户使用AutoCAD时,呵呵,这样很吃力,因为需要经常提醒用户去注意命令行。在2006版本中,新的动态输入设置可使用户直接在鼠标点处快速启动命令、读取提示和输入值,而不需要把注意力分散到图形编辑器外。用户可在创建和编辑几何图形时动态查看标注值,如长度和角度,通过TAB键可在这些值之间切换。用户可使用

17、在状态栏中新设置的切换功能来启用动态输入功能。在草图设置对话框中也增加新的标签,提供了设置动态输入功能的样式、可见性和外观。命令行很长时间以来是AutoCAD的基本部分,呵,但不要担心,它还没有这么快被扔掉的。然而,在2006中,你会发现,命令行将会用得很少。访问命令和最近数据很多人用了AutoCAD命令行已经很多年了,所以没那么容易就把它放弃。对于那些经常使用的命令,用户会连想都不用想就可以把命令敲出来。但对于用得少的命令,有时会想不出它的拼写,特别是我们本来就不是学英文的,真是难事。就象“EATEXT”或“EATTEXT”,就不知是哪个对。2006提供了自动完成功能来迅速输入不常用的命令。

18、在命令提示中,用户可输入系统变量或命令(包括ARX定义的命令和命令别名)的前几个字母,然后按TAB键来遍历所有有效的命令。例如,在命令提示中输入“EAT”,然后按TAB键,就可以在所有以EAT开头的命令中查找需要的命令。在连续使用AutoCAD命令时,用户可以发觉同样的数据会重复输入很多次。就算你多么喜欢敲键盘,重复的数据也会让人效率低下,而且也会出错。为了减少出错和节约时间,可使用2006版新的最近输入功能。用户可访问最近使用的数据,包括点、距离、角度和字符串。怎样操作?可在命令行中按箭头键的上和下键,或从右键菜单中选择最近输入项。最近使用值与上下文有关。例如,在命令行提示输入距离时,最近输

19、入功能将显示之前输入过的距离。当在旋转命令中提示输入角度时,之前使用的旋转角度将会显示出来。用户可通过INPUTHISTORYMODE系统变量控制最近输入功能的使用。缩放和平移在用AutoCAD设计时,缩放和平移命令使用的次数最多。缩放时,你可能会迷失方位,忘了原来的位置,或忘了要转到哪里,或需要快速返回原来的视图。如果缩放或平移的次数很多,返回原来的视图时光敲“回退”(UNDO)就够累的。还好,2006版提供了改良的缩放和平移功能。有一个新的系统变量:VTENABLE,它可启用平滑转换来切换显示区域。例如,如果执行了范围缩放,而且启动了平滑转换,则用户可看到图形从局部的视图动态地转到整个图形

20、。平滑视图转换帮助用户保持图形中的可视方位。更进一步的改进了,整个缩放和平移过程,可通过设置把它们看成单独的一个操作看待。这个设置在选项对话框中的用户系统设置标签中设置。这样,只需要一步就可以回到以前的视图,真是省时省力。- -选择对象对象多时,选择一个对象也太难了。经常要经过多次的试验,选错了,按取消(ESC)键。我怕你会把ESC键给按坏了。呵呵,到了2006版,对象选择的功能被增强了。可视的提示提供了动态的反馈功能,帮助确定选定的对象。当用户的光标滚动到对象上时,对象会亮显,这样可以使用户看到要选的是哪个,而且会出现一个翻动器翻动亮显对象。这样还有一个好处就是可以在不选定对象时判断一组图形

21、是单独的对象(如多段线)或分开的对象(如线段)。当选择多个对象时,一个半透明的选择窗口可清楚的看到对象选择区域。用户可使用选项对话框中的选择标签中提供的新的控件修改对象选择行为。这一点明显是学Microstation。自定义比例列表绘图比例是AutoCAD图形最基本的部分。在AutoCAD的相关功能中都可以访问常用的比例。然而,因为不同的领域和几何图形,默认的比例可能不太适合平常的使用。例如,如果你是德国的制造工程师,就不会用到建筑上的一些比例,如1/4”=1。但是,你还可能需要其它一些没有被列出的比例。在2006版本,用户可轻易创建和管理自定义比例列表以适合自己的工作。新的ScaleList

22、Edit命令让用户可访问“编辑比例列表”对话框,通过它可以添加新的比例,编辑现有比例,重新排列比例列表,还有可以删除不需要的比例。所有在该对话框中的比例将自动显示在以下设置中:打印对话框页面设置对话框视口工具栏下拉列表图纸集管理器布局向导属性选项板执行数学计算在AutoCAD中创建的技术资料图形,经常需要进行数学计算。要进行这些计算,用户经常需要调用外部的计算器或使用AutoCAD本身附带的功能强大,但非常讨厌的命令行计算器。这两种方式都使人分心去关注其它与设计无关的东西。 在2006版中,新的“快速计算器”功能提供了内嵌式图形化的三维计算性能。可以在命令行中输入QuickCalc命令调用,而

23、在属性选项板中,当输入数字字段时,也可以随时调用它。四个可伸缩屏使用户能完全控制整个操作。在数字屏中,可以使用在标准和计算器一样的界面输入值和执行基本的数学运算。在科学计算屏中,有一些高级的功能可进行科学或工程计算。在单位转换屏中,可以在公制和英制间转换各种单位。在变量屏中,可以定义全局常数和变量,使其在整个AutoCAD过程中有效。 可以输入值或直接在图形中的对象上取值。当执行这样的计算后,值会自动保存到最近列表中以提供以后计算使用。可以粘贴计算值到命令行或将其传给属性窗口。 - -注释图形注释在几乎所有的图形中都是基本的内容。用户可使用多种AutoCAD对象来注释,如文字、标注、块属性和表

24、格。但这样做很废时也容易出错。 在2006版中,不管使用文字、标注、块属性或表格,均可以进行在位文字编辑、自动项目符号和编号、标注增强,并可以将属性值提取出来并放到表格中。在位编辑文字在以前版本创建和编辑文字经常会出问题。文字的大小自动调整以适合在编辑器中显示,但这样的话,在放到实际位置时这些文字就不知该有多大。而在位编辑对于单行文字和多行文字都适用。另外,对于编辑多行文字,会有一个新的选项工具栏和右键菜单选项。可以选择显示文字格式工具栏、选项和标尺。甚至可以使用不透明背景。创建编号和项目符号列表说明(象技术要求),做为绝大多数的图形中重要的部分,一般都是用数字或字母做为项目的开头排列的。在某

25、些情况下,它们可能要包含小的说明项,又要使用另外的字母或数字,或项目符号。在2006以前版本中,做起来很麻烦。如果手工输入序列数字或字母,然后对中间的部分进行了增删时,则必须重新编辑所有的数字或字母。而创建项目符号则需要查找要显示的符号并插入或复制到每个需要的位置。 在2006版本中,创建技术要求这样的说明性文字列表非常容易和直观。使用新的项目符号和列表菜单(这个菜单可在文字格式工具栏或右键菜单中找到),可以创建字母、数字和项目符号列表。如果输入字母和数字字符,如“A.”或“1.”,则自动列表项自动将其转换为合适的字母或数字列表。同样,如果输入的是一个特殊的字符,如折号“-”或星号(*),以该

26、符号的项目符号列表将自动创建并用于以后的行中。当启用了数字编号项时,数字和字母项将自动按序列创建。如果删除了其中一项,其它的行将会自动重新排序。改变标注线型对于不同的图形,可能要求标注的线型不同,如尺寸线和尺寸界线要求使用不同的线型。此时,用户就得炸开标注来更改单独的线型,但这样则使标注不再关联,这不利于以后的编辑。在2006版中,标注对象可以为不同的线指定不同的线型。用户可以通过标注样式对话框或属性窗口来进行调整。分配固定长度的尺寸界线在一些图形中,可能需要为不同部分的图形标注具有固定尺寸界线长度的标注。这时则需要手工编辑尺寸界线的原点,这也太浪费时间了。 真好,2006版就为我们准备好这样

27、的选项,在标注样式对话框中和属性窗口中都可以为尺寸界线指定固定的长度。使用固定长度的尺寸界线,不需要去考虑标注与图形之间的位置关系。- -标注弧长在以往的版本中,用户可以标注半径、直径、角度和弦长等与弧有关的各种标注,唯独没有标注弧长这个功能,明经通道也专门写过这样的程序来标注弧长。而在2006版中,则提供了弧长标注功能。可从标注菜单和工具栏中访问DimArc命令来执行。而且弧长也可以包含一个弧长的符号以与其它标注区分开来。这个设置可在标注样式对话框中找到。标注大圆弧曲线要标注一个圆弧,半径标注应该是通过圆弧的中心。但,对于大圆弧来说,中心可能会远远超出图纸,这样就只能炸开标注再手工编辑。在2

28、006版中,可以用折角来标注大圆弧而不用炸开标注。折角可在“标注样式对话框”中找到。翻转标注箭头标注样式对话框中提供了控制标注箭头的位置的功能。例如,可以在空间不够的情况下消去箭头或将箭头移动到尺寸界线外。然而,不能单独单独控制两个箭头,而且在标注后经常不知道怎样去处理箭头。在2006版本,新的翻转箭头项被添加到标注的右键菜单中,用户可以翻转任何一个箭头的方向。这只需要在靠近箭头的尺寸线上选择后,调用右键菜单中的翻转箭头项就可以对箭头进行翻转了。指定展开长度有些图形,特别是制造业的一些图形,需要用户指定一个符号来表示对象的展开长度。在2006版本中,提供一个符号来表示展开长度。在多行文字编辑器

29、右键菜单的符号列表中增加了展开长度符号。提取块属性数据到表格中对于不同的待业,可能需要使用表格来做进度表、零件明细表或其它类型的数据列表。 这些表格总结了图形的内容并列出了设计中的每一部件。在以前,用户需要手工创建、整理和维护这些表格或将这些数据提取到外部文件中,在其它应用程序(如Excel)打开并格式这些内容,然后通过OLE或表格对象将这些内容输入回AutoCAD。 这个过程在2006版本中变得非常简单。增强的属性提取向导提供一个很强大的灵活性的控制性。新的数据源选项使用户可从整个图纸集中提供属性数据,而且提供了另外的设置可以控制对哪些图块进行分析。为防止在属性提取向导中出现不需要的图块和属

30、性,可能选择只查看带属性的图块和只有属性数据(区分于所有普通图块属性)。所选定的块会出现一个预览图像,可以在当前图形中查看选定的图块。 在最后输出前,用户可以预览数据,重新安排表格元素并通过点击列头将数据排序。在觉得满意时再输出,可以将其提取到外部文件,也可以放到AutoCAD表格中,或者同时输出。 提取数据到AutoCAD表格可得用预先确定的表格样式。跟手工创建的表格不- -同,这样做出来的表格中的文字是与属性数据相链接的。如果属性数据更改了,只需更新一个表格就可以得到最新的属性信息。执行表格数据的计算工程图纸经常需要进行一些计算,结果也需要在图形中以列表的形式显示出来。可以在外部文件,如电

31、子表格中执行这样的计算,但最后又得把结果放回AutoCAD中,而且对某些数据更改后又得重新进行一次操作。 在2006版中,增强了表格的功能,使可以在AutoCAD在不需要外部电子表格的情况下直接执行一些常用的计算。可以进行一些数值计算,如累加、求和以及计数,而且也可以创建带加、减、乘、除以及开方等的算术表达式。可以在表格的任何单元格中输入等于号“=”,然后通过指定相应单元格坐标来动态读取其它单元格的数据。将单元格值、字段、数值和数学操作并在一些产生表格数据。填充图形图案填充是在很多AutoCAD图形中经常用到的。在2006版中进行了很大的增强,可以让用户更有效地创建图案填充。边界填充和填充(另

32、名为阴影和渐变)以及填充编辑对话框都进行了改进。它提供了更多更容易操作的选项,包括可伸缩屏来访问高级选项。控制填充原点在创建填充图案时,图案的外观与UCS原点有关。这种默认的行为创建的图案的外观很难预知,而且经常是自己不希望的结果。要更改它的外观只能通过使用不同位置的边界。在2006版本中,在创建和编辑填充图案时可以指定填充原点。新的填充原点可以在填充以及填充和渐变对话框中控制。用户可以使用当前的原点,通过点击一个点来设置新的原点,或利用边界的范围来确定。甚至可以指定这些选项中的一个来做为默认的行为用于以后的填充操作。指定填充边界在AutoCAD中指定填充区域在以前有许多的限制。只能拾取区域中

33、边界内的一个点,而且整个边界都必须在当前屏幕显示范围内可见。所以,只能缩放或平移到整个边界可见或将边界分成多个部分。在创建完填充后,不能利用其它的对象重新定义边界,这样只能删除原来的填充重来一次。在2006版本中,填充得到了很大的改进,用户只需要花很少的时间在调整填充边界上。 用户可以在范围不完全在当前屏幕中的区域中选取一个点来填充。如,可以填充整套房子的墙,但可以放大到某个房间来选取点。新的边界选项允许用户添加、删除、重新创建边界以及查看当前边界。创建分离的填充对象如果需要在图形中的多个区域使用相同的填充属性,如果一次将所有的区域都选中填充,则只能出现一个填充对象,这样的结果可不是你所需要的

34、。象图28中所示,如果将所有形状的填充作为一个单一的对象,则不能在不影响其它- -填充图案的情况下对某一填充图案进行修改和删除。所以就只能每次填充一个区域来完成,这样才能让它们各自独立。 在2006版本中,填充和渐变对话框中新增了一个选项,可以让用户在一次填充操作中创建分离的填充图案。这样一次操作等于以前的多次操作了。查找填充面积有些时候,进行边界填充后,需要确定边界所包含的面积。例如,将一块地分成几个部分,在分的时候必须知道每块地的面积。在以前的版本中,这需要分两步走,第一步是创建填充,第二步才是计算面积,而且计算面积也不是一种简单的事。 而在2006版本中,确定填充空间的面积将是一种非常简

35、单的事。在填充图案的属性窗口中增加一个面积属性,并可以查看填充图案的面积。如果是选择了多个填充区域,累计的面积也可以查询得到。绘图和编辑AutoCAD提供了很多的命令来绘制和编辑任何形状的大小的几何图形。在2006版本中,很多的这些命令都被增强,使绘图和编辑任务变得更加流畅。使用普通的编辑命令矛盾或效率低的命令执行将破坏整个设计过程而且也降低了效率。虽然这些命令已经用了很长的一段时间了,但这不代表它就不需要改变。在2006版本中,普通的AutoCAD编辑命令被更新以提供更协调和更有效的命令交互。 COPY(复制)命令包含了一个Undo(撤消)选项,它可以在一个复制操作过程中撤消多个复制的对象。

36、 COPY(复制)、MOVE(移动)和STRETCH(拉伸)命令在整个编辑进程中保留了最近移动距离值。 STRETCH(拉伸)命令提供了更加灵活和协调的对象选择项。用户可以使用标注的对象选择方法,如拾取对象,AutoCAD能自动将这些对象当成移动的对象。可以在一个STRETCH操作中使用多次框选来选择对象,这样可同时按不同选择集拉伸对象。 ROTATE(旋转)和SCALE(比例缩放)命令包含了复制操作,这样可以使用户在旋转或缩放对象的同时创建对象的复制。使用增强的“参照”选项可拾取任意两个点以指定新的角度或比例。用户不再局限于将基点做为参照点。 OFFSET(偏移)命令可以在不退出命令时多次进

37、行偏移操作。在命令中的附加选项可以进行撤消操作,自动删除源对象,和指定新的对象是在当前图形中创建还是与源对象相同的图层中创建。 CHAMFER(倒角)和FILLET(圆角)命令包含了撤消选项,使用户可在命令中撤消倒角或圆角操作。附加的功能使用户可快速创建零距离倒角或零半径圆角,这只需要在选择两条线的时候按下Shift键。 TRIM(修剪)和EXTEND(延伸)命令提供轻易访问附加对象选择选项。默认的“全部选择”项使用记可快速选择所有可视的几何图形做为剪切或延伸边界,而- -在选择对象进行修剪或延伸时Fence(栏选)和Crossing(框选)项也可用当使用框选项时,框窗口的最初拾取点将决定选定

38、的对象是怎样进行修剪或延伸的。 RECTANGLE(画矩形)命令提供新的面积和旋转选项。使用面积选项,可通过指定矩形的面积和一个边长来创建矩形。而旋转选项使用户在创建过程中可通过输入旋转角度或拾取两个点来旋转矩形。连接同类的对象图形编辑过程可能经常会产生一些多余的对象,这些对象在图形中容易造成混乱。而把这些无用的对象删除掉或合并掉要花很多的时间。 在2006版本中,新的JOIN(连接)命令能够将多个同类对象的线段连接成单个对象,这样可能减少文件大小和改进图形的质量。JOIN功能对多段线、直线、圆弧、椭圆弧和样条曲线都有效。它可以很容易地将任何数量的在同一直线方向上的线段连接成一条线。原始的线段

39、可以是相互交迭的、带缺口的或端点相连的,但必须是在同一直线方向上。对于圆弧段或椭圆弧段也是一样,它需要圆弧在同一圆周上。 JOIN命令使用户可连接在同一平面而且端点相连的多个样条曲线,可使用JOIN命令封闭圆弧或椭圆弧,自动将它们转换为圆或椭圆。创建和编辑多线在AutoCAD中的多线对象可让用户创建平行线对象。尽管多线对象在平面布置图这样的图形中非常有用,但这个工具在创建和编辑这些对象时有些不标准和麻烦。 在2006版本中,增加的多线功能使多线对象更加灵活和容易使用。多线样式和多线编辑工具对话框提供了最新的更直接的用户界面。另外,多线对象现在也支持标准的修剪和延伸命令的编辑。访问三维几何图形的

40、对象捕捉新的OSNAPZ系统变量使用户可过滤和替换OSNAP点中当前标高的Z值。如果设置OSNAPZ为任何方式得到的OSNAP的Z值将被替换为当前标高或使用当前UCS的Z值。- -第二章AutoCAD VBA 系统编程第一节 AutoCAD VBA 简介.AutoCAD VBA 简介 AutoCAD软件包是美国Autodesk公司推出的CAD(计算机辅助设计)软件,从AutoCAD第一版诞生到现在已有三十年的时间。AutoCAD R14是目前最流行的工程图形处理软件。由于它具有完善的绘图功能、良好的用户界面、易学易用等特点,因而被广泛地应用于测绘、规划、设计、土地管理等行业, AutoCAD为

41、用户提供了多种二次开发工具,其中较常用的有AutoLISP、VBA、ObjectARX三种方式。 AutoLISP是一种解释性的表结构处理语言,具有语言结构简单、开发周期短、不依赖于操作平台的特点,但是作为解释语言,其运行速度和保密性方面有一定的缺陷,并且不适合开发有复杂运算的软件。 ObjectARX For R14是基于MicroSoft Visual C+4.2的开发工具,一个ARX应用程序分享AutoCAD的地址空间并且函数可以直接为AutoCAD所调用,因而是运行速度最快的开发工具,但是MicroSoft Visual C+语言较复杂,开发ARX应用程序需要较多的软件开发经验,也不适

42、合作为非软件开发专业人员的测绘工作者的开发工具。 Visual Basic(VB)是美国微软公司推出的程序开发工具,它简单易学,适用面广,在Windows平台上被广泛使用。为此,可以作为测绘工作者进行程序设计的首选工具。VBA是Visual Basic for Applications的缩写,由 Visual Basic派生而来,现在已经成为Mictosoft产品的标准语言。与VB 一样,VBA是面向对象的设计语言,它继承了VB语法简单、功能强大的特点,同时,由于VBA可与主程序在同一内存空间内运行,大大提高了运行的速度,并具有某些“智能”功能。每一套AutoCAD 2000 都包含功能强大、

43、易学易用的VBA 5.0程序开发环境,这个继承开发环境提供了高质量的用户化编程能力。(1)VBA能够使AutoCAD与其它应用程序直接共享数据,如Microsoft Office 97软件,因为所有的VBA应用程序都可以方便的相互沟通,在设计过程中可以很容易的将AutoCAD的数据与基于Windows的应用程序联系起来。例如,可以使用AutoCAD 2000生成材料表并直接输出电子数据表为财务部门使用。绘制图纸,然后用VBA。(2)在VBA综合开发环境中,可以通过拖动图表的方法,简单而可视化的建 立用户界面。用户可以使用AutoCAD工具栏,可以使用标准VBA界面工具创建新的工具栏。(3)VB

44、A的语言代码完全继承了VB的特征,可以说是世界上最简单的编程语言,但其功能不弱。从数据计算、数据库管理到Internet软件开发,都可以见到VB的身影,并可通过各种在线帮助,随时得到名师的真传。(4)具有开放式的对象模型。AutoCAD 2000软件中的ActiveX对象模型十分重要,它显示了每一个对象的方法和属性,用户可以按照自己的愿望编程或定制AutoCAD 2000软件。(5)良好的运行速度。VBA是一个内嵌式的控制器,共享AutoCAD的内存空- -间,可以更好的与AutoCAD沟通。其余信速度与ObjectARX应用程序非常接近,比其他开发方式(如ADSRX,ADS和LIAP)要高许

45、多。 无论编程技术水平如何,使用VBA编程都不会感到很多困难。自从带有VBA开发接口的AutoCAD R14 发行以来,已经有超过百万的开发者使用了这一软件,开发的主要程序将有更多机会为不断增长的用户群体服务。具体如下:一. VBA的概念与作用 VBA(Visual Basic for Application) 是一种完全面向对象体系结构的编程语言,由于其在开发方面的易用性和具有强大的功能,因此许多应用程序均嵌入该语言作为开发工具。AutoDesk公司也在AutoCAD R14.01版本开始内置了VBA开发工具,同时提供了适用于VBA开发的ActiveX Automation对象模型。二. 功

46、能介绍1.简要介绍Document(文档)对象文档对象,实际上就是AutoCAD图形,它可在Documents(文档)集合中找到,它提供访问所有图形还有大部分非图形的AutoCAD对象。通过提供的Model Space(模型空间)和Paper Space(图纸空间)访问图形对象(线、圆、弧等),通过提供的如Layers(图层)、Line types(线型)和Text Styles(字型)这样名称的集合访问非图形对象(图层、线型、字型等)。Document(文档)对象也提供访问Plot(打印出图)和Utility(实用工具)对象。介绍AutoCAD VBA工程及VBA交互开发环境(VBA IDE

47、),尽管大部分VBA环境在行为上都是相似的,但AutoCAD VBA IDE还是有些独有的特性。在AutoCAD中还有些相关的命令可以用于装载工程、运行工程,或打开VBA IDE环境。本章将概要介绍VBA工程、VBA命令和VBA IDE的使用。 AutoCAD VBA 工程是代码模块、类模块和窗体的集合,它们组合起来以执行给予的功能。工程可保存在AutoCAD图形中,或作为独立的文件保存。嵌入工程是保存在AutoCAD图形中。当包含有这些工程的图形中AutoCAD打开时,他们可以自动地装载,这种方法可以很方便地分发工程给用户。嵌入工程也有它的极限,它不能打开或关闭AutoCAD图形,那是由于他

48、们的函数只存在于工程所在的文档中。使用嵌入工程不需要在运行程序之前查找并装载工程文件。举个含有嵌入工程的图形的例子,当图形打开时,一个时间日志被触发。通过这样一个宏的应用可以登记并记录用户在该图形上所花费的时间。这时用户不必去记住在打开图形之前装载工程,这就是自动操作的一个很好的例子。 全局工程保存在独立的文件中,它更加通用,因为他们能在AutoCAD图形中运行,也能打开、关闭AutoCAD图形,但它在图形打开时不能自动装载。用户必须知道他们所需要的宏包含在哪个工程文件中。然而,全局工程非常容易与其它使用者共享,它可以将通用的宏做为很好的库而存在。举个例子,你保存在一个工程文件中的宏是有关多个

49、图形的材料清单。这个宏可以在工作周期的末期由管理员运行,这样就可以收集到所有图形的信息。AutoCAD VBA 工程与Visual Basic 工程在二进制结构上是不兼容的。然而,其中的窗体、模块和类可以通过在VBA IDE环境中使用输入和输出VBA命令来在工程之间进行转换 用VBA管理器组织工程 你可以使用VBA管理器查看装载在当前AutoCAD进程的所有VBA工程。VBA管理器一个AutoCAD工具,它允许你装载、卸载、保存、- -创建、嵌入和分离VBA工程。 2. 装载现存的工程当你装载工程到AutoCAD中,所有的公用的子程序(也称为宏)都可以使用。 嵌入于图形中的工程在图形打开时就被

50、装载。保存在DVB文件中的工程必须单独装载 3. 卸载工程 卸载工程以释放内存并保持装载的工程列表的长度以方便管理。你不能卸载嵌入工程或由其它已装载工程所引用的工程。4. 嵌入工程到图形中 当你嵌入一个工程时,你是将工程的一个副本置于图形数据库中。无论何时,当所包含工程的图形打开或关闭时,工程会同时被装载和被卸载。一个图形只有在同一时间包含一个嵌入工程。如果图形已经包含有一个嵌入工程,你必须在同样地入其它工程之前将该嵌入工程分离出。5. 从图形中分离工程 当你分离工程时,其实是将工程从图形数据库中删除,同时会提示你将工程保存为外部的工程文件。如果你没有将其保存为外部工程文件,该工程的数据将会删

51、除。 6. 创建新的工程 新的工程将作为未保存的全局工程被创建。当工程创建时,你可以将工程嵌入图形中,或将其保存为工程文件。7. 保存嵌入工程 嵌入工程是在图形保存时同时保存的。全局工程必须使用VBA管理器或VBA IDE进行保存。 8. 处理宏 与设置VBA工程选项一样,宏对话框允许你运行、编辑、删除和创建宏。 宏是公用(可执行)的子程序。每一工程通常至少一个宏。9. 运行宏 运行宏就是在当前AutoCAD进程中执行宏代码。当前活动图形指的是当宏执行开始时处于打开并处理激活状态。所有在全局工程的宏中所涉及的This Drawing对象将指向当前活动图形。在嵌入工程中,This Drawing

52、对象通常指向嵌入该宏的图形。 10. 编辑宏 编辑宏将打开VBA IDE并打开所选定宏的代码窗口。详细的介绍请参考“用VBA IDE编辑工程”。从功能上来说,VBA与VB几乎完全一样,或者说VBA是VB的一个子集。但它们之间更本质的区别在于VBA没有自己独立的工作环境,而必须依附于主应用程序;而VB则不依附于任何其它的应用程序,具有完全独立的工作环境和编译、连接系统。由于VBA依附于主应用程序,因此它与主应用程序之间的通信简单而富有效率,其代码完全是在进程内执行的。VBA的代码在AutoCAD中仍以解释的方式执行,但由于它与AutoCAD共享内存空间,因此执行速度比ADS程序还要快。- -2.

53、1.2VB开发AutoCAD应用程序的原理及方法1、ActiveX Automation技术 ActiveX Automation是微软公司的一个技术标准,其宗旨是在Windows系统的统一管理下协调不同的应用程序,允许这此应用程序之间相互沟通、相互控制,但两个应用程序间的沟通不是对等的,其中,一个程序称为客户程序(Client),另一个程序称为服务程序(Server),一般情况下,由客户程序提出需要进行什么操作,服务程序针对操作申请,完成相应的命令。2、AutoCAD下实现ActiveX Automation AutoCAD R14对AutoCAD本身增加了ActiveX自动化服务功能,即A

54、utoCAD可以作为ActiveX的服务程序,我们可以从其它客户程序中操作AutoCAD。VB是最为常用的支持ActiveX Automation技术的开发工具,它可以编制出ActiveX的客户程序,用来操作AutoCAD。即利用VB编制能与AutoCAD相沟通的应用程序,以此来实现AutoCAD的二次开发。3、利用VB进行AutoCAD二次开发的关键步骤 首先,要在VB中引用AutoCAD的类型库Acad.tlb,该库位于AutoCAD R14的安装目录下。 其次,要建立用VB开发的应用程序与AutoCAD间的联系,这一过程,称为初始化。相应的程序代码如下: Private Sub Init

55、Graph() On Error Resume Next Set AcadApp = GetObject(, AutoCAD.Application) If Err Then MsgBox Err.Description Unload Me End If AcadApp.Visible = True Set AcadDoc = AcadApp.ActiveDocument Set MoSpace = AcadDoc.ModelSpace End Sub 之后,即可以用AutoCAD类型库提供的属性、方法对AutoCAD进行操作,如画线,可用 AddLightWeightPolyline语句来完

56、成,写文字,可用AddText语句来实现。- -第二节利用AutoCAD编写船用标准零件2.2.1 船用标准零件随着现代制造技术的发展,现代造船业也向着高科技密集方向发展。计算机技术引入现代造船业是现代造船业的一次突破,其中AutoCAD制图技术的应用大大的缩短了造船的周期,节约了大量的人力物力。现代造船业是一个产业链的中的一个环节,螺栓、螺母、垫片编程流程图:开 始参数分析判断螺 母垫 片螺 栓结 束 否是Private Sub canshu_Click()End SubPrivate Sub CmdExit_Click()Unload MeEnd SubPrivate Sub CmdOk_

57、Click()检查参数赋值情况If TextX.Text = Or TextY.Text = Or TextZ.Text = ThenMsgBox 请在屏幕选起点!, vbExclamation, 警告Exit SubEnd If定义直线对象Dim objLine01, ObjLine02, ObjLine03, ObjLine04, ObjLine05, ObjLine06, ObjLine07, ObjLine08, ObjLine09, ObjLine10, ObjLine11, ObjLine12, ObjLine13, ObjLine14, ObjLine15 As AcadLine

58、定义数组变量,作为各顶点的坐标Dim Pt01(2) As Double:Dim Pt02(2) As Double:Dim Pt03(2) As DoubleDim Pt04(2) As Double:Dim Pt05(2) As Double:Dim Pt06(2) As DoubleDim Pt07(2) As Double:Dim Pt08(2) As Double:Dim Pt09(2) As DoubleDim Pt10(2) As Double:Dim Pt11(2) As Double:Dim Pt12(2) As DoubleDim Pt13(2) As Double:Dim

59、 Pt14(2) As Double:Dim Pt15(2) As DoubleDim Pt16(2) As Double:Dim Pt17(2) As Double:Dim Pt18(2) As DoubleDim Pt19(2) As Double:Dim Pt20(2) As Double:Dim Pt21(2) As DoubleDim Pt22(2) As Double:Dim Pt23(2) As Double:Dim d, l, b As DoubleDim x, y, z As Variantx = TextX: y = TextY: z = TextZ检查参数赋值情况If T

60、extZhiJ.Text = Or TextChangD.Text = ThenMsgBox 参数不能为空,请检查参数的输入, vbExclamation, 警告Exit SubEnd Ifd = TextZhiJ: l = TextChangDIf d = 5 ThenMsgBox 螺栓长度应为:GB5780 2550; GB5781 1040, vbExclamation, 警告b = 16 If l 50 Then Exit Sub End IfEnd IfIf d = 6 ThenMsgBox 螺栓长度应为:GB5780 3060; GB5781 1250, vbExclamation

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论