甘肃省建设厅安全员官方网站,甘肃省建设厅查行网站,携程特牌 的同时做别的网站,优秀的wordpress涉及1.NXOpen C 的函数函数名称的约定NX Open C 共有2类名称约定#xff1a;一个是标准的NX Open C 的函数名称约定#xff1b;另一个是以前版本的原有的名称约定。1.标准名称约定【格式】UF__【说明】(1)UF:User Funciton的简写#xff0c;表示该函数为NX Open C 函数。(2)一个是标准的NX Open C 的函数名称约定另一个是以前版本的原有的名称约定。1.标准名称约定【格式】UF__【说明】(1)UF:User Funciton的简写表示该函数为NX Open C 函数。(2)应用或模块的名称缩写。例如MODL和DISP分别是Modeling模块和Display功能的名称缩写。(3)表示其实现功能的语言描述一般由下划线分开的动词和名词(或词组)组成。常用的动词由ask(查询)、create(创建)、edit(编辑)、set(设置)、delete(删除)等。例如UF_MODL_create_block1() 为创建块的函数UF_DISP_set_highlight()为高亮显示对象的函数。【格式】uc和uf【说明】代表NX Open C 函数通常为4位数或3位数接一个字母。例如uc1601位一个提示信息函数。-----------------------------------------------------------------------------------------------------------------------------------函数参数的约定NX Open C 提供的函数遵守ANSI/ISO C的标准。并以下列格式在头文件中提供函数原型 (变量列表)返回数据类型通常是C语言数据类型或NX Open C自定义数据类型。参数的输入输出方式有3种分别为I(Input)、O(Output)和OF(Output Free)具体说明见表。参数输入方式说明元素描述I表示参数为输入方式参数在使用前必须赋值O表示参数为输出方式使用前无须赋值OF表示参数为输出方式切使用后需要释放内存。NX Open 提供的常用释放内存函数有UF_free()、UF_free_string()和UF_STYLER_free_value()等至于选择哪种释放函数需视具体情况而定例如函数UF_PART_open()的相关信息如下【名称】UF_PART_open【使用环境】Internal External【语法格式】int UF_PART_open(char *part_nametag_t *partUF_PART_load_status_t *error_status )【描述】加载一个NX部件文件到NX的交互环境中并把它设为工作部件和当前显示部件该函数的描述见表。函数UF_PART_open参数描述2.NX Open C 的数据类型除了C语言标准的数据类型外NX Open C还提供了一些自定义的数据类型如tag_t类型、结构类型(Structure Type)、枚举类型(Enum Type)、联合类型(Union Type)与指针类型(Pointer Type)等它们统一用后缀“_t”表示且这些数据类型的指针用后缀“_p_t”命名表示。数据类型约定如表所示后缀描述_t数据类型_p_t数据类型的指针_s结构类型_e枚举类型_u联合类型_f_t函数指针tag_t 类型NX Open C 使用最多的数据类型是tag_t在“%UGII_BASE_DIR%\ugopen”目录下文件uf_defs.h中定义如下typedef unsigned int tag_t *tag_p_t在NX环境中tag_t是NX对象的句柄即任何确定存在的NX对象的唯一标识。它是一种不重复的无符号整型数值主要用于标识应用程序中的对象如部件、特征、草图、曲线、属性和表达式导等。NX应用程序只能访问句柄而不能直接访问句柄所指示的实际对象。应用程序一般通过调用API函数获取句柄并且在其他API函数中使用这个句柄以引用它指示的对象在此过程中句柄的实际值对程序来说是无关紧要的。NULL_TAG是用来表示暂时不标识任何对象的Tag相当于初始值为零。此外tag_p_t是指向tag_t数据类型的指针。以部件对象为例下面的代码首先获取工作部件的tag_t值然后获取该句柄所引用部件对象的文件名tag_t tWorkPart;char cPartName[128];tWorkPart UF_ASSEM_ask_work_part();UF_PART_ask_part_name(tWorkPart, cPartName);结构类型NX Open C 采用C语言的语法定义了一些常用的结构类型将相关的不同类型数据封装在一起使用这些结构类型用后缀“_s”表示。例如struct UF_STYLER_item_id;{int reason;const char *item_id;int subitem_index;int count;int item_attr;int indicator;UF_STYLER_value_t value;}Typedef struct UF_STYLER_item_value_type_s UF_STYLER_item_value_type_t,*UF_STYLER_item_value_type_p_t;结构体UF_STYLER_item_value_type_s封装了UI Styler对话框控件的基本属性如reason、item_id和value等。NX Open 使用关键字typedef将该结构类型定义为新类型UF_STYLER_item_value_type_t用户可以使用它定义结构变量然后引用结构体内的数据成员。例如UF_STYLER_item_value_type_t dataUF_STYLER_ask_value(dialog_id, data)...UF_STYLER_free_value(data)枚举类型枚举类型将变量的值一一列举出来变量的值只限于所列举的范围。NX Open C 采用C语言的语法定义了一些常用的枚举类型使用后缀“_e”表示。以枚举类型UF_ASSEM_load_status_e为例下面给出其详细定义enum UF_ASSEM_load_status_e{UF_ASSEM_ok,UF_ASSEM_suppressed,UF_ASSEM_not_loaded,UF_ASSEM_instance_suppressed};typedef enum UF_ASSEM_load_status_e UF_ASSEM_load_status_t;枚举类型 UF_ASSEM_load_status_e 表示部件在装配体中的状态。NX Open C 使用typedef关键字将该枚举类型定义为新类型UF_ASSEM_load_status_t例如char sPartPath[] E:\\Example\\part.prt;tag_t tPart NULL_TAG;UF_ASSEM_load_status_t error_status;UF_PART_open(sPart, tPart, error_status);联合类型有时候需要将不同数据类型的变量放在同一段内存单元中这种使不同变量占用同一段内存的结构类型称为联合类型。联合类型与结构类型的定义形式相似但含义不同。联合类型变量所占的内存长度等于其内部最长数据成员的长度而结构类型变量所占的内存长度则是其各数据成员所占内存长度之和。NX Open C 采用C语言的语法定义了一些常用的联合类型使用后缀“_u”表示。以联合类型UF_STYLER_value_u为例下面给出其详细定义union UF_STYLER_value_u{char *string;char **strings;int integer;int *integers;double real;double *reals;UF_UI_selection_p_t selection;UF_STYLER_notification_p_t notify;UF_UI_attachment_t attach;UF_UI_option_toggle_t option_tiggle;};typedef union UF_STYLER_value_u UF_STYLER_value_t;联合体UF_STYLER_value_u 封装了UI Styler 对话框对话框控件的属性如string、integer和real等。NX Open 使用typedef关键字将该联合类型定义为新的类型UF_STYLER_value_t它是UF_STYLER_item_value_type_t中的数据成员value的类型例如UF_STYLER_item_value_type_t datadouble rValuesel_data.item_id REAL_BUTTOM_DIAMETER;UF_STYLER_ask_value(dialog_id, sel_data);rValue data.value.real;NX二次开发技术专栏NX二次开发技术专栏【持续更新】点击进入专栏更多NX二次开发内容NX二次开发-数据类型结构及类型转换博客目录【持续更新】点击进入目录NX二次开发-UFUN API函数例子博客目录【持续更新】点击进入目录NX二次开发-Block UI控件的获取例子博客目录【持续更新】点击进入目录NX二次开发-算法应用博客目录【持续更新】点击进入目录