今天是国庆节,放假休息懒得动,没有出去玩,在家研究一下发射线函数UF_MODL_trace_a_ray.小弟以前在软件公司混的时候,当时我做的那个项目就用到了UF_MODL_trace_a_ray,当时为了赶项目,从别处抄了代码,改吧改吧.自己也没有仔细的去研究一下这个函数的用法.UF_MODL_trace_a_ray在NX二次开发中算是一个用到比较高频的函数,今天研究了一下,写了一道例题,UFUN和NXOpen C++简单混合去用了一下,大致介绍下函数的用法.如有错误,还请各位前辈多多指教小弟…
NX9+VS2012 //NX二次开发中常用拉伸函数为UF_MODL_create_extruded2,但是此函数不能拉伸片体, //想要拉伸片体用函数UF_MODL_create_extruded. #include <uf.h> #include <uf_curve.h> #include <uf_modl.h> #include <uf_obj.h> UF_initialize(); //创建直线1 UF_CURVE_line_t LineCoords…
NX9+VS2012 //NX二次开发中常用拉伸函数为UF_MODL_create_extruded2,但是此函数不能拉伸片体, //想要拉伸片体用函数UF_MODL_create_extruded. #include <uf.h> #include <uf_curve.h> #include <uf_modl.h> #include <uf_obj.h> UF_initialize(); //创建直线1 UF_CURVE_line_t LineCoords…
用户出口(User Exit)是NX Open 中的一个重要概念.NX在运行过程中某些特定的位置存在规定的出口,当进程执行到这些出口时,NX会自动检查用户是否在此处已定义了指向内部程序位置的环境变量:若没有定义,则以NX默认的方式继续运行下去:若已定义,则从该处自动运行用户定制的应用程序.利用不同的User Exit,可使用户定制的应用程序在NX运行到特定点时被自动执行.每个User Exit 都有唯一的出口名称,以便用户在子程序中调用,不同的 User Exit使用不同的出口函数,最常用的 U…
用户出口(User Exit)是NX Open 中的一个重要概念.NX在运行过程中某些特定的位置存在规定的出口,当进程执行到这些出口时,NX会自动检查用户是否在此处已定义了指向内部程序位置的环境变量:若没有定义,则以NX默认的方式继续运行下去:若已定义,则从该处自动运行用户定制的应用程序.利用不同的User Exit,可使用户定制的应用程序在NX运行到特定点时被自动执行.每个User Exit 都有唯一的出口名称,以便用户在子程序中调用,不同的 User Exit使用不同的出口函数,最常用的 U…
UF_CSYS_map_point用来变换点的坐标,比较简单且实用.例如工作坐标系与绝对坐标系转换,一个部件的坐标与另一个部件坐标系之间的转换.下面的例子是在三个坐标下创建三个点相对坐标为{10,50,100}; 下面是UF_CSYS_map_point函数用到的三个坐标系的参数: //根部件的绝对坐标系 #define UF_CSYS_ROOT_COORDS 1 //工作部件的绝对坐标系 #define UF_CSYS_WORK_COORDS 2 //根部件的工作坐标系 #define UF_…
NX9+VS2012 #include <uf.h> #include <uf_modl.h> UF_initialize(); //计时开始 UF_timer_t Timer; UF_begin_timer(&Timer); //创建块 UF_FEATURE_SIGN sign = UF_NULLSIGN; ] = { 0.0, 0.0, 0.0 }; ] = { " }; tag_t blk_obj_id = NULL_TAG; UF_MODL_create_…
1 NX9+VS2012 2 3 #include <uf.h> 4 #include <uf_modl.h> 5 6 7 UF_initialize(); 8 9 //计时开始 10 UF_timer_t Timer; 11 UF_begin_timer(&Timer); 12 13 14 //创建块 15 UF_FEATURE_SIGN sign = UF_NULLSIGN; 16 double corner_pt[3] = { 0.0, 0.0, 0.0 }; 17…
NX11+VS2013 #include <uf.h> #include <uf_obj.h> #include <uf_modl.h> #include <uf_part.h> UF_initialize(); //方法1:UF_OBJ_cycle_objs_in_part std::vector<tag_t> SolidVector; tag_t ObjectTag = NULL_TAG; int Type, SubType, Body_Ty…
NX11+VS2013 #include <uf.h> #include <uf_obj.h> #include <uf_modl.h> #include <uf_part.h> UF_initialize(); //方法1:UF_OBJ_cycle_objs_in_part std::vector<tag_t> SolidVector; tag_t ObjectTag = NULL_TAG; int Type, SubType, Body_Ty…