UG二次开发常用函数 下载本文

UF_PART_ask_part_history() 查询部件文件的历史 UF_ATTR_ask_part_attribute() 获取部件属性对象的标识

UF_OBJ_cycle_objs_in_part() 根据指定的类型遍历部件中的所有对象

2.UF对象

UG 中的对象如特征、实体、草图等都有明确的函数与其对应,在uf_o

bject_types.h

头文件中这些对象都被定义为相关的类型,要对这些对象进行操作,获取其标识,一个重 要的函数就是UF_OBJ_cycle_objs_in_part()。

(1)如果已知一个对象的标识,可以使用UF_OBJ_ask_type_and_subtype()函数来查询其类型和子类型

(2)有的UF对象不仅从属于某种类型,有可能还从属于该类型下的子类型

例如:UF_circle_type 类型对象的子类型包括:UF_circle_open_subtype 开放圆子类型; UF_circle_closed_subtype 闭合圆子类型;

UF_sketch_ref_circle_subtype 草图参考圆子类型 (3)对象的状态有四种:被删除状态 UF_OBJ_DELETED 临时状态 UF_OBJ_TEMPORARY 不正常状态 UF_OBJ_CONDEMNED 激活状态 UF_OBJ_ALIVE。

对象的状态可以使用函数UF_OBJ_ask_status()来进行查询。

UF_OBJ_set_layer() 修改对象所在的图层 UF_OBJ_set_color() 修改对象的颜色 UF_OBJ_set_line_width() 修改对象的线宽

UF_OBJ_set_blank_status() 修改对象的Blank 状态 UF_OBJ_set_font() 修改对象的线型

UF_DISP_set_highlight() 切换对象的高亮显示状态

UF_OBJ_is_type_displayable() 可以检测该类型UF 对象是否属于可显示的UF 对象 UF_OBJ_ask_display_properties() 判断对象的颜色、层、Blank 状态、线型和线宽是否能够设置

3.表达式

UF_MODL_create_exp() 创建表达式

UF_MODL_create_exp_tag() 创建表达式,并获得新创建的表达式的标识(tag) UF_MODL_dissect_exp_string() 分解表达式,返回表达式的名称、值和标识 UF_MODL_ask_exp() 根据表达式的名称获取整个表达式

UF_MODL_eval_exp() 根据表达式的名称计算表达式的值,输出一实数值 UF_MODL_edit_exp() 用新的值替换表达式中的原有值, 使用该函数后注意调用函数

UF_MODL_update() 更新模型

UF_MODL_ask_exps_of_part() 根据部件标识获取部件中所有表达式的数量,以及部件中所有表达式标识的数组

UF_MODL_ask_exps_of_feature() 根据特征标识获取特征中所有表达式的数量,以及特征中所有表达式标识的数组

UF_MODL_ask_exp() 根据表达式的名称获得表达式的“名称-数值”对 UF_MODL_ask_exp_tag_string() 根据表达式的标识获得表达式的“名称-数值”对 UF_MODL_ask_exp_tag_value() 根据表达式的标识获得表达式的数值 UF_MODL_eval_exp() 根据表达式的名称计算表达式的数值

UF_MODL_ask_exp_desc_of_feat()根据特征标识获取特征中所有表达式的数量,特征中所有表达式标识的数组,以 及各个表达式的描述

UF_MODL_ask_descriptor_of_exp() 根据表达式标识获取

该表达式的描述

UF_MODL_dissect_exp_string() 根据表达式的“名称-数值”对,获取表达式的LHS、RHS 和表达式的标识

UF_MODL_edit_exp() 根据输入的表达式的“名称-数值”对,修改表达式,当表达式被修改后,使用

函数UF_MODL_update()更新模型

UF_MODL_rename_exp() 根据输入的表达式的旧名称与新名称修改表达式的名称

------------------------------------------------------------------------------------------------------------------ 2,《菜单文件》

菜单文件默认情况下都保存在UGII_BASE_DIR/ugii/menus 文件夹下。

ug_main.men UG 主菜单栏的菜单文件 ug_view_popup.men UG 快捷菜单文件

ug_cam.men 进入加工应用模式后,为菜单栏添加相应按钮的菜单文件 ug_drafting.men 进入制图应用模式后,为菜单栏添加相应按钮的菜单文件 ug_mechanisms.men 进入运动分析应用模式后,为菜单栏添加相应按钮的菜单文件 ug_modeling.men 进入建模应用模式后,为菜单栏添加相应按钮的菜单文件 ug_smd.men 进入钣金→成型/压平应用模式后,为菜单栏添加相应按钮的菜单文件

