UG二次开发培训教程

合集下载

大型软件UG二次开发

大型软件UG二次开发

§2.3 UG对象类型及操作
1. 部件对象
(1)在部件中查询对象 UF_OBJ_cycle_objs_in_part()
(2)访问部件的属性: UF_ATTR_ask_part_attrs()
(3)关闭和再打开部件 UF_PART_close()和 UF_PART_reopen()
(4)获取部件的文件名 UF_PART_ask_part_name()
uf_fltr.h——关于区域和过滤器的函数说明。 uf_gdt.h——有关几何尺寸/公差的查询函数和数 据结构。
uf_gexp.h——有关几group.h——与群组有关的操作函数说明。 uf_help.h——实现帮助功能的相关函数及数据结构 声明。
uf_layer.h——与层有关的函数声明。 uf_layout.h——与布局有关的函数声明。 uf_lib.h——与用于查找对象的库的接口声明。 uf_mb.h——查询及设置Menuscript中的对象(如按 钮等)的属性等相关函数及数结构声明。
5. 变量声明
UG/OPEN API支持所有的 C语言数据类型。 对象的标识(实体标识)应声明tag_t类型。
6. 错误号
在没有特别说明时,每一个函数或过程都返 回一个int类型的错误号。当它不为0时,表 示出错,可以调用函数UF_get_fail_message 得到相应的错误信息。
§1.2 UG/OPEN API 的应用范围
1. 版本说明
Unigraphics 16版下连接的函数库是: libufn.lib及libinternal.lib。
Unigraphics 17、18及NX版下连接的函数库是: libufun.lib及libugopenint.lib。
2. 初始化及终止

(完整)1_UG二次开发实用教程 第一章

(完整)1_UG二次开发实用教程 第一章

第1章二次开发应用初步UG/NX是当今世界上最先进和高度集成的、面向制造行业的CAD/CAE/CAM软件系统,可用于产品的整个开发过程,包括产品概念设计、建模、分析和加工。

UG/NX以其强大的设计和加工功能而著称,可以支持目前市场上销售的不同厂家的所有工作站及微机平台,广泛应用于通用机械、模具、汽车及航空航天领域,被很多世界著名公司选定为企业计算机辅助设计、分析、制造的标准。

从20世纪60年代起UG就一直代表着工程制造业CAD/CAM软件产品的最高水平。

20世纪90年代,UG进入中国市场,受到广大CAD/CAM用户的欢迎。

UG在中国的用户已超过1000多家,装机量达到350 多套。

这是因为UG是一个集成化、全面、一体的软件,它包括设计、加工、分析和最流行的产品数据管理(PDM),给企业提供了一个全面的解决方案。

1.1 CAD软件的二次开发随着CAD应用领域的不断扩大和应用水平的不断提高,用户需求与CAD系统规模之间的矛盾日益增加,没有一个CAD系统能够完全满足用户的各种需求。

作为商品化的CAD软件产品,是否拥有一个开放的体系结构,是衡量该软件的优劣性、适用性和生命力的重要标志,而是否拥有一个开发简便、运行高效的二次开发平台又是开放式体系结构的核心和关键。

目前,主流的CAD软件都具有用户定制功能并提供二次开发工具。

通过CAD软件的二次开发工具可以把商品化、通用化的CAD系统用户化、本地化、即以CAD系统为基础平台,在软件开发商所提供的开发环境与编程接口基础之上,根据自身的技术需要研制开发符合相关标准和适合企业实际应用的用户化、专业化、知识化、集成化软件,以进一步提高产品研发的效率。

在通用CAD基础上融入专业知识构建专用CAD系统是当前深化CAD应用的潮流。

把用户的设计思想转化为特定的新功能需要以下基本要素,这些基本要素构成了CAD软件二次开发平台的基本结构:(1)通用CAD软件——管理层。

通用CAD软件是整个开发的基础,是二次开发应用程序的宿主。

UG软件二次开发课程第一课

