




已阅读5页,还剩57页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,1,UG软件二次开发概念,任何一款软件都不能完全满足用户的所有需求购买了UG软件之后,为了更好的使用,针对本单位产品的特点进行一些二次开发是必不可少的这对提高产品的设计效率,缩短产品的设计周期并使设计符合国家标准等,具有重大意义。,.,2,二次开发可以做什么?,可利用UG提供的二次开发接口建立参数化标准件库建立特定产品的加工模板开发方便实用的工具库建立配套的刀具库,.,3,UG二次开发示例标准件库,.,4,.,5,.,6,.,7,UG开发工具UG/Open,.,8,UG/Open介绍,UG/Open是一系列UG开发工具的总称。它们随UG一起发布,以开放性架构面向不同的软件平台提供灵活的开发支持。UG/Open的所有文件,包括开发工具、头文件、库均存放在以下目录中:D:EDS(UG主目录)UGOpen,.,9,UG/Open主要包括,GRIP图形交互程序API应用程序接口UIStyler用户界面设计工具MenuScript菜单脚本语言,.,10,UG的二次开发接口,UG/OpenAPIUG开放应用程序接口,也称UserFunction(用户函数)。UG/OpenAPI是UG/Open二次开发软件包的一个重要组成部分,.,11,API的功能,API的核心包含了约2000个C函数,分别用来实现大部分的UG操作使用这些C函数,用户可以建立、编辑、查询并修改UG的各种实体对象,实现用户界面的交互,控制UG行为等,.,12,UG的实体对象,包括.part文件、点、线、面、实体、特征、坐标系、表达式等,.,13,UF,后面的课程中UG/OpenAPI均简称为UF。,.,14,UF程序的源代码并不能被UG直接执行,它和C程序一样必须通过编辑形成动态链接库.dll或可执行文件.exe后才能发挥作用,外部UF和内部UF,.,15,外部UF和内部UF,程序运行环境不同,外部UFUF程序内部UF,.,16,外部UF和内部UF,外部UF程序,独立于UG之外的普通C程序,是可执行程序(*.EXE),通过UG的运行库调用API的功能。,运行时只要有UGLicense的支持,就可以由操作系统直接执行,不需要启动UGGateway(主界面)。,.,17,外部UF,优点,调用灵活,用途广泛不必启动UG,属于后台运行,节约运行时间。,.,18,外部UF,缺点,不能和UGGateway发生联系,因而不能利用UG的显示窗口动态反馈操作结果,同时也不能实现一些须由用户完成的交互操作。,.,19,外部UF,外部UF用途,一般多用于Part文件的大量创建、存取和管理或控制出图。不适用于用户交互性的几何建模和修改。,.,20,内部UF,内部UF程序,运行UG内部的API程序,通过动态链接成为UG的一部分。,以动态链接库(*.DLL)的形式创建并编译的。,必须启动UGGateway才能被运行。,.,21,内部UF,UG调用内部UF的方式,启动UG后,从FileExecuteUG/OpenUserFunction或者Ctrl+U(快捷方式)进入,运行内部UF程序(ufusr接口函数),.,22,内部UF,UG调用内部UF的方式,从用户创建的菜单中(MenuScript)调出用户定制的界面(UIStyler),运行程序(ufsta),.,23,内部UF,优点,能处理UG的UI(UserInterface)对象接口实现和UG界面的无缝集成并扩充UG的特定功能,.,24,内部UF,执行时每个步骤都能从UG的显示窗口中得到动态反映能方便地通过UI界面对象来实现与用户的交互、屏幕选取等复杂操作,优点,.,25,注意!,所有的UF函数都可用于内部UF方式,但不一定能用于外部UF方式,.,26,在UGDocument中关于UF函数的注释文件里对每个UF函数都有Internal(内部)和External(外部)的指明。,寻求帮助,.,27,.,28,UF函数命名规则,标准命名法根据函数所属的模块和实现的功能给函数赋予有意义的名称。,.,29,标准命名法,externintUF_CURVE_create_point(doublepoint3,tag_t*point);在绝对坐标系中产生一个点。,externintUF_PART_new(char*part_name,intunits,tag_t*part);生成一个新的part文件,并把它作为工作文件。,.,30,标准命名法,一般函数开头的大写部分表示此函数所在UG/OpenAPI的库函数名称,如UF_CURVE_create_point即必须在头文件中加以声明,如#include#include,.,31,标准命名法,函数名称使程序设计人员很容易知道函数的含义及所属库函数,优点,.,32,UF函数命名规则,固定命名法是早期版本所命名的UF函数如uc1601();uf5943();,.,33,固定命名法,缺点,函数名称使程序设计人员很难明了函数的含义及所属库函数,.,34,忠告,固定命名法在后面的版本中有部分保留,随着版本升级较容易被放弃。建议:使用UG的函数时尽量避免使用此类函数,以保证开发程序的延续性。,.,35,UF的数据结构标识,UF是完全以C语言来实现的,其中大量运用了C的结构、枚举、指针和预定义常数等。一般从后缀上已经对它们的类型进行了明确的标识,.,36,UF的数据结构标识,_t原始数据结构类型_p_t指向该数据结构的指针类型_s结构类型_u_t联合类型_u_p_t指向联合的指针_f_t指向函数的指针,.,37,最常用的UF数据类型,tag_t它是任何确定存在的UG对象的唯一标识,这里对象是指UG的Part、Object、Feature、Expression等,.,38,tag_t定义,typedefunsignedinttag_t,*tag_p_t;tag_t其实只是一个整数型,用来作为UG实体的id(唯一标识码)。,.,39,UF中有一个特殊的Tag-NULL_TAG是用来表示暂时不标识任何对象的Tag,相当于初值为零。,.,40,最常用的UF数据类型,uf_list_p_t它表示一个UG实体链,是一个结构,由两个成员组成。eid表示链中的一个实体,*next表示指向链中下一项的指针,.,41,uf_list_p_t定义,typedefstructuf_list_s*uf_list_p_t;structuf_list_stag_teid;/*ObjectID*/structuf_list_s*next;/*PointertothenextOIDinthelist*/;,.,42,路标,这些结构体定义可以在UGS/ugopen中的uf_defs.h文件中找到。,.,43,Object、Body和Feature的区别,在UG中对象包含不同的类型,有Part、Object、Feature和Body等使用UG/OPENAPI中的函数时需要用到这些类型,因此有必要分清它们的概念及范围。,.,44,Object、Body和Feature的区别,Feature它是将用户对UG实体的所有操作过程都以特定(Feature)的方式记录下来,利用UF函数可以从Feature中得到其body。,.,45,Feature,一个实体往往可以拥有多个特征,如一个block经过倒角、钻孔后,那么在这个实体上就存在了两个特征,并且按照时间先后顺序排列。,.,46,Object,Object:是指基准轴datumaxis、基准面datumplane、草图sketch、直线line、圆circle、二次曲线conic和样条曲线spline等二维元素。利用UF函数可以从Object中得到一个Feature。,.,47,Body,Body指UG三维实体利用UF函数可以从Body中得到所有在其上操作过的Feature,.,48,5个基本实体特征,BLOCKCYLINDERCONE,SPHERETUBE,.,49,操作对象,在使用UF函数时必须分清它们是针对Body操作、针对Object操作,还是针对Feature操作。,操作对象?,.,50,操作对象,在UF中提供了Feature、Body和Object相互转换的UF函数,哇!它们之间可相互转换,.,51,对象转换,从特征feature中取出bodyUF_MODL_ask_feat_body从object中取出特征feature从body中取出特征链features从特征feature中取出object,.,52,UF的License,所有的UF程序在运行时都需要UG/OpenAPILicense的支持因此程序必须正确地初始化以获得一个License,终止时也要归还曾占用的License以供下次调用UF函数时使用。,.,53,UF的License使用,intUF_initialize();/*UF初始化*/intUF_terminate();/*UF终止化*/,License的初始化和终止化的操作使用以下函数:,.,54,UF的License使用,intUF_initialize();/*UF初始化*/在调用UF函数前调用,intUF_terminate();/*UF终止化*/在整个程序结束前调用,.,55,UF的License使用,UF初始化和U
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业设备操作课件前言
- 娱三姨安全培训课件
- 威海荣成课件研发
- 工业机器人介绍课件
- 威巴克生产安全培训室课件
- 威信押运司机安全培训课件
- Fentomycin-生命科学试剂-MCE
- E-Z-Rivanicline-E-Z-RJR-2403-生命科学试剂-MCE
- 工业安全培训定义课件
- 2025年八宿事业单位真题
- 部编人教版五年级上册语文 第三单元单元分析
- 普通心理学第六版PPT完整全套教学课件
- 护理综述论文的撰写
- 医院院内急会诊制度
- TSDPIA 05-2022 宠物猫砂通用技术规范
- 动力管道培训
- GB/T 11446.9-2013电子级水中微粒的仪器测试方法
- 热力学发展史概述讲课稿
- 教学配套课件:二维动态图形设计基础
- 预防电信诈骗网络诈骗
- 督脉灸参考课件
评论
0/150
提交评论