------------------------------------------------------------------------------------------------------------------

3《UG 信息窗口》

UG 信息窗口是指在UG 环境下显示的一个文本框,在应用开发过程中通常用于显示计算结果

UF_UI_open_listing_window() 打开信息窗口

UF_UI_write_listing_window() 将文本写入信息窗口

UF_UI_save_listing_window() 将信息窗口中的文本保存到文本文件中 UF_UI_close_listing_window() 关闭信息窗口

UF_UI_exit_listing_window() 清除信息窗口中的内容,退出信息窗口 UF_UI_is_listing_window_open() 查询信息窗口是否打开

UF_UI_create_part() 显示“创建新部件文件”对话框,创建一个部件并设置其为工作部件,功能与UG 下拉

菜单【文件】→【新建】相同

UF_UI_open_part() 显示“打开部件”对话框,打开一个部件并设置其为工作部件,功能与UG 下拉菜单

【文件】→【打开】相同

UF_UI_create_filebox() 显示用于选择文件的对话框,目的在于获取用户选择文件的全路径

------------------------------------------------------------------------------------------------------------------ 4 《部件文件的基本操作》

部件文件的打开操作主要使用函数 UF_PART_open( )、UF_PART_open_quiet( )和 UF_PART_reopen( )

部件文件的保存可使用 UF_PART_save ( )、UF_PART_save_all( )和UF_PART_save_as( )

关闭部件文件 UF_PART_close( )用于关闭指定的部件, UF_PART_close_all( )用于关闭当

前进程中的所有部件

UF_PART_import( ) 用于从磁盘中将UG NX 部件或Solid Edge 部件导入到当前的工作部件中 UF_PART_export( ) 用于将指定的对象(objects)导出到指定的部件,对象被复制到目标部件中

UF_PART_ask_num_parts( ) 用于返回当前进程中被打开的部件文件的数量, UF_PART_ask_nth_part( ) 用于获取进程中第n 个部件的标识, 数UF_PART_ask_families( ) 用来获取部件中部件族的标识

UF_FAM_ask_family_data( ) 用于获取族表的数据,该函数的输入参数是族表标识 UF_FAM_ask_attribute_data( )用于获取族表属性的数据 UF_FAM_ask_member_column_data( ) 用于获取族表列信息 UF_FAM_ask_member_row_data( ) 用于获取族表行信息 UF_FAM_edit_member( ) 用于编辑族表成员的数据

UF_FAM_evaluate_intent_data( ) 用于计算意图数据(intent data),返回满足要求的族表成员

UF_PART_apply_family_instance() 用于应用成员的属性值到族表部件 UF_ASSEM_set_instance_intent( ) 用于在装配环境下设置意图数据 UF_ASSEM_eval_instance_intent( ) 用于计算装配实例的意图数据

UF_MODL_ask_minimum_dist_2 //查询两物体间距离

UF_VEC3_cross //单位化向量 所谓单位化就是保持其方向不变,将其长度化为1

UF_is_initialized //检查C API环境已成功打开,初始化 UF_CFI_ask_file_exist //检查目录文件是否存在 UC1616 //点构造器

UF_ASSEM_add_part_to_assembly //将零件模型导入到当前对话框返回模型名称和加载状态等信息

uc4574 //获取文件名不带路径和后缀

UF_ATTR_ask_part_attrs_in_file //从一个未打开的部件文件中读取所有的部件属性

API拾取向量对话框通过函数UF_UI_specify_vector调用 其原型如下:

int UF_UI_specify_vector (

char* message, int* mode,

int display_conehead, double direction[3], double origin[3], int*response );

1,第一个参数显示提示消息

2,第二个参数是拾取模式,可以是如下值: UF_UI_INFERRED UF_UI_TWO_POINTS UF_UI_AT_ANGLE UF_UI_EDGE_CURVE

UF_UI_TANGENT_TO_CURVE UF_UI_FACE_NORMAL UF_UI_DATUM_PLANE UF_UI_DATUM_AXIS UF_UI_XC_AXIS

UF_UI_NEGATIVE_XC_AXIS UF_UI_YC_AXIS

UF_UI_NEGATIVE_YC_AXIS