UG软件二次开发课程第一课
26
标题栏 工具栏
工作区 窗口
输出 窗口 状态栏
源代码 编辑窗 口
27
VC界面组成
标题栏 工具栏 工作区窗口 源代码编辑窗口 输出窗口 状态栏
28
VC界面组成
ቤተ መጻሕፍቲ ባይዱ 标题栏
用于显示应用程序名和所打开 的文件名,标题栏的颜色可以表明 对应窗口是否被激活。
29
VC界面组成
工具栏
提供用于VC程序的建立、编辑 及调试的各种工具。
发展起来的,集编辑、编译、运行、调 试为一体的功能强大的集成编程环境 。
18
Visual C++6.0及其开发环境
开发环境是程序员同 VC++的交互界面
通过 它, 可以
访 问 程 序 源 代 码
访 问 资 源 编 辑 器
使 用 内 部 调 试 器
创 建 工 程 文 件
19
Visual C++6.0及其开发环境
在源代码编辑窗口激活的状态下,单击 程序编译按钮。
在程序没有编译错误的情况下,单击程 序联编按钮。
40
编 辑工具
Compile
程程 序序 编联 译编
Go
程 程序 序 执行 执 到断 行点
Execute Program
插入/ 删除 断点
41
程序录入并调试
单击GO按钮运行程序,可在设置断点处 停止,以便检查中间结果,此时中间结 果在输出窗口中显示。
3
产品设计
UG 提供给公司一个从设计、分析到制
造的完全的数字的产品模型。
4
叶轮有限元分析计算 ——划分网格
5
叶轮有限元分析计算——求解
轴向位移 6

手把手教你做UG二次开发

手把手教你做UG二次开发

手把手教你做UG二次开发1。

建立两个目录。

建立第一个目录 E:\my_first_UG,在这个目录下建立两个新的目录:E:\my_first_UG\application和E:\my_first_UG\startup。

建立第二个目录E:\my_source,用存放你的源代码。

2。

设置环境变量。

再Windows中设置一个新的环境变量:UGII_USER_DIR=E:\my_first_UG。

3。

打开UG,进入UIStyler应用(在Application菜单的最后)。

4。

设计一个对话框。

1)在"Dialog Title"一栏填入:First Dialog,按Apply(每次输入完成后,都要按Apply,为避免啰嗦,以后不再提及)。

2)在"Cue"一栏输入:%……%¥%¥¥##*%*(*(*—*—((,什么都行,呵呵。

3)在"Prefix Name"中,把CHANGE改为MY。

4)加入四个控件。

String,Push Button,Label和Single Select List编辑对话框的各个控件。

1)改变String控件的标题,标识和长度。

Label “String” -> “Input an item”.Identifier "STR_0" -> "ITEM"Width in... 0 -> 202) 改变Push Button控件的标题,标识和回调函数的名字。

Label "Push Button" -> "Import"Identifier "ACTION_1" -> "IMPORT"callbacks "action_1_act_cb" -> import_cb把"Creates Dialog"激活。

6_UG二次开发实用教程 第六章

6_UG二次开发实用教程 第六章

第六章零件设计UG的特征建模功能非常强大,UG中几乎所有的几何特征都可以利用UG/OPEN API进行创建。

UG/OPEN API提供诸如UF_MODL_create_XXX_XXX的函数用于创建几何特征,提供诸如UF_MODL_ask_XXX_XXX的函数用于查询特征的属性。

但是通常情况下,修改几何特征往往要通过几何特征的参数来实现。

6.1 基本概念1、明确特征的几何描述利用函数UF_MODL_create_XXX_XXX创建几何特征,首先要明确几何特征的几何描述。

以最简单的圆锥为例,可以通过函数UF_MODL_create_cone1()创建一个圆锥,但是如果你对圆锥特征的几何描述不清楚,你就不能明白函数UF_MODL_create_cone1()中参数的含义。

如果你在使用函数UF_MODL_create_cone1()创建圆锥特征之前,知道在三维空间中描述一个圆锥,需要知道圆锥的原点、高度、底部和顶部的直径、方向。

