基于AutoCAD动态块智能零件库的开发毕业论文

上传人:QQ40****828 文档编号:442659 上传时间:2018-10-02 格式:DOC 页数:59 大小:3.92MB
返回 下载 相关 举报
基于AutoCAD动态块智能零件库的开发毕业论文_第1页
第1页 / 共59页
基于AutoCAD动态块智能零件库的开发毕业论文_第2页
第2页 / 共59页
基于AutoCAD动态块智能零件库的开发毕业论文_第3页
第3页 / 共59页
点击查看更多>>
资源描述
目 录1 绪论 .11.1 引言 11.2 国内外发展状况 11.3 二次开发的方法 21.4 AutoCAD 环境下动态块功能开发的优点 41.5 智能零件库开发的目的和意义 42 智能零件库的开发原则 .62.1 智能零件库的基本功能 62.2 智能零件库的特点 63 智能零件库的开发 .73.1 智能零件库的建库流程 73.2 智能零件库动态块的定义 73.2.1 图形的绘制 .73.2.2 定义外部块 .73.2.3 定义动态块 .93.3 幻灯片和幻灯片库的制作 203.3.1 幻灯片的制作 .203.3.2 幻灯片库的制作 .224 菜单的编制和加载 .244.1 菜单文件与自定义文件对比 244.2 菜单文本文件结构与 CUI 结构对比 .254.3 定制下拉菜单 274.5 菜单的加载 294.6 主菜单调用程序的编写 324.6.1 图像控件菜单的定制 .324.6.2 调用命令的定制 .345 智能零件库的管理 .385.1 对于动态块的管理 385.2 对于对幻灯片库的管理 395.3 对于菜单的管理 405.4 智能零件库的调用 415.4.1 使用下拉菜单调用零件库 .415.4.2 使用工具选项板调用 .456 结论 .51参 考 文 献 .52致 谢 .541 绪论1.1 引言AutoCAD 是由美国 Autodesk 欧特克公司于二十世纪八十年代初为微机上应用CAD 技术而开发的绘图程序软件包,经过不断的完美,现已经成为国际上广为流行的绘图工具。AutoCAD 具有良好的用户界面,通过交互菜单或命令行方式便可以进行各种操作。它的多文档设计环境,让非计算机专业人员也能很快地学会使用。在不断实践的过程中更好地掌握它的各种应用和开发技巧,从而不断提高工作效率。用AutoCAD 绘图速度更快、精度更高、而且便于个性,它已经在航空航天、造船、建筑、机械、电子、化工、美工、轻纺等很多领域得到了广泛应用,并取得了丰硕的成果和巨大的经济效益。AutoCAD 具有广泛的适应性,它可以在各种操作系统支持的微型计算机和工作站上运行,并支持分辨率由 320200 到 20481024 的各种图形显示设备40 多种,以及数字仪和鼠标器 30 多种,绘图仪和打印机数十种,这就为 AutoCAD 的普及创造了条件。但是作为一个基础性的计算机辅助设计平台,在进行专业设计时,仍然需要进行大量的底层开发工作。零部件的数量大,结构形式多,形状复杂相似,尺寸变化较大,使得绘图不仅重复繁琐,而且反复查找数据。提高设计效率的最有效的方法之一就是开发专业标准件参数化图库。以往很多设计人员是通过使用某计算机语言进行编程,对 AutoCAD 进行二次开发来建立标准件参数化图库。这对普通工程设计人员有相当的难度。本课题则采用了 AutoCAD 中的新功能动态块,建立了标准件参数化图库。这种方法建库简单、结构清晰、管理方便、数据组织容易、无须大量编程,普通工程设计人员很容易掌握。1.2 国内外发展状况AutoCAD 在国外制造业中广泛应用,较普遍的为美、日、德等国,其中以机床、汽车、飞机、船舶、航天器等制造业应用最为广泛、深入。例如,日本丰田汽车公司于 1965 年将数控用于模具加工。AutoCAD 是在 1982 年正式出现在国内的。其中历经多次的改版更新,从 V1.0、V1.17、V2.5、V2.6、R9R14、20002009,到今天的2010 版。由于开发之初,AutoCAD 就是以 2D 平面为基础平台来设计的,所以在平面方面的功能比较齐全。AutoCAD 在全球 CAD 软件市场上的占有率还是很高的,其原因如下: (1)使用者基础稳固,已成为全球 CAD 入门的标准学习软件。(2)AutoCAD 是一套罕见的开放式 CAD 软件。有很多人都熟悉它,所以就可以在其上轻易的开发出其他适合自己的功能,而且很多人都熟悉,基本的教育训练期短。在中国,Autodesk 公司已经在清华大学,同济大学,哈尔滨工业大学,华南理工大学和上海交通大学投资建立了卓越中心(COE) 。在每所大学,Autodesk 公司都与重要的教职人员合作以改善和提高各学科的教学质量,例如,建筑学,民用工程学,机械工程学,工业设计,建筑管理等。十余年间,Autodesk 见证了中国各行各业的快速成长。中国数百万的建筑工程设计师和产品制造工程师利用了 Autodesk 数字化设计技术,甩掉了图板、铅笔和角尺等传统设计工具,用数字化方式与中国无数的施工现场和车间交互各种各样的工程建筑与产品制造信息。欧特克产品成为中国设计行业的最通用的软件。Autodesk 正在以其领先的产品、技术、行业经验和对中国不变的承诺根植于中国,携手中国企业不断突破创新。未来,Autodesk 将继续凭借融合可持续设计理念的数字化设计解决方案,倾力推动从“中国制造”到“中国创造”的转型。1.3 二次开发的方法所谓二次开发,就是以某一软件作为操作平台,利用它所提供的开发接口对其功能进行扩展,使之满足自身需要。AutoCAD通用性强,具有多种工业标准,广泛应用于机械、电子、航空、船舶、建筑、服装等领域;同时,AutoCAD具有开放的体系,在其发展过程中,相继推出了包括AutoLisp、ADS、ObjectARX、VBA、VisualLISP 等工具通过编程来建立标准件图库;再加上AutoCAD强大的二维绘图功能,所以,我们选择AutoCAD作为开发平台,对其进行二次开发,形成了一个简单的二维机械零件库,为进一步形成机械零件设计系统做准备。但是这对普通工程设计人员有相当的难道,同时其应用仍然存在很大的局限性:(1)插入标准件时,需要输入的参数值较多,仍需反复查阅手册;(2)插入的标准件仍需要手动重新调整位置,编辑图形;(3)由于同一结构类型系列化不足,标准件图库庞大。(1)AutoLispAutoLISP 的全名是 LISTProcessingLanguage,它出现于 1985 年推出的AutoCADR2.18 中,是一种嵌入在 AutoCAD 内部的编程语言,是 LISP 原版的一个子集,它一直是低版本 AutoCAD 的首选编程语言。它是一种表处理语言,是被解释执行的,任何一个语句键入后就能马上执行,它对于交互式的程序开发非常方便。其缺点是继承了 LISP 语言的编程规则而导致繁多的括号。(2)ADSADS 的全名是 AutoCAD DevelopmentSystem,它是 AutoCAD 的 C 语言开发系统,ADS 本质上是一组可以用 C 语言编写 AutoCAD 应用程序的头文件和目标库,它直接利用用户熟悉的各种流行的 C 语言编译器,将应用程序编译成可执行的文件在AutoCAD 环境下运行,这种可以在 AutoCAD 环境中直接运行的可执行文件叫做 ADS应用程序。ADS 由于其速度快,又采用结构化的编程体系,因而很适合于高强度的数据处理,如二次开发的机械设计 CAD、工程分析 CAD、建筑结构 CAD、土木工程CAD、化学工程 CAD、电气工程 CAD 等。(3)ObjectARXObjectARX是一种崭新的开发 AutoCAD应用程序的工具,它以 C+为编程语言,采用先进的面向对象的编程原理,提供可与AutoCAD直接交互的开发环境,能使用户方便快捷地开发出高效简洁的AutoCAD应用程序。ObjectARX并没有包含在AutoCAD中,可在AutoDESK公司网站中去下载,其最新版本是ObjectARXforAutoCAD2000,它能够对AutoCAD的所有事务进行完整的、先进的、面向对象的设计与开发,并且开发的应用程序速度更快、集成度更高、稳定性更强。ObjectARX从本质上讲,是一种特定的C+编程环境,它包括一组动态链接库(DLL),这些库与AutoCAD在同一地址空间运行并能直接利用AutoCAD核心数据结构和代码,库中包含一组通用工具,使得二次开发者可以充分利用AutoCAD的开放结构,直接访问AutoCAD数据库结构、图形系统以及CAD 几何造型核心,以便能在运行期间实时扩展AutoCAD的功能,创建能全面享受AutoCAD固有命令的新命令。ObjectARX 的核心是两组关键的 API,即AcDb(AutoCAD数据库)和 AcEd(AutoCAD编译器),另外还有其它的一些重要库组件,如AcRX(AutoCAD实时扩展)、AcGi(AutoCAD图形接口)、AcGe(AutoCAD几何库)、ADSRX(AutoCAD开发系统实时扩展)。ObjectARX还可以按需要加载应用程序;使用ObjectARX进行应用开发还可以在同一水平上与 Windows系统集成,并与其它Windows应用程序实现交互操作。(4)VBAVBA 即 Mcrosoftoffice 中的 VisualBasicforApplications,它被集成到 AutoCAD2000中。VBA 为开发者提供了一种新的选择,也为用户访问 AutoCAD2000 中丰富的技术框架打开一条新的通道。VBA 和 AutoCAD2000 中强大的 ActiveX 自动化对象模型的结合,代表了一种新型的定制 AutoCAD 的模式构架。通过 VBA,我们可以操作AutoCAD,控制 ActiveX 和其它一些应用程序,使之相互之间发生互易活动。(5)VisualLISPVisualLISP 已经被完整地集成到 AutoCAD2000 中,它为开发者提供了崭新的、增强的集成开发环境,一改过去在 AutoCAD 中内嵌 AtuoLISP 运行引擎的机制,这样开发者可以直接使用 AutoCAD 中的对象和反应器,进行更底层的开发。其特点为自身是AutoCAD2000 中默认的代码编辑工具;用它开发 AutoLISP 程序的时间被大大地缩短,原始代码能被保密,以防盗版和被更改;能帮助大家使用 ActiveX 对象及其事件;使用了流行的有色代码编辑器和完善的调试工具,使大家很容易创建和分析 LISP 程序的运行情况。在 VisualLISP 中新增了一些函数:如基于 AutoLISP 的 ActiveX/COM 自动化操作接口;用于执行基于 AutoCAD 内部事件的 LISP 程序的对象反应器;新增了能够对操作系统文件进行操作的函数。本课题开发的智能标准件库利用AutoCAD的动态块功能,结合简单的编程过程,实现了标准零件库的智能性和灵活性,使用方便,便于扩展。1.4 AutoCAD 环境下动态块功能开发的优点AutoCAD中的动态块功能是对原有块功能的扩展。动态块即是在块中增加了可变参量,比如可以将不同长度、角度、大小、对齐方式、个数甚至整个图形样式等相关内容和数据设计到一个图块中,插入块后仅需简单拖动几个变量就能实现块参数的修改。这样不仅减少了大量重复工作,而且通过工具选项板就可方便地管理和控制,同时也减少图库中块的数量,十分适于建立标准件图库。当插入动态图块后,在图块的指定位置处会出现动态块的夹点,单击夹点可以改变图块的参数特性,如块的位置、反转方向、宽度尺寸、高度尺寸和可见性等,还可在块中增加约束,如沿指定方向的移动距离等。用户可以由动态夹点的外形来识别夹点功能,很方便地调整块的参数。1.5 智能零件库开发的目的和意义利用AutoCAD的动态块功能建立智能零件库,实现AutoCAD零件的智能化和参数化设计,使设计人员在绘图时无需查阅手册,只需通过动态块相关功能选择标准件的规格参数,得到相应的图形,提高绘图效率。对于动态块,在各个专业的绘图中都能够应用,而且由于提供的动作类型丰富,使得灵活性大大增加。当一个块参照时被定义了几个动作后,它就成为了一个小型数据集,能够涵盖一系列的产品,如标准螺栓、螺母等等。动态块具有灵活性和智能性。在操作时可以轻松地更改图形的动态块参照。可以通过自定义夹点或自定义特性来操作动态块参照中的几何图形。这使得我们可以根据需要在位调整块,而不用搜索另一个块以插入或重定义现有的块。总之,动态块的应用,将能够给我们的绘图工作带来巨大的便利。2 智能零件库的开发原则2.1 智能零件库的基本功能(1)实现了标准件的智能调用。调用的图形可以动态调整位置,自动对齐到插入对象。并根据用户需要选择标准件的表现形式和规格。(2)标准件内容全面。包括了国家标准规定的各种螺栓、螺母、螺钉等标准件,基本可以摆脱设计手册的束缚。(3)根据用户需要,完成对智能零件库的编辑和扩充。2.2 智能零件库的特点(1)智能性和灵活性。标准件库中应用了动态块功能,它是对一般图块功能的扩展,是具有动态行为的图块。可以根据需要通过向图块中添加参数与动作,以控制图块中几何图形的表现形式,用户在操作时可以轻松地实现动态更改图形。(2)图库结构清晰、组织管理层次分明。对于拓扑结构相同的零件只需建立一个动态块来实现标准件系列。一个动态块,就可方便地在图样中得到不同规格的该标准件图形,减少了设计中的许多重复工作及不必要的错误,提高了设计效率和质量。同时标准件图形减少,则组织管理方便,便于操作。(3)界面形象直观。操作界面使用对话框和幻灯片图形,图文并茂,用户在在繁多的标准件库中可以快速准确的查询到自己需要的零件,调用灵活方便。(4)资源的开放性。智能标准件库在软件中处于局部CUI ,允许用户根据需要添加、修改零件库,并加载或卸载不同的标准件子库或输入其它标准件子库。(5)操作相对简单、容易实现。由于利用了动态块建立参数化零件库中,编写程序较少,易于完成。3 智能零件库的开发3.1 智能零件库的建库流程AutoCAD环境下的智能零件库系统建立流程如图3.1所示,首先通过软件绘制各类标准件图形,再将所建立的各类标准零件按一定的目录分门别类地储存在某路径下,并通过AutoCAD定义成外部块。然后根据需要添加参数与动作,定义成动态块。最后制作幻灯片,形成幻灯片库,并通过定制菜单查询和调用各类标准件。图3.1 AutoCAD 建立智能零件库的流程3.2 智能零件库动态块的定义3.2.1 图形的绘制首先根据机械设计手册数据绘制标准零件库图形,对于结构相同的标准件系列,只需绘制一个图形。因为结构相同的零件只需建立一个动态块来实现标准件系列。3.2.2 定义外部块(1)创建块把所有绘制的标准零件库图形通过wblock命令定义为外部块,图3.2为定义外部块对话框。首先在名称输入框中输入一个块名;其次指定基点,常用的方法是点击拾取点按钮。在屏幕上指定,选择图块中包含的图形,通过点击对话框上的选择对象按钮,在屏幕上用窗口选择。设定结束后。按“确定”按钮关闭该对话框。这样六角头螺栓就被创建为块。图3.2 定义外部块(2)插入块块在定义完后,在使用时需要将其插入到当前图形文件中。方法是选择插入菜单一块,这就出现一个插入块对话框,如图3.3所示,在名称框中输入要插入的块的名称。也可以在后边的下拉列表中选择。插入点就是要插入块的地方,它是与定义块时的基点相对应的。插入块的过程可以形象的看成是抓住块上的基点把它放到插入点上。插入点一般在屏幕上指定。插入块可以选择旋转一定的角度,一般在屏幕上捕捉特殊点来指定角度最方便。根据需要设置缩放比例为统一比例1。注意不要选择“分解”选项。插入时根据命令行的提示。指定插入点和旋转角度。图3.3 插入对话框(3)块操作中要注意的问题使用AutocAD 中的块操作还应注意如下几个问题:当块中的图元绘在不同图层上,插入到当前绘图环境中的不同层上时,情况有点复杂。它遵循如下原则:a.图块中绘在 O层上的图元,插入到当前绘图环境中时,插入到哪个层,图块中的对象就到哪个层。如果图块中O层上的图元绘制时颜色、线型使用的是 “随层”。则插入后颜色、线型与当前插入的层一致;如果不是“随层”,而是某一种具体的颜色和线型,则插入后保持不变。b.图块中绘在其他图层中的图元,插人到当前绘图环境中,不论插入到哪个图层,均保持其图层不变。如果当前绘图环境中有与图块中同名的图层,则同名图层中的图元仍到同名图层中:没有同名图层的则自动创建一个心的图层。用BLOCK命令也可以定义块,只能供当前图插入使用,属于内部块:定义外部块用命令WBLOCK是将块以图形文件的形式写入磁盘,其文件后缀名是.dwg。由于外部块是定义在当前图形文件之外,保存在磁盘上的。所以它不但可以用在当前定义时的图形文件中,也可以用在以后所有的图形文件中。构件图形库时所用的都是外部块,该命令无对应的菜单或工具按钮。外部块的插入方法同内部块的插入。只不过在输入块的名称时,要选择名称框后的浏览按钮,找到外部块所在的路径。同样利用此方法,也可以将其他的图形文件(之前并没有创建为块)作为块插入到当前文件中来,如果要对其编辑,插入时可在插入对话框左下角的“分解”项前打“”,根据块与图层的关系,如果没有与被插入图形相对应的图层,则自动创建新的图层。图块组成对象颜色、线型和线宽的情况:在块插入前,如果在被插图形文件中有图块的同名层,则块插入后,图块相应图层上对象的颜色、线型和线宽将跟随被插图形文件中图块的同名层的图层设置。这时,如果图块图层的设置与被插入图形文件图块同名层的设置不同,则在图块插入前后,图块颜色、线型和线宽有明显变化。如果在被插入图形文件中没有图块的同名层,则块插入后,图块相应图层上对象的颜色、线型和线宽将保持不变。块分解前后,图块所有对象的颜色、线型和线宽将保持不变。块插入后,图块组成对象的颜色、线型和线宽三者有条件的变化。3.2.3 定义动态块动态块就是带有动作的图块。当这些图块插入图中后,可以利用定义的缩放、拉伸、旋转、翻转、查询等动作很方便的改变块中元素的位置、尺寸和可变的属性而保持块的完整性不变。动态块具有灵活性和智能性,用户在操作时可以轻松地更改图形中的动态块参照。可以通过自定义夹点或特性来操作动态块参照中的几何图形。这使得用户可以根据需要在位调整块,而不用搜索另一个块以插入或重定义现有的块。动态块是使用块编辑器创建的如图3.5所示,块编辑器是一个专门的编写区域,用于添加能够使块成为动态块的元素。用户可以从头创建块,也可以向现有的块定义中添加动态行为,也可以像在绘图区域中一样创建几何图形。六角头螺栓是机械制图过程中使用较为广泛的螺栓。CAD产品并没有提供符合我国标准的基准螺栓的图块,为了方便使用,用户往往自定义一个图块,在需要时插入这个图块。这样看起来虽然很方便,但是在对这个图块进行编辑时往往非常不便。因为六角头螺栓有很多种规格,并且由很多不同元素构成的图形,用户自定义的图块是无法完成这样的变化的。最好的解决办法就是给块增加动作,使块变成动态块。首先明确标准件参数化后的使用方式,然后通过“块编辑器”命令,为已经定义好的图块添加参数和相关联的动作,确保块参照中对象的大小和位置随着参数正确变化,实现智能性。现在插入一个已经有了 “六角头螺栓”这样的图块,选择住块然后点击右键块编辑器,或者在命令行输入“bedit”后按“enter” 键,在弹出的对话框如图3.4所示,在“编辑块定义”窗口中选住要编辑的块点击 “确定” ,即可进入块编辑器。块编辑器的界面如图3.5所示。图3.4 编辑块定义图3.5 块编辑器界面(1)动态块的规划在创建动态块之前应先了解其外观、隐性的内容(即设计条件),以及在图形中的使用方式。以便在设计如何操控这个动态块参考时,可很快决定要变更或移动块内的对象,另外,还要确定这些对象将如何更改。例如,用户也可以创建个可调整大小的动态块。同时,当重新调整这个动态块参考的大小时,可能会显示其他几何图形。这些牵一发而动全身的周边条件都将决定您加入到块定义中的参数和动作类型,以及让参数、动作和几何图形协同工作的方式。(2)设计标准件的插入参数格式螺栓的规格尺寸为公称直径和公称长度,插入的螺栓图块应该可以调整其规格,通过查询表提供一个具有螺栓规格尺寸的下拉列表,当从下拉列表中选择某一规格的螺栓后,除规格尺寸可作调整外,图形的其余各个部分( 螺栓头部、螺纹长度、螺纹的小径等) 尺寸均应根据与公称直径的比例关系作相应的调整( 缩放、拉伸等),满足设计要求,如图3.6所示。图3.6 螺栓主视图的动态块对齐夹点是移动螺栓靠近某个对象,则使螺栓与该对象(在平面内的任意方向)自动对齐;线性夹点是使螺栓沿轴线方向往返移动,移动时遵循“值集”的定义,只能在标准件允许的长度系列中移动;可见性和查询夹点是单击以显示项目列表。(3)块元素间的协同工作方式可以在块编辑器中向块定义中添加动态元素。除几何图形外,动态块中通常包含一个或多个参数和动作。在将参数和动作加入块定义之前,先要了解它们彼此之间及它们与块内几何图形之间的关联,如表 3.1、3.2 所示。也就是要了解牵一发而动全身的关联性。当我们将一个动作加入到动态块定义中后,需要将动作和参数关联起来,同时还可能需要个几何图形选择集,这样就可以创建其关联性。当将多个参数和动作加入到动态块参考后,就需要为动态块参考按顺序设置正确的关联性,以便在图中正常工作。参数和动作仅显示在块编辑器中。将动态块参照插入到图形中时,将不会显示动态块定义中包含的参数和动作。参数添加到动态块定义中后,夹点将添加到该参数的关键点。关键点是用于操作块参照的参数部分。例如,线性参数在其基点和端点具有关键点。用户可以从任一关键点操作参数距离。添加到动态块中的参数类型决定了添加的夹点类型。每种参数类型仅支持特定类型的动作。表 3.1、3.2 显示了参数、夹点和动作之间的关系。参数:通过指定块中几何图形的位置、距离和角度来定义动态块的自定义特性。 动作:定义在图形中操作动态块参照时,该块参照中的几何图形将如何移动或修改。向动态块定义中添加动作后,必须将这些动作与参数相关联。也可以指定动作将影响的几何图形选择集。表3.1 动态块参数及可关联的动作动作点 在图形中定义一个X和Y位置 移动、拉伸线性 可显示出两个固定点之间的距离,约束夹点沿顶置角度的移动,在块编辑器中移动、缩放、拉伸、阵列极轴 可显示出两个固定点之间的距离并显示角度值移动、缩放、拉伸、阵列XY 可显示出距参数基点的X距离和Y距离移动、缩放、拉伸、阵列旋转 可定义角度 旋转翻转 显示为一条投影线,可以围绕这条投影线翻转对象翻转对齐 可定义X和Y位置以及一个角度 无(此动作隐含在参数中)可见性 可控制对象在块中的可见性 无(此动作时隐含的,并且受可见性状态的控制)查寻 定义一个可以指定或设置为计算用户定义的列表或表中的值的自定义特性查寻基点 在动态块参照中相对于该块的几何图形定义一个基点无使用块编写选项板上的“参数集”选项卡可以向动态块定义添加一般成对的参数和动作。向块中添加参数集与添加参数所使用的方法相同。参数集中包含的动作将自动添加到块定义中,并与添加的参数相关联。接着,必须将选择集(几何图形)与各个动作相关联。首次向动态块定义添加参数集时,每个动作旁边都会显示一个黄色警告图标。这表示用户需要将选择集与各个动作相关联。可以双击该黄色警示图标(或使用 BACTIONSET 命令),然后按照命令提示将动作与选择集相关联。如果插入的是查寻参数集,双击黄色警示图标时将会显示“特性查寻表”对话框。与查寻动作相关联的是用户添加到此表中的数据,而不是选择集。表 3.2 列出了块编写选项板的“参数集”选项卡上所提供的参数集。表 3.2 “参数集”参数集 说明点移动 向动态块定义中添加带有一个夹点的点参数和相关联的移动动作。线性移动 向动态块定义添加带有一个夹点的线性参数和关联移动动作。线性拉伸 向动态块定义添加带有一个夹点的线性参数和关联拉伸动作。线性阵列 向动态块定义添加带有一个夹点的线性参数和关联阵列动作。线性移动配对 向动态块定义添加带有两个夹点的线性参数和与每个夹点相关联的移动动作。线性拉伸配对 向动态块定义添加带有两个夹点的线性参数和与每个夹点相关联的拉伸动作。极轴移动 向动态块定义添加带有一个夹点的极轴参数和关联移动动作。极轴拉伸 向动态块定义添加带有一个夹点的极轴参数和关联拉伸动作。环形阵列 向动态块定义添加带有一个夹点的极轴参数和关联阵列动作。极轴移动配对 向动态块定义添加带有两个夹点的极轴参数和与每个夹点相关联的移动动作。续表 3.2 “参数集”极轴拉伸配对 向动态块定义添加带有两个夹点的极轴参数和与每个夹点相关联的拉伸动作。XY 移动 向动态块定义添加带有一个夹点的 XY 参数和关联移动动作。XY 移动配对 向动态块定义添加带有两个夹点的 XY 参数和与每个夹点相关联的移动动作。XY 移动方格集 向动态块定义添加带有四个夹点的 XY 参数和与每个夹点相关联的移动动作。XY 拉伸方格集 向动态块定义添加带有四个夹点的 XY 参数和与每个夹点相关联的拉伸动作。XY 阵列方格集 向动态块定义添加带有四个夹点的 XY 参数和与每个夹点相关联的阵列动作。旋转集 向动态块定义添加带有一个夹点的旋转参数和关联旋转动作。翻转集 向动态块定义添加带有一个夹点的翻转参数和关联翻转动作。可见性集 添加带有一个夹点的可见性参数。无需将任何动作与可见性参数相关联。查寻集 向动态块定义添加带有一个夹点的查寻参数和查寻动作。本文以 “六角头螺栓”为例来创建动态块,六角头螺栓动态块要实现的以下几种功能:根据用户的需要使用查询参数来选择六角头螺栓的规格。根据用户的需要使用可见性参数来选择六角头螺栓的视图。用户可以自定义六角头螺栓的公称长度、公称直径。(4)六角头螺栓动态块的创建要让一个图形成为动态块,至少要加入个参数和一个动作。然后将动作与参数关联起来。成对的参数与动作则可使用“参数集”将其加入到动态块定义中。明确了块参照的操作使用方法,进一步确定添加的参数及其类型,并分析参数之间、参数和动作之间以及它们与块中的几何图形的相关性,确保块参照中对象的大小和位置随着参数正确变化。以下是对块加入参数和动作的过程:使用对齐参数完成六角头螺栓对齐变化a.选择参数中的对齐参数。b.根据命令提示选择六角头螺栓的对齐基点。c.关闭块编辑器,拖动六角头螺栓对齐的夹点测试动态块的设计是否成功。用线性参数配合拉伸动作完成六角头螺栓公称长度变化a.选择线性参数。b.依次点击公称长度的两个端点,拉出“距离”参数到适当位置。c.点击参数“ 距离”使其夹点变蓝,右击鼠标选择“特性”。d.在“特性”中修改参数,在“距离标签”定义成“L” 给参数定义意义明确的标签这样方便以后的编辑、“距离类型”定义为“列表”。e.在 “距离值列表”栏根据标准公称长度尺寸“20、25、30、35、70、80、90、160、180、200”,输入长度值,“夹点数”设为“1”。f.添加拉伸动作,选择参数“L”,根据命令提示选择六角头螺栓图形,并把公称长度拉伸动作放在适当的位置。g.关闭块编辑器,拖动公称长度的夹点测试动态块的设计是否成功。使用线性参数配合拉伸动作完成六角头螺栓螺纹长度变化a.选择参数中的线性参数。b.依次点击螺纹的两个端点,拉出“距离”参数到适当位置。c.点击参数“ 距离”使其夹点变蓝,右击选择 “特性”。d.在 “特性”中修改参数,在距离标签定义成 “螺纹长度”、“距离类型”定义为“列表”,在“距离值列表”栏根据标准长度尺寸“12、14、16、18、22、26、30、38、46、54、66、78”。输入其长度值,“夹点数”设为“1”。e.添加螺纹长度拉伸动作,选择参数“螺纹长度”,根据命令提示选择螺栓图形,把螺纹长度拉伸动作放在适当的位置。f.关闭块编辑器,拖动螺纹长度拉伸的夹点测试动态块的设计是否成功。使用线性参数配合缩放动作完成六角头螺栓的公称直径变化a.选择线性参数。b.依次点击公称直径的两个端点,拉出“距离”参数到适当位置。c.点击参数“ 距离”使其夹点变蓝,右击选择 “特性”。d.在“特性”中修改参数,在距离标签定义成 “M”、“ 距离类型“定义”为“列表”,在“距离值列表”栏根据标准直径尺寸“3、4、5、6、8、10、12、16、20、24、30、36”,输入直径值,“夹点数”设为“1”。e.添加公称直径缩放动作,选择参数“M”,根据命令提示选择六角头螺栓的几何图形,并把公称直径缩放动作放在适当的位置。f.关闭块编辑器,拖动公称直径缩放的夹点测试动态块的设计是否成功。表3.3 螺栓主视图动态块的参数与动作设置参数对象 参数类型 参数值集 动作类型公称长度 线性参数 25,25,30,35,拉伸公称直径 线性参数 3,4,5,6,8,缩放规格 查询参数 M425,M430查询公称直径与公称长度的参数值集根据国标确定,螺栓头对角距离与螺纹长度根据与公称直径的简化比例关系确定参数值集。根据块参照的操作方法,添加了查询参数“规格”,与其相应的查询动作为“螺纹规格”。图3.6显示了动态块“特性查询表”设置,建立了螺栓规格ML参数查询集,其查询特性与其他参数相关联,此设置将在块参照中添加一个参数下拉列表,列表变量值为M425,M430,M525,M530,M540, 。添加查寻集虽然对六角头螺栓动态块的设计参数已做好定义,在使用时只要根据设计要求拖动相应的夹点,就可以完成设计任务,但此时还需要设计人员掌握六角头螺栓的各个部位的参数,可以对六角头螺栓提供一个反向查询功能,只要知道型号就能完成设计。a.在动态块编辑器选择 “参数集”,选择 “查寻集”为六角头螺栓添加一个可查询的动作。b.将“查寻集”的图标放在动态块中,然后双击“查寻集”的动作图标。c.在特性查询表中添加特性如图3.7所示,分别输入六角头螺栓的参数,在左栏的“输入特性”中输入的是六角头螺栓参数的值,右栏中输入的“查询特性”是六角头螺栓的标准型号,并把右下角的“只读”特性改成“允许反向查询”,各参数输入完成后要认真检查其正确性,并点击“核查”,无误后“确定”退出,如图3.8所示。图3.7 添加参数特性图3.8 特性查询列表设置可见性参数在动态块中“可见性参数”用得比较多,设定可见性状态后在块上面出现一个向下的蓝色箭头,点击那个箭头就可以分别点选你需要的状态了,不需要用到快捷菜单就可以快速的进行切换,使用可见性状态来使动态块中的几何图形可见或不可见。 一个块可以具有任意数量的可见性状态。 使用可见性状态是创建具有多种不同图形表示的块的有效方式。 用户可以轻松修改具有不同可见性状态的块参照,而不必查找不同的块参照以插入到图形中。“块编辑器”工具栏的右侧显示了当前可视性状态的名称。 所有块都至少有一个可见性状态。 您无法删除当前状态。 工具栏的这一区域还提供了几个用来设置可见性状态的工具。 设置可见性状态时,您可能希望或不希望看到在给定状态中不可见的的几何图形。 可以使用“可见性模式”按钮来显示或隐藏不可见的几何图形。添加可见性参数的步骤:a.在块编辑器中的 “块编写选项板”窗口的 “参数”选项卡中,单击“可见性参数”工具。 b.按照命令行上的提示指定以下参数信息: 名称 标签 说明 显示的块参照的特性 创建基于当前状态的新可见性状态的步骤:a.在“块编辑器 ”工具栏上,单击 “管理可见性状态”。 b.在“可见性状态”对话框中,单击“新建”。 c.命名为“主视图 ”在“ 新建可见性状态”对话框中,输入新可见性状态的名称,如图 3.9 所示。 d.单击“在新状态中保持现有对象的可见性不变”。 e.单击“确定 ”。 创建当前状态的新可见性状态完成后关闭编辑器,会出现一个新的夹点此夹点始终显示在包含可见性状态的块参照中。 在块参照中单击该夹点时,将显示块参照中所有可见性状态的下拉列表。 从列表中选择一个状态 “主视图”后,在该状态中可见的几何图形将显示在图形中,如图 3.10 所示。图 3.9 “创建可见性”对话框图 3.10 主视图(5)动态块制作要点先想好动态块需要实现的行为,然后规划所需的参数、动作及它们的顺序。实现同一行为的方法很多,选用最简单明了的方法。使用意义明确的标签、名称和说明。将参数、动作布置到合适的位置。过于复杂的动态块会占用额外的资源。不同的插入和修改方法占用不同的资源。3.3 幻灯片和幻灯片库的制作3.3.1 幻灯片的制作幻灯片是图形的快照,AutoCAD把屏幕图形以像素的方式保存下来,生成后缀为.SLD 的幻灯片文件。虽然它包含特定时刻的图形图片,但它并不是一个图形文件。用户既不能将幻灯文件输入到当前图形中,也不能编辑或打印幻灯片。而只能查看它。通常幻灯片文件主要用于演示线型、填充图案和部件图形等。使用“VSLIDE”命令可单个地查看幻灯片。要查看一系列幻灯片,可以使用脚本文件。幻灯片看起来很像普通图形,查看时要注意正确使用编辑命令。编辑命令影响幻灯片下的当前图形,而不是幻灯片本身。 某些命令可能会强制重画,这使幻灯片不再显示。目前幻灯片文件主要应用在AutoCAD环境下进行二次开发所涉及的用户化界面设计方面,实际上幻灯片的功能远非于此,幻灯文件具有下列用途:(1)在AutoCAD中进行演示(2)在绘制图形时查看其他图形的快照(3)在对话框中创建图像控件菜单以幻灯片格式保存当前视图,就可以创建幻灯片。在模型空间中创建的幻灯片只显示当前视口。在图纸空间中创建的幻灯片可显示所有可见视口及其内容。幻灯片只显示可见内容。不显示已关闭或冻结的图层上的对象,也不显示已关闭的视口中的对象。查看幻灯文件时,它暂时替代了屏幕上的对象。用户可以上面绘图,但如果修改视图(通过重画、平移或缩放) ,幻灯文件将消失,AutoCAD仅重显示所绘制的图形和以前存在的所有对象。可以逐个显示幻灯片,也可以使用脚本按顺序显示幻灯片。幻灯片也可以用于自定义菜单。例如,如果创建包含常用机械部件的插入块的脚本,可以设计一个显示每个部件的幻灯片的自定义图像控件菜单。在菜单上单击幻灯片图像时,AutoCAD将把块插入图形。下面以“六角头螺栓”为例,介绍幻灯片的制作步骤:(1)打开定义的动态块“六角头螺栓.dwg”,在绘图区域中显示要用于制作幻灯片的图形。(2)将所选图形放到合适的大小,以致能充满整个绘图区,图像以3:2的宽高比显示。在命令行提示下输入“mslide”命令,将出现 “创建幻灯片文件”对话框,如图3.11所示。(3)在“创建幻灯文件 ”对话框中给幻灯片输入一个名称,AutoCAD将图形名作为幻灯片文件的缺省名并自动附加文件扩展名.slb(幻灯片文件名必须与块名相同)。(4)选取要保存的目录单击“保存”按钮。图3.11 “创建幻灯片文件”对话框在为图像平铺菜单准备幻灯片时,请紧记以下建议:(1)保持图像简单。在显示图像平铺菜单时,必须等到所有图像都显示完后,才能进行选择。如果要显示许多复杂符号,请使用简单、可识别的图像,而不要完全显示这些符号。 (2)布满空间。在为图像制作幻灯片时,请确保在启动 MSLIDE 之前将图像布满屏幕。如果图像宽而短或者长而窄,则在制作幻灯片之前,如果使用 PAN 命令使图像居中显示在屏幕上,会使图像平铺菜单的视觉效果最佳。(3)图像以 3:2 的宽高比(宽 3 个单位,高 2 个单位)显示。如果绘图区域的宽高比不是 3:2,则很难在图像平铺菜单正中生成图像幻灯片。在宽高比为 3:2 的布局视口中,可以放置图像并确保其视觉效果与在图像平铺菜单中的实际显示一样。(4)记住图像的用途。请勿使用图像将抽象的概念编码为符号。图像平铺主要用于选择图形符号。3.3.2 幻灯片库的制作下面为建立“智能零件图库、六角头螺栓”中的幻灯片库的建立过程:(1)在C :幻灯片库下新建一个记事本文件名称为hdpk.txt的记事本文件(2)将所有的幻灯片文件名加上扩展名写入到hdpk.txt记事本文件中,每个幻灯片文件名占一行,内容为:六角头螺杆带孔螺栓.sld六角头螺栓.sld六角头螺栓全螺纹.sld六角头头部带槽螺栓.sld六角头头部带孔螺栓.sld粗牙六角头螺栓.sld细牙六角头螺栓.sld粗牙全螺纹六角头螺栓.sld(3)将AutoCAD文件下的名称为slidelib.exe的可执行程序文件复制到D :幻灯片库的目录下。(4)依次单击“开始”菜单(Windows)“所有程序”“附件”“命令提示”。在“命令提示”窗口中的提示下,输入CD以更改文件夹。例如:“cd c:znljk ”输入完后按回车。当在MS-DOS状态下出现 “c:znljk”时,输入:slidelibhdpkhdpk.txt输入完后按回车即可创建幻灯片库,名称为hdpk.slb,幻灯片库文件夹用英文命名最好。这样即完成了“智能零件图库”的幻灯片库的建立。创建幻灯片库后,将各个幻灯片文件放置在安全位置以防被意外删除。如果以后需要重建幻灯片库,此操作很重要。图3.12为创建幻灯片库。图3.12 创建幻灯片库4 菜单的编制和加载AutoCAD为用户提供了多种形式的菜单和工具栏,但当这些菜单或工具栏不能满足要求,特别是对AutoCAD进行二次开发,需要专用菜单和工具栏时,就需要定制它们。最轻松的方法,是建立一个局部菜单文件,通过加载、卸载局部菜单来执行程序的菜单命令。如此,只要从下拉菜单选择要执行的功能,AutoCAD便会自动加载相关的程序文件并执行程序。尽管基本的自定义方法与产品以前的版本保持相同,但是用户自定义产品所使用的环境从 AutoCAD2006 开始便已更改。以前版本中的所有自定义选项仍然可用。用户仍然可以创建、编辑和删除界面元素,创建部分自定义文件以及使用宏和高级条目。但是,不再通过手动创建或编辑 MNU 或 MNS 文本文件来执行自定义任务。所有自定义任务均通过程序界面在“自定义用户界面”编辑器中执行。 4.1 菜单文件与自定义文件对比在 AutoCAD2006 之前的版本中,是通过在 ASCII 文字编辑器(例如记事本)中编辑 MNU 或 MNS 文件来自定义用户界面的。用户手动在文本文件中输入和验证自定义数据,而这可能是一个漫长并且容易出错的过程。因此,文本文件中一个简单的语法错误(例如匹配不当的括号)就可能使整个菜单文件无效,导致用户返回到文本文件以找出出现错误的位置。使用“自定义用户界面”编辑器,可将命令拖到菜单或工具栏中,也可以单击鼠标右键来添加、删除或修改用户界面元素。“自定义用户界面”编辑器将显示元素特性和选项列表,用户可以从中进行选择。这可以防止造成语法错误或拼写错误,这些错误可能是在手动向 MNU 或 MNS 文件中输入文字时发生的。过去使用的 MNU 和MNS 文件现已被替换为一种文件类型,即基于 XML 的 CUI 文件。CUI 文件的基于 XML 的格式使得产品可以追踪自定义设置。升级到程序的后续版本后,所有自定义设置都会自动集成到新版本中。XML 格式还支持向后兼容自定义文件。这意味着可以在以前的版本中查看后续版本的 CUI 文件,同时保留后续版本中的自定义数据。但是,无法在以前的版本中修改后续版本的 CUI 文件。表 4.1 列出了以前的菜单文件,并显示出了如何将这些文件映射到 AutoCAD2008。表 4.1 映射到 CUI 文件的菜单文件菜单文件说明 在 AutoCAD 2008 中更改说明MNU ASCII 文本文件。在早期版本中,用于定义大多数用户界面元素。启动产品时已自动加载主 MNU 文件 “acad.mnu”在绘图任务中,可以根据需要加载或卸载局部 MNU 文件。CUI 用于定义大部分用户界面元素的 XML 文件。启动产品时将自动加载主 CUI 文“acad.cui”、在绘图任务中,可以根据需要加载或卸载局部 CUI 文件。MNS 源菜单文件。与 MNU ASCII 文本文件相同,但不包含注释和特殊格式。CUI 用于定义大部分用户界面元素的 XML 文件。启动产品时将自动加载主 CUI 文“acad.cui ”在绘图任务中,可以根据需要加载或卸载局部 CUI 文件。MNC 经过编译的 ASCII 文本文件。包含用于定义用户界面元素的功能和外观的命令字符串和语法。CUI 用于定义大部分用户界面元素的 XML 文件。启动产品时将自动加载主 CUI 文件“acad.cui ”在绘图任务中,可以根据需要加载或卸载局部 CUI 文件。MNL 菜单 LISP 文件。包含用户界面元素所使用的 AutoLISP 表达式。MNL 未更改。MNR 菜单资源文件。包含用户界面元素所用的位图。MNR 未更改。4.2 菜单文本文件结构与 CUI 结构对比在 AutoCAD2006 之前的版本中,用户如果要编一个菜单的话,要在传统的菜单文件“acad.mnu ”中写很多麻烦的程序,如表 4.2 为 AutoCAD2006 之前的版本中,要创建一个“窗口菜单”所要编写的程序。 表 4.2 “acad.mnu”中“窗口”菜单的内容“窗口”菜单 说明*POP10*WINDOWID_MnWindow _cascadeID_WINDOW_TILE_HORZTile_horID_WINDOW_TILE_VERT_vertID_WINDOW_ARRANGE _arrange在 AutoCAD2006 及之后的版本中,则使用“自定义用户界面”编辑器,创建菜单很方便,不必编写任何程序,只要在【自定义用户界面】【自定义】中鼠标右击“菜单”选择“新建菜单”即可完成创建,创建步骤极为简单,如图 4.1 为AutoCAD2006 及之后的版本中“自定义用户界面”编辑器窗口。 比较表 4.2 的菜单数据和图 4.1“自定义用户界面”编辑器中以树状图显示的相同菜单数据。
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸设计 > 毕设全套


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!