毕业设计(论文)基于UG二次开发的齿轮设计系统研究.doc
安徽建筑工业学院 毕 业 设 计 (论 文) 专 业 机械设计与制造及其自动化 班 级 06机械(2)班 学生姓名 学 号 课 题 基于UG二次开发的齿轮设计系统研究 指导教师 2010 年 6 月 10 日摘要随着计算机技术的飞速发展,CAD已经广泛应用于零件设计和制造中,但一般的CAD软件都具有广而博的通用性,难以满足各类具体产品设计的需要,所以以通用CAD软件为基础,根据本单位的实际,进行不同程度的二次开发成为产品现代设计的重要内容。齿轮作为各种机械传动设备中的重要装置,具有传动平稳,承载能力强等优点,有着非常广泛的应用前景。但其结构复杂,设计计算困难,为了提高设计效率,增加竞争优势,实现齿轮的三维参数化精确建模显得尤为重要。本设计的主要研究内容包括以下两部分:首先,深入掌握UG二次开发方法,选用UG/OPEN API、UG/OPEN GRIP 、UG/OPEN MenuScript和UG/OPEN UIStyler作为UG的二次开发工具,实现直齿圆柱齿的三维参数化造型。其次,利用 UG/OPENAPI、VC+技术、数据库技术开发设计了齿轮信息数据库,使工作者方便的查询齿轮的参数,提高设计效率的目的。关键词:齿轮 UG 二次开发 VC+ 参数化ABSTRACTWith the rapid development of computer, CAD has widely used in part design and manufacturing, but because of the commonality of CAD software, it is difficult to meet the specific needs of variable product design, so on the basis of CAD software, according to the actual situation to carry out secondary development has become an important work of modern design. As an important engineering mechanical transmission apparatus, gears have a very wide application potential because of its advantage, such as high stability and bearing loads. However,the structure of gears are very sophisticated,and design difficulties, To improve the design efficiency and increase the competitive capacity, it is very important to realize the 3-D parametric modeling of gears.This paper mainly described the following two parts. First, this project makes use of UG secondary development languages offered by modules of UG/OPEN API,UG/OPEN GRIP ,UG/OPEN MenuScript and UG/OPEN UIStyler, and then realizes 3-D parametric modeling of cylindrical spur gear. Second, to use of UG/OPENAPI, VC+ technology and database technology developed a gear information database system, this system can convenient inquiry the parameter of gears. It also improves design efficiency.Key word: Gear UG secondary development VC+ parameterization目录第1章 绪论11.1 研究背景11.2 研究目的及意义11.3 国内外研究现状21.4 论文主要研究内容3第2章 UG二次开发技术研究42.1 UG及二次开发的相关模块42.1.1 UG软件的特点42.1.2 UG二次开发的相关模块52.2 UG/OPEN API接口技术62.2.1 UG/OPEN API的基础知识62.2.2 UG/OPEN API的应用范围72.2.3 UG/IPEN API运行的环境82.2.4 UG/OPEN API应用程序的初始化和终止82.3 UG/OPEN GRIP编程技术92.4 UG/OPEN MenuScript菜单技术102.5 UG/OPEN UIStyler对话框技术122.6本章小结15第3章 齿轮的参数化建模研究163.1 参数化设计概述163.1.1 参数化设计定义163.1.2 UG参数化设计方法173.2 渐开线的形成及其特性173.2.1 渐开线的形成的原理173.2.2 渐开线特性183.2.3 渐开线数学模型183.3 Grip编程生成渐开线直齿轮193.4 齿轮参数化系统设计203.4.1 创建VC+项目203.4.2 编写回调函数213.5 本章小结22第4章 齿轮数据库系统开发234.1 数据库基础知识234.2 ODBC数据库技术234.3 系统数据库的建立244.4 在VC中建立可供UG/Open API调用的DLL254.4.1 建立应用程序框架254.4.2 编写相应的接口函数274.5 本章小结27第5章 程序运行和实现结果285.1 程序编译、链接285.1.1 数据库相关程序285.1.2 齿轮参数化设计相关程序285.2 UG运行结果展示295.3本章小结30第6章 总结与展望31致谢32参考文献33附录一34附录二40代码段一40代码段二42代码段三44代码段四45附录三47代码段一47代码段二48代码段三48附录四 科技文献翻译53附录五 毕业设计任务书65图表目录表2-1 常用的头文件名称及其描述7图2-1 GRADE(GRIP高级开发环境)的界面9图2-2 自定义环境变量对话框11图2-3 自定义菜单界面12图2-4 对话框属性定义界面13图2-5 直齿轮参数化设计对话框13图2-6 用户界面样式编辑器14图2-7 对话框回叫界面14图2-8 对话框回叫函数15图3-1 渐开线的形成18图3-2 渐开线的形成19图3-3 安装UG项目文档20图3-4 UG/OPEN API Wizard21图3-5 屏蔽函数21图3-6 步骤(3)操作内容22图4-1 设计器选择界面24图4-2 表shujuku设计25图4-3 表的数据库25图4-4 数据库注册25图4-5 对话框设计26图4-6 定义成员变量26图4-7 定义菜单的消息相应函数27图5-1 数据读入界面29图5-2 数据库1号齿轮生成图29图5-3 数据库7号齿轮生成图30第1章 绪论1.1 研究背景20世纪70年代以来,一个以计算机辅助设计技术为代表的新的技术改革浪潮席卷了全世界,它不仅促进了计算机本身性能的提高和更新换代,而且几乎影响到全部技术领域,冲击着传统的工作模式。CAD技术经历了曲面造型技术、实体造型技术和参数化技术三代飞跃式发展已经、并将进一步给人类带来巨大的影响和利益。渐开线齿轮作为各种机械传动设备中的重要装置,具有传动比大、效率高、结构紧凑、工作可靠、寿命长等优点,广泛应用于机械、船舶、航空、电力领域。随着大批优秀的三维CAD软件纷纷涌现,一般机械零件的三维设计对普通工程师来说已经不再是困难的工作。但是对于渐开线齿轮,由于其齿廓的复杂性,一般设计者在CAD中很难精确造型,继而影响到后续的齿轮有限元分析、运动仿真和数控加工的操作。CAD参数化设计的理念正是解决这一问题的有效途径。计算机辅助设计的广泛应用以及计算机硬件和软件技术水平的迅速提高,为参数化设计提供了一个良好的基础。参数化实体造型技术大大提高了模型的生成和修改的速度,在产品的系列设计、相似设计及专用CAD系统开发方面都具有较大的应用价值。1.2 研究目的及意义目前,流行的CAD/CAM软件众多,软件功能上也各有千秋,Pro/ENGINEER、UG、CATIA、I-DEAS等,都是比较通用的大型软件系统。但任何通用的CAD软件,由于其具有广而博的通用性,使它在具体应用时不能直接处理特定的产品,难以满足形形色色具体产品设计的需要。为了使其在特定的企业和特定产品设计中最大限度的发挥其潜力和创造效益,就有必要以通用CAD软件为基础,根据本单位的实际,进行同程度的二次开发,以提高生产效率,真正发挥CAD软件的功能。这也是众多使用通用CAD软件的企业一项非常迫切和重要的工作。本设计利用UG二次开发技术、VC+技术、数据库技术对渐开线齿轮进行了参数化设计,并且开发设计了齿轮信息数据库,既保证了造型的精确性,又可以使工作者方便的查询齿轮的参数,达到提高设计效率的目的。1.3 国内外研究现状CAD概念是50年代末由麻省理工学院首次明确提出的,60年代研制成功试验CAD系统、70年代CAD开始实用化,从二维的电路设计发展到三维的飞机、造船、汽车等设计。80年代,由于解决了三维几何造型、仿真等问题,应用范围不断扩大,大中型系统向微型化发展,出现了应用极广的微机CAD系统和性能优良的工作站CAD系统。90年代后随着CAD技术的发展,其系统性能提高,价格降低,CAD开始在设计领域全面普及,成为必不可少的设计工具。随着优化设计和CAD技术在国内外的飞快发展,在新产品设计方面普遍进行参数优化。这样它们在追踪市场、缩短技术准备周期,保证产品性能方面占了很大优势。目前,市场上有很多关于齿轮传动的设计系统,但是都或多或少地存在着不完善的地方。例如,有的软件只具有几何参数设计功能,后来即使实现了齿轮造型的功能,模型却非常粗糙,甚至是使用圆弧等简单曲线代替渐开线对齿廓曲线进行造型,不能很好的表达渐开线齿廓的几何特性;还有一些软件没有充分地注重设计者的主观能动性。表现在:一些经验参数的选取直接采用了系统默认值,当输入的唯一初始值时,只能设计出唯一的一个结果;少数单位也开发了较为完整的齿轮设计软件,虽然比较适于生产实际的需要,价格却很高。因此在生产实际中,很多设计人员为了在特定的要求下进行齿轮的设计和造型,仍然使用手动设计这一古老的方法,这种方法工作量大、效率很低、容易出错。关于齿轮类零件参数化三维计算机辅助设计,国内外不少学者进行了研究,李新华分析了Edge软件在齿轮设计中存在的不足,以VBA作为开发工具,根据特征参数化造型思想,开发出了基于特征的参数化齿轮系统生成模块,提高了绘图效率。王穗选用大型软件I-DEAS作为开发平台,通过选择齿轮系各零部件有关的基本结构形式参数和主要的结构尺寸参数建立起各零部件及子系统的简化模型库。朱凤芹在Pro/E环境下实现了直齿圆柱齿轮的参数化设计,只要改变相关参数就可以得到不同参数的齿轮,达到缩短齿轮设计周期、减少重复工作的目的。1.4 论文主要研究内容本设计利用大型软件UG的二次开发技术来实现圆柱直齿轮的三维参数化造型,可通过改变齿轮的一些基本参数,生成相应的齿轮,达到设计要求,并且利用UG/Open API、UG/OPEN GRIP、UIStyler和Menuscript进行菜单和界面设计,使用户有一个良好直观的操作环境,建立以产品信息为中心的齿轮数据库人机交互界面,并且利用VC+技术开发了齿轮数据库程序应用框架,方便查询齿轮的参数,具体章节安排如下:第一章绪论。主要阐述了本设计的背景、研究目的和意义等,概括了国内外三维CAD技术、参数化设计技术,并对论文的研究内容做了概述。第二章UG二次开发的方法研究。深入研究UG二次开发方法,获取UG二次开发的完整实施进程。包括:基于VC+6.0开发平台的UG NX应用程序接口、主菜单Menuscript及工具菜单User tools用户定制、对话框UIStyler可视化设计应用、实现多种用户界面接口、UG/Open API程序三维造型应用研究等。第三章齿轮的参数化建模研究。介绍了UG参数化设计的方法,利用GRIP语言对直齿轮进行编程,通过VC实现UG系统菜单、用户对话框和GRIP齿轮程序的接口设计,完成齿轮参数化建模设计。第四章齿轮数据库管理系统开发。介绍了数据库的基础知识和UG环境下OBDC数据库访问接口,利用VC+技术开发了齿轮数据库程序应用框架,方便查询齿轮的参数,达到提高设计效率、有效管理数据的目的。第五章系统运行。经过前面各章节的操作后按序对C语言进行编译,连接,最终实现设计目的。第六章总结与展望。对论文的主要研究工作及取得的成果进行了总结,分析了不太完善尚待进一步研究的问题。第2章 UG二次开发技术研究UG是一个优秀的机械CAD/CAE/CAM一体化高端软件,它基于完全的三维实体复合造型、特征建模、装配建模技术,能设计出任意复杂的产品模型,再加上技术上处于领先地位的CAM模块、内嵌的CAE模块,使CAD、CAE和CAM有机集成,可以使产品的设计、分析和制造一次性完成。此外,UG软件还提供了CAD/CAE/CAM业界最先进的编程工具集,以满足用户二次开发的需要。本章首先讨论了UG软件的模块、特点及二次开发工具,然后对基于 UG/Open Menuscript开发工具详细介绍了系统菜单开发方法。2.1 UG及二次开发的相关模块2.1.1 UG软件的特点Unigraphics(简称UG)是全球主流的MCAD系统,是一个集计算机辅助设计、辅助制造、辅助工程和产品数据管理(CAD/CAM/CAE/PDM)于一体的机械工程辅助系统。该软件具有以下特点:(1) 具有良好的用户界面,绝大多数功能操作都可通过鼠标完成;在每一步操作中,系统都有相应的提示信息,有利于用户正确完成操作;UG还具有自动推理功能。(2) 具有统一、高效的数据库管理,真正实现了CAID、CAD、CAE和CAM等功能模型之间无数据交换的自由切换,并可实施并行工程。(3) 引进了复合建模技术,将实体建模、曲面建模、显示几何建模及参数化建模等多种建模技术集成为一体,建模功能更加强大、完善和直观。(4) 以Parasolid为实体建模核心,实体造型功能处于领先地位,这也是许多其他著名CAD/CAE/CAM软件实体造型的基础。(5) 曲面设计以非均匀有理B样条理论作为基础,复杂曲面造型功能强大,且可用多种方法生成,尤其适合于汽车外形和汽轮机叶片等复杂曲面的造型。(6) 具有很强大的出图功能,根据三维实体模型可方便地直接生成二维工程制图,可以按照ISO标准和国标生成各种剖视图、标准尺寸、形位公差和汉字说明等。提供界面良好的应用开发工具,如UG/OPEN GRIP、UG/OPEN API。目前支持GRIP、C、C+、Java语言的二次开发,用户通过高级语言接口,使UG的图形功能与高级语言的计算功能紧密结合起来,有利于开发专用CAD系统。2.1.2 UG二次开发的相关模块UG应用开发(又称UG二次开发)是指在UG软件平台上,结合具体的应用需求,总结行业的设计知识和经验,开发面向行业和设计流程的CAD系统。UG软件中的应用开发模块提供了较为完善的应用开发工具集,利用该工具集可对UG系统进行用户化裁剪和开发,用以满足实际的应用需求。UG/OPEN是一系列UG开发工具的总称,是UG软件为用户和第三方开发人员提供的最主要的开发工具,它主要由UG/OPEN API、UG/OPEN GRIP、UG/OPEN MenuScript、UG/OPEN UIStyler、UG/OPEN GRIP NC、UG/OPEN C+六个部分组成。(1) UG/OPEN API(又称User Function)是一个允许程序访问并改变UG对象模型的程序集。UG/OPEN API封装了近2000个UG操作的函数,可以方便地对UG的图形终端、文件管理系统和数据库进行操作,绝大多数的UG操作都可以用UG/OPEN API函数实现。UG/OPEN API是最常用的UG应用开发工具。(2) 在UG/OPEN API工具发布之前,UG的应用开发工具是UG/OPEN GRIP(Graphics Interactive Programming)。GRIP是一种专用的交互编程语言,它与UG系统集成,可以实现UG环境中的大部分应用操作。GRIP语言与一般的通用语言一样,有其自身的语法结构、程序结构、内部函数以及与其他通用语言程序相互调用的接口。虽然GRIP的功能远不如UG/OPEN API强大,但由于其某些独特的优点,仍然有大量用户在使用。(3) UG/OPEN MenuScript是创建用户化菜单的工具。MenuScript支持UG主菜单和快速弹出式菜单的设计和修改,通过它可以改变UG菜单的布局,添加新的菜单项以执行用户应用开发程序、User Tools文件和操作系统命令等。基于菜单制作技术的MenuScript,可以调用UserTools,MenuScript所开发的菜单与UserTools开发的对话框可以调用UIStyler开发的对话框。(4) UG/OPEN UIStyler是开发UG对话框的可视化工具,其生成的对话框与UG集成,用户可以方便、高效地与UG进行交互操作。该工具避免了复杂的图形用户接口GUI编程,直接将对话框中的基本控件进行组合与布局,可以创建满足不同功能需求的UG风格对话框。(5) UG/OPEN GRIP NC允许用户不通过交互式的对话框设置,而是通过编程的方式创建UG加工工具的路径。用户可以使用GRIP NC Statements、Global Parameter Access Symbols(GPAS)以及Entity Data Access Symbols(EDAS)来创建GRIP NC程序。(6) UG/OPEN C+允许用户使用C+类来操作UG的对象,实现UG的功能。UG/OPEN C+是UG面向对象的程序编程接口。使用类层次中的方法,用户可以创建、读取和修改UG的内部对象以及操作UG系统本身。用户可以通过继承UG的基础类来定义新的类来扩展类的层次结构。由于UG/OPEN C+使用标准的C+,所以使用模块编写的代码更加简洁,可读性更强。本设计中,选择了UG/OPEN API、UG/OPEN GRIP 、UG/OPEN MenuScript和UG/OPEN UIStyler作为UG二次开发的工具。以下几节将分别介绍这四种开发工具。2.2 UG/OPEN API接口技术2.2.1 UG/OPEN API的基础知识简单说来,UG/OPEN API是UG与外部应用程序之间的接口,它是UG提供的一系列函数和过程的集合。它支持C/C+语言,可以充分发挥C语言编译、运行效率高,功能强大的特点。并且,这些API函数可以集成到C+程序中,并利用强大的Microsoft Visual C+集成环境进行编译。通过C/C+语言编程调用这些函数和过程可以实现如下功能:(1) 对UG文件及相应模型进行操作,包括UG模型的构建、编辑,装配体的建立、遍历,以及工程的创建等。(2) 在UG主界面中创建交互式程序界面。(3) 创建并管理用户定义对象等。UG/OPEN API中的这些函数和过程定义在UGOPEN目录下的头文件中。表2-1列举了一些常用的UG/OPEN API头文件名称及简单描述。表2-1 常用的头文件名称及其描述头文件名称头文件描述uf.hUG/OPEN API的公共类型和函数定义uf_assem.h与装配有关的函数和结构定义uf_attr.h与部件和对象属性有关的函数和结构定义uf_defs.h UG/OPEN接口所需要数据类型和宏的定义uf_disp.h与显示有关的函数和结构定义uf_exit.h与用户出口有关的函数和结构定义uf_mb.h与MenuScript中对象属性操作有关的函数和结构定义uf_modl.h与模型创建、查询有关的函数和结构定义uf_modl_features.h与特征建模有关的函数和结构定义uf_modl_general.h普通建模有关的函数和结构定义uf_object.h与UG对象及属性操作有关的函数和结构定义uf_object_types.h UG对象的类型定义uf_part.h与部件文件操作有关的函数和结构定义uf_styler.h与UIStyler有关的函数和结构定义uf_ui.h与用户界面功能有关的函数和结构定义uf_view.h与视图有关的函数和结构定义uf_wave.h与WAVE功能有关的函数和结构定义2.2.2 UG/OPEN API的应用范围UG/IPEN API的主要应用有以下几个方面:(1) 用户化制定CAD环境。用户化制定CAD环境,主要包括:提供用户化CAD规范;提供用户标准化件库;定制用户化CAD界面等。(2) 开发在UG软件平台上的用户专用软件。开发在UG软件平台上的用户专用软件主要是指UG软件没有提供的及功能不能满足用户要求的一些用户专用软件,例如CAPP软件、DFA软件、DFM软件、CAD/CAE接口软件等。(3) 开发UG软件与其他CAD软件的接口。目前,商品化的CAD软件很多,如CATIA、Pro/E、Solidworks、AutoCAD等。使用这些软件所建的3D模型或2D图纸都使用各自的数据结构,有时需要把它们的数据进行相互交换。这时,有必要开发它们之间的接口。2.2.3 UG/IPEN API运行的环境UG/IPEN API程序能在两种不同的环境(依赖于程序的连接方式)下运行:² Internal环境Internal环境(也叫开发模式)下的程序只能在UG的界面环境(Session)下运行。Internal开发模式下的程序只能在UG的界面环境下运行。在运行这些程序时,它们以*.dll的方式被加载到UG的运行空间中。该模式有下列特点:(1) 执行代码小,连接快。(2) Internal的程序一旦被加载到内存中,只能通过UG/OPEN API的卸载功能才能从UG的运行环境中卸载它。(3) 运行结构在UG界面的图形窗口中可见。(4) 入口函数是ufusr()或ufsta()。² External环境External开发模式可以以*.exe的方式在操作系统(Windows NT/2000/XP及UNIX)下直接运行,而不在UG环境中作为UG的子进程运行。通常,External模式用于那些不需要图形界面的后台运行应用程序,如打印机或绘图仪输出。在调用访问UG格式数据的函数前必须要打开UG的部件(part)文件。绝大部分的UG/OPEN API函数或子过程可以在这两种模式下使用。只有极少数的函数(主要是用户界面函数)只能在Internal模式中使用。2.2.4 UG/OPEN API应用程序的初始化和终止所有的UG/OPEN API程序必须正确的初始化和终止以保证获取和释放UG/OPEN API的执行许可权限。UG/OPEN API提供了两个函数来做这项工作:UF_initialize()和UF_terminate()。在应用程序中,声明变量之后第一个调用的UG/OPEN API函数必须是UF_initialize(),用以获取执行许可权限。最后一个调用的函数必须是UF_terminate()用以释放执行许可权限。2.3 UG/OPEN GRIP编程技术 GRIP(Graphics Interactive Programming)是一种专用的图形交互编程语言,开发者可以用GRIP编程的方法自动实现在UG下进行的绝大部分操作。如图2-1是GRIP高级开发环境的界面。GRIP命令很像英语单词,语法与BASIC和FORTRAN相似,有某些情况下对于一些高级操作,用GRIP编程的方法比用UG交互的方法更有效,在UG交互环境下可以实现的功能用GRIP几乎全都可以实现。UG提供了一个名叫UG/Open GRIP的GRIP语言编辑器,用这个工具可以编辑、修改、编译、连接程序。 图2-1 GRADE(GRIP高级开发环境)的界面GRIP语言与一般的通用语言一样,有其自身的语法结构,程序结构,内部函数,以及与其他通用语言程序相互调用的接口。一个GRIP语句是由一个或几个GRIP命令组成,GRIP命令是GRIP语言的基本组成部分。GRIP命令有三种表示格式:(1) 陈述格式。主要用于生成和编辑实体。(2) GPA符号格式。GPA是全局参数存取(Global Parameter Access)的缩写,用于访问UG系统中各种对象的状态和参数。(3) EDA符号格式。EDA是实体数据存取(Entity Data Access)的缩写,用于访问UG数据库,能够访问各种对象的功能性数据。例如在属性、绘图和尺寸标注以及几何体等领域与UG进行交互操作时,其参数可用EDA格式的命令取得。GRIP编程语言是面向工程师的语言,具有简单、易学、易用的特点,但是所编写的程序长、复杂,要考虑程序的各个细节问题。因此,GRIP语言常用于开发一些规模比较小的程序。2.4 UG/OPEN MenuScript菜单技术UG/OPEN MenuScript是UG的辅助模块,主要用于制作用户菜单。它不仅可以使用户利用ASCII文件来编辑UG的菜单,也可以以一种无缝集成的方式为用户开发的应用程序创建菜单。MenuScript同时也提供了一个菜单栏报告工具,以帮助用户查看定制的菜单,诊断错误。对于菜单的自定义可以分为如下三个层次:(1) 自定义菜单:该级别的自定义允许单个用户或管理员重新安排UG的功能,去除在其产品开发过程中不需要的功能。(2) 自定义UG功能:该级别的自定义允许单个用户取代或增加标准的UG功能,并添加其自己定义的功能。(3) 添加自定义应用:该级别的自定义其目的在于使用户或第三方开发商开发的应用程序完全集成在UG中。该级别的自定义需要编程实现。UG的菜单文件是以*.men为扩展名的文本文件,可以使用Windows的记事本进行编辑。UG/OPEN MenuScript提供了一套用于定义UG菜单的脚本语言,开发者可以使用该脚本语言定义和修改菜单及菜单响应的行为。但是要使用用户定义的菜单及其调用的程序被UG识别,则必须进行UG环境变量的设置。以下就本设计菜单定制步骤叙述如下:(1) 在自定义目录E:zhichilun下创建startup、application、grip三个文件夹。其中自定义的菜单文件在startup文件夹中,对话框文件在application文件夹中,齿轮参数化设计的Grip程序在grip文件夹中。(2) 在“我的电脑”上单击鼠标右键,在弹出的快捷菜单中选择【属性】命令,在弹出的对话框中切换到“高级”选项卡,在该选项卡里单击【环境变量】按钮,新建用户环境变量,其中变量名为UGII_USER_DIR,变量值为自定义目录。如图2-2和图2-3所示。图2-2 自定义环境变量对话框(3) 在刚创建的startup文件夹中,新建txt文档,重命名为caidan.men。用记事本打开进行编辑,内容如下:VERSION 120 版本EDIT UG_GATEWAY_MAIN_MENUBAR 编辑UG刚启动时的菜单AFTER UG_APPLICATION 菜单位于首选项之后CASCADE_BUTTON chilun 菜单包含子菜单LABEL 齿轮参数化设计系统 菜单显示标识END_OF_AFTER 关键字结束MENU chilunBUTTON zhichilun 子菜单LABEL 直齿圆柱齿轮设计 子菜单显示标识ACTIONS zhichilun1.dlg 子菜单ID号BUTTON xiechilun 子菜单LABEL 斜齿圆柱齿轮设计 子菜单显示标识ACTIONS xiechilun.dlg 子菜单ID号BUTTON zuichilun 子菜单LABEL 直齿锥齿轮设计 子菜单显示标识ACTIONS zuichilun.dlg 子菜单ID号END_OF_MENU 进行完上述编辑后保存。注意上述内容后面所跟汉字是解释的,编辑时不用编入。现在启动UG,就能看到如图2-3所示界面。图2-3 自定义菜单界面2.5 UG/OPEN UIStyler对话框技术UG/OPEN UIStyler模块为用户提供了强大的可视化制作UG风格对话框的功能。不仅可以所见即所得的方式生成对话框,系统还可以自动为对话框生成响应的C语言模板文件,使得开发对话框的应用变得简单、快捷。UG/OPEN UIStyler主要功能如下:(1) 提供了让开发人员建造UG风格对话框的可视化环境,并能生成UG/OPEN UIStyler文件和C代码,从而使用户在使用UIStyler产生的对话框时,不必考虑图形界面(Graphical User Interface缩写为DUI)的实现。(2) 利用可视化环境快速生成UG风格对话框,从而减少开发时间。(3) 通过选取和放置控件,从而能实现所见即所得。(4) 可以在对话框中实现用户自定义位图。(5) 提供了属性编辑器,从而允许开发人员设置和修改控件属性。(6) UIStyler产生的对话框可以在MenuScript中被调用,因此可以实现在UG菜单上调用UIStyler产生的对话框,从而将用户应用程序和UG完全融合。UIStyler可视化界面由基本对话框、对象浏览器、属性编辑器、控件栏和控件编辑工具五部分组成。基本对话框显示最终的设计结果;对象浏览器显示基本对话框中已设置的控件信息;属性编辑器用于编辑指定控件的属性;控件编辑工具提供了编辑控件的常用工具,包括控件上移、下移、复制、粘贴和删除等操作;控件栏列出多种控件供开发者选用。以下就本设计可视化对话框制作步骤叙述如下:(1) 在UG5.0界面选择,菜单,开始,所有应用模块,用户界面样式编辑器,进入UIStyler可视化界面。对话框的标题定义为“直齿圆柱齿轮设计”,状态栏定义提示为“直齿圆柱齿轮设计”,对话框的前缀定义为ZHICHILUN。对话框的基本属性定义如图2-4所示。图2-4 对话框属性定义界面(2) 进入对话框设计界面,通过在适当位置放置相应的控件,直齿轮设计对话框包括五个实型输入框、三个整型输入框和一个按钮框,在资源编辑器,属性,按钮样式选项选择“确定和取消”,每添加一个框就能在“用户界面样式编辑器”中看到。注意“对象标识符”项中的标识,这些标识会在后面生成的模板C程序中显示,是相对应的。本设计中并没采用系统默认标识,而是自定义成自己的。参数化设计自定义的对话框如图2-5和图2-6所示。 图2-5 直齿轮参数化设计对话框图2-6 用户界面样式编辑器(3) 设置回调函数。UG风格的对话框有六种基本回调函数,根据对话框属性定义不同,有效回调函数各不相同,直齿轮参数化设计对话框定义了四个回调函数,Cancel按钮回调函数为cancel_zhichilun,构造回调函数为construction_zhichilun,析构回调函数为destruction_zhichilun,OK按钮回调函数为ok_zhichilun。如图2-7和图2-8所示。图2-7 对话框回叫界面(4) 将对话框另存为到前面所建的application文件夹中,注意要选择C语言,文件名为zhichilun1则UG/Open UIStyler会在存放的目录下自动生成zhichilun1.dlg、zhichilun1.h、zhichilun1_template.c文件。在这三个文件夹中zhichilun1.dlg为资源文件,定义对话框样式及控件事件的响应函数名称。zhichilun1.h是对话框的头文件,用于声明控件标识和控件事件响应函数的原型。 zhichilun1_template.c模板文件给用户提供一个具有对话框应用的UG/Open程序框架,该框架程序通过调用UG/Open API函数和访问zhichilun1.dlg资源文件,实现最初的对话框界面功能。如果要使响应函数实现具体的功能。则需要在程序标明的位置添加用户代码。自此,本设计中的菜单和可视化窗口设计完成,但是如何实现其功能还有很长的路要走,我们将在下一章完成。图2-8 对话框回叫函数2.6本章小结本章首先阐述UG软件的特点以及UG/OPEN API、UG/OPEN GRIP、UG/OPEN、MenuScript、UG/OPEN UIStyler、UG/OPEN GRIP NC、UG/OPEN C+六种UG二次开发工具,随后详细介绍UG/OPEN API、UG/OPEN MenuScript以及UG/OPEN UIStyler这三种开发工具的主要功能和使用方法,并选择了其中最常用的UG/OPEN API、UG/OPEN GRIP、UG/OPEN MenuScript以及UG/OPEN UIStyler作为本次课题的开发工具。第3章 齿轮的参数化建模研究3.1 参数化设计概述参数化设计是近几年才发展起来的先进造型技术,可以大大提高设