此时你使用函数UF_MODL_create_cone1()时,int UF_MODL_create_cone1(UF_FEATURE_SIGN signdouble origin [ 3 ]char * heightchar * diam [ 2 ]double direction [ 3 ]tag_t * cone_obj_id )也就是说,在创建任何特征之前,要明确特征的几何描述。

2、分清函数参数的类型在二次开发过程中,必须分清UF函数是针对特征(Feature)操作、还是对象(Object)操作,还是实体(Body)操作。

特征是将用户对UG实体的所有操作过程都以特征的方式记录下来,一个实体往往可以拥有多个特征,如一个block经过倒角(blend),钻孔(hole)后,那么在这个实体上就存在了三个特征,并且按照时间先后顺序排列。

对象是指uf_object_types.h中说明的对象,包括:体(),表面,边缘,直线(line),圆(circle)、二次曲线(conic)和样条曲线(spline)等几何对象,还有基准轴(datum axis),基准面(datum plane)、草图(sketch)、表达式、颜色、线型、组等非几何对象。

(完整)8_UG二次开发实用教程 第八章

(完整)8_UG二次开发实用教程 第八章

第8章工程图UG的制图模块(Drafting)为创建和管理工程图提供了一个综合的自动化工具组,使工程设计人员可以从UG三维实体模型得到完全相关的二维工程图,可生成与实体模型相关的尺寸标注,保证了工程图随着实体模型的改变而同步更新,制图模块可快速创建二维图的多个视图,包括正视图、轴测图、各种剖视图、辅助视图和局部放大视图等。

制图的一般过程如下:进行制图的参数预设置,创建图纸,插入视图,插入符号,标注尺寸,插入表面粗糙度,文字注释、标题栏、明细栏和填写技术要求等。

本章介绍如何利用UF函数实现制图参数的预设置、创建图纸、插入和编辑视图、添加尺寸、辅助文本等相关的制图功能。

工程图的UF函数定义主要包含在头文件uf_drf.h 和uf_draw.h中,其中在头文件uf_drf.h中主要包括制图的符号、标注、尺寸等函数的定义,在头文件uf_draw.h中主要包括制图时的创建及查询截面线和视图函数与类型的定义。

8.1 工程图的设置在创建工程图前,应预先设置工程图的有关参数。

工程图的参数预设置包括:系统制图参数预设置,视图显示参数预设置,注释与符号预设置等内容。

在UG系统中可以从三个方面对工程图的应用参数进行预设置:1.客户缺省文件。

通过ug_metric.def 或ug_English.def 文件预设置相应的参数,这部分内容通常由系统管理员按国标和企标统一标准来设定;2.部件文件制图应用参数预设置。

在部件文件内预设置各种制图参数,这些设置将影响部件文件内所有制图对象,并且这些设置对部件文件的影响优先于客户缺省;3.对部件文件内特定的对象进行参数预设置。

可改变个别制图对象的参数预设置,将影响指定的制图对象。

这些改变优先于客户缺省文件和部件文件制图应用参数预设置。

8.1.1制图参数预设置UF提供四个函数用来查询和设置制图的所有参数,包括对部件文件和部件文件内特定的对象进行参数预查询和设置,它们包含在头文件uf_drf.h中。

8_UG二次开发实用教程第八章

8_UG二次开发实用教程第八章

8_UG二次开发实用教程第八章编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(8_UG二次开发实用教程第八章)的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为8_UG二次开发实用教程第八章的全部内容。

第8章工程图UG的制图模块(Drafting)为创建和管理工程图提供了一个综合的自动化工具组,使工程设计人员可以从UG三维实体模型得到完全相关的二维工程图,可生成与实体模型相关的尺寸标注,保证了工程图随着实体模型的改变而同步更新,制图模块可快速创建二维图的多个视图,包括正视图、轴测图、各种剖视图、辅助视图和局部放大视图等.制图的一般过程如下:进行制图的参数预设置,创建图纸,插入视图,插入符号,标注尺寸,插入表面粗糙度,文字注释、标题栏、明细栏和填写技术要求等。

本章介绍如何利用UF函数实现制图参数的预设置、创建图纸、插入和编辑视图、添加尺寸、辅助文本等相关的制图功能。

工程图的UF函数定义主要包含在头文件uf_drf.h 和uf_draw。

h中,其中在头文件uf_drf.h中主要包括制图的符号、标注、尺寸等函数的定义,在头文件uf_draw。

h中主要包括制图时的创建及查询截面线和视图函数与类型的定义。

8.1 工程图的设置在创建工程图前,应预先设置工程图的有关参数。

工程图的参数预设置包括:系统制图参数预设置,视图显示参数预设置,注释与符号预设置等内容。

在UG系统中可以从三个方面对工程图的应用参数进行预设置:1.客户缺省文件。

通过ug_metric.def 或 ug_English。

def 文件预设置相应的参数,这部分内容通常由系统管理员按国标和企标统一标准来设定;2。

UG二次开发教程

UG二次开发教程

UG二次开发教程编写:王作雨1。

建立两个目录。

建立第一个目录 E:\my_first_UG,在这个目录下建立两个新的目录:E:\my_first_UG\application和E:\my_first_UG\startup。

建立第二个目录E:\my_source,用存放你的源代码。

2。

设置环境变量。

再Windows中设置一个新的环境变量:UGII_USER_DIR=E:\my_first_UG。

3。

打开UG,进入UIStyler应用(在Application菜单的最后)。

4。

设计一个对话框。

1)在"Dialog Title"一栏填入:First Dialog,按Apply(每次输入完成后,都要按Apply,为避免啰嗦,以后不再提及)。

2)在"Cue"一栏输入:%……%¥%¥¥##*%*(*(*—*—((,什么都行,呵呵。

3)在"Prefix Name"中,把CHANGE改为MY。

4)加入四个控件。

String,Push Button,Label和Single Select List编辑对话框的各个控件。

1)改变String控件的标题,标识和长度。

Label “String” -> “Input an item”.Identifier "STR_0" -> "ITEM"Width in... 0 -> 202) 改变Push Button控件的标题,标识和回调函数的名字。

Label "Push Button" -> "Import"Identifier "ACTION_1" -> "IMPORT"callbacks "action_1_act_cb" -> import_cb把"Creates Dialog"激活。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3. UG 二次开发流程
UG 二次开发流程如下:
1.选择NX6开发模板 2.设置开发环境 3.添加引用连接 4.编写代码 5.调试 6.添加快捷图标
3. UG 二次开发流程
3.1.选择NX6开发模板
在VB开发环境选择 NX6的二次开发模 板,设置名称,选 择位置,设置解决 方案名称。注意这 些名称最好是英文, 便于UG调试,因为 UG暂时不支持中文。
UG二次开发培训
——基于的UGNX6.0二次开发基础
陶剑 2011年9月
/item.htm?id=14679405989
目录
1Байду номын сангаас UG二次开发简介 2. 软件的安装与设置
3. UG 二次开发流程 4. 一个简单开发实例
3. UG 二次开发流程
3.2 设置开发环境(1)
单击“确定” 后进入应用设 置界面, 将”USE APIs” 的两个勾都勾 上。
3. UG 二次开发流程
3.2 设置开发环境(2)
单击“NEXT” 后进入接入点 设置界面,选 择图示的接入 和退出方式。
3. UG 二次开发流程
软件的安装与设置
2.2 安装
软件的安装与设置
2.3 设置(1)
初次启动弹出默认 环境设置,如右图 所示,选择VB开发 设置即可。
软件的安装与设置
2.3 设置(2)
默认环境VB并不支持直接进行UG二次开发,需要将 UG二次开发模板导入到VB的开发环境中。
1. UG二次开发简介
1.2 UG二次开发的意义
出错
效率
软件的安装与设置
2.1 简介
从VB6.0以后VB不再提供单独的安装包安装, 而是和VC,VC++,VJ#一起集成在基于统一的.NET 平台的Visual Studio一起发布,我们将要使用性能 比较稳定的 Visual Studio 2005CHS版本 对UG NX6.0进行二次开发。
3.3 添加引用连接(1)
单击”FINISH” 后进入编程模 块界面,但此 时的编程模块 有两个错误 (VB有错误会 在出错的地方 出现波浪线, 类似于WORD) 需要改正。
3. UG 二次开发流程
3.3 添加引用连接(2)
双击”My Project” 选择引用,NX6的 四个库函数引用 错误,需要重新 定向。
3. UG 二次开发流程
3.6 添加快捷图标(2)
在startup文件夹中新建TXT文件,添加格式如下的文本,保存后将文 件后缀改为TBR,注意文本所指文件必须存在,且和你开发的DLL文 件一致。
4. 一个简单开发实例
本实例开发的功能是读取所选操作的程序名,加工刀具和 加工余量三个参数,在编程界面添加如下代码:
软件的安装与设置
2.3 设置(3)
打开UG安装目录,复制VB开发模板文件夹。
软件的安装与设置
2.3 设置(4)
将VB开发模板文件夹粘贴到Visual Studio安装目录下。
软件的安装与设置
2.3 设置(4)
再次打开VB开发环境,即有了NX6的二次开发模板了。
4. 一个简单开发实例
Sub Main()下添加如下代码:
Try '获取选择的操作数 tufs.UiOnt.AskSelectedNodes(mcount, mytag) If mcount = 0 Then MsgBox("未选择加工操作!", MsgBoxStyle.OkOnly, "提示") Exit Sub End If '获取操作名称 tufs.Oper.AskNameFromTag(mytag(0), toolpathname) '获取加工刀具 Dim tooltag As NXOpen.Tag '定义刀具标记 tufs.Oper.AskCutterGroup(mytag(0), tooltag) tufs.Obj.AskName(tooltag, toolname) '获取加工余量 tufs.Param.AskDoubleValue(mytag(0), NXOpen.UF.UFConstants.UF_PARAM_STOCK_PART, stock) '输出结果 MsgBox("您选择的操作参数如下:" + Chr(13) + _ "程序名:" + toolpathname + Chr(13) + _ "刀具: " + toolname + Chr(13) + _ "余量: " + stock.ToString + Chr(13), MsgBoxStyle.OkOnly, "提示") Catch ex As Exception MsgBox(ex) End Try
1. UG二次开发简介
1.1 UG二次开发简介
二次开发是在软件原有功能基础上进行的对软件功能 的针对性扩充改造,以满足不同用户对特定功能的要求。 如UG原本不具备批量设置程序参数,二次开发就能实现这 一功能。二次开发的前提是软件提供了二次开发的接口和 相应的功能函数。目前在UG上应用得比较成功的通用性的 二次开发主要有华中科技大学CAD/CAM国家重点实验室和 UGS公司合作开发的级进模向导。再有就是一些在建模和 编程上用的一些小型外挂,如东创,进玉电极外挂等。由 于二次开发的针对性较强,这样其通用性往往会受到不同 程度的限制。
3. UG 二次开发流程
3.3 添加引用连接(3)
选择如图所 示的定向目 录,注意: 目录定向完 成后,不要 选择复制引 用的库文件, 否则会造成 使用麻烦。
3. UG 二次开发流程
3.4 编写程序代码
3. UG 二次开发流程
3.5 程序调试(1)
3. UG 二次开发流程
在Module Module1下定义如下变量: Dim ts As Session = Session.GetSession() Dim tui As UI = UI.GetUI() Dim tufs As UFSession = UFSession.GetUFSession() Dim mytag() As NXOpen.Tag '选择的加工操作标记 Dim mcount As Integer '选择的加工操作数量 Dim toolpathname As String '定义选择的第一个加工操作的名称 Dim toolname As String '定义选择的第一个加工操作的刀具名称 Dim stock As Double '选择的第一个加工操作的加工余量
3.5 程序调试(2)
3. UG 二次开发流程
3.5 程序调试(3)
3. UG 二次开发流程
3.6 添加快捷图标(1)
将插件添加到UG功能区,在D盘新建一个包含application 和startup文件 夹的目录TOOL,并新建环境变量UGII_USER_DIR=D:\TOOL
4. 一个简单开发实例
本实例运行效果如图:
相关文档
最新文档