NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_ui.h> UF_initialize(); //获取建模的长度公差 double Tolerance; UF_MODL_ask_distance_tolerance(&Tolerance); //转换 ]; sprintf_s(msg, "%f", Tolerance); //打印 uc1601(msg, ); UF_t…
NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_ui.h> UF_initialize(); //获取建模的角度公差 double Tolerance; UF_MODL_ask_angle_tolerance(&Tolerance); //转换 ]; sprintf_s(msg, "%f", Tolerance); //打印 uc1601(msg, ); UF_term…
文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: 在UFUN里面没有直接的函数: 思路就是: .先将工程图转换为cgm .调用系统的cgm2pdf.exe工具,将上一步转换的cgm再转成PDF格式: 以下是我写的一个例子.大家可以拿一个工程图测试以下代码,最后会在C盘生成tkl.cgm与tkl.pdf两个文件. #include <uf.h>…
文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: 在UFUN里面没有直接的函数: 思路就是: .先将工程图转换为cgm .调用系统的cgm2pdf.exe工具,将上一步转换的cgm再转成PDF格式: 以下是我写的一个例子.大家可以拿一个工程图测试以下代码,最后会在C盘生成tkl.cgm与tkl.pdf两个文件. #include <uf.h>…
函数:UF_CSYS_ask_matrix_values () 函数说明:获取指定矩阵标识的矩阵值. 用法: #include <uf.h> #include <uf_csys.h> extern DllExport void ufusr(char *param, int *returnCode, int rlen) { UF_initialize(); //获取WCS标识 tag_t tagWCS = NULL_TAG; UF_CSYS_ask_wcs(&tagWCS);…
先选择多个对象object,然后使用此函数获取选择的对象的tag,最后就可以使用object的一些函数了. ufun例子: extern DllExport void ufusr(char *parm, int *returnCode, int rlen) { UF_initialize(); tag_t *tagObjects; int iCount = 0; UF_UI_ask_global_sel_object_list(&iCount, &tagObjects); for (int…
NX9+VS2012 #include <uf.h> UF_initialize(); UF_system_info_t Info; UF_ask_system_info(&Info); lw->Open(); lw->WriteLine(Info.date_buf);//获取当前日期和时间信息 lw->WriteLine(Info.user_name);//获取用户名 lw->WriteLine(Info.program_name);//获取NX版本 lw-&…
说明:选择一个产品面,选择面上的点,生成点在此面上的法线反向,生成直线.生成矢量的起点坐标,和矢量方向信息.可用于三坐标测量,如果需要可以自己编个插件用! 效果图: 源码: //------------------------------------------------------------------------------ //Callback Name: update_cb //-----------------------------------------------------…
NX9+VS2012 #include <uf.h> #include <NXOpen/UI.hxx> #include <NXOpen/MenuBar_MenuBarManager.hxx> NXOpen::UI *theUI = NXOpen::UI::GetUI(); UF_initialize(); //NX9只有切换到工程图模块的方法,没有获取当前模块名字的方法,所以使用UFUN的函数,混合开发. int ModuleId; UF_ask_applicatio…
NX9+VS2012 #include <uf.h> #include <uf_disp.h> #include <uf_obj.h> #include <uf_part.h> UF_initialize(); //遍历当前显示部件 tag_t NextTag = NULL_TAG; int Type1, SubType1; do { NextTag = UF_OBJ_cycle_all(UF_PART_ask_display_part(), NextTag…
NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_ui.h> #include <uf_disp.h> #include <uf_obj.h> #include <NXOpen/Annotations.hxx> UF_initialize(); //创建块 UF_FEATURE_SIGN Sign = UF_NULLSIGN; ] = {25.0, 37.0, 4…
NX9+VS2012 #include <NXOpen/Features_BlockFeatureBuilder.hxx> #include <NXOpen/Features_FeatureCollection.hxx> #include <NXOpen/NXException.hxx> #include <NXOpen/Body.hxx> #include <NXOpen/BodyCollection.hxx> #include <NXO…
NX9+VS2012 #include <uf.h> UF_initialize(); //UFUN获取环境变量路径 //将环境变量转换为字符串 char* GetName = NULL; UF_translate_variable("UGII_BASE_DIR", &GetName); //环境变量路径字符串拼接 string BaseDir1 = GetName; string BaseDir2 = "\\MODLE\\ABC.prt"; s…
NX9+VS2012 #include <uf.h> #include <uf_obj.h> #include <uf_ui.h> UF_initialize(); //遍历名字找到直线 tag_t LineTag = NULL_TAG; UF_OBJ_cycle_by_name("MAIN", &LineTag); //获取直线的两个端点 UF_CURVE_line_t LineCoords; UF_CURVE_ask_line_data(…
NX9+VS2012 #include <uf.h> #include <uf_draw.h> #include <uf_part.h> #include <uf_ui.h> UF_initialize(); //新建工程图(A4图纸) char* DrawingName = "ABC";//设置图纸名字 UF_DRAW_info_t DrawingInfo;//设置图纸大小.投影视角.视图比例等 DrawingInfo.size_sta…
NX9+VS2012 #include <uf.h> #include <uf_draw.h> #include <uf_part.h> UF_initialize(); //新建工程图(A4图纸) char* DrawingName = "ABC";//设置图纸名字 UF_DRAW_info_t DrawingInfo;//设置图纸大小.投影视角.视图比例等 DrawingInfo.size_state = UF_DRAW_METRIC_SIZE;…
#include <uf.h> #include <uf_draw.h> #include <uf_drf.h> #include <uf_obj.h> UF_initialize(); //获得当前图纸页的tag tag_t drawing_tag = NULL_TAG; UF_DRAW_ask_current_drawing(&drawing_tag); //找名字获取视图tag tag_t ViewTag = NULL_TAG; UF_OBJ_…
NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_obj.h> UF_initialize(); UF_FEATURE_SIGN Sign = UF_NULLSIGN;//设置布尔 ] = {0.0, 0.0, 0.0};//设置原点 ] = {"};//设置长宽高 tag_t BlkTag = NULL_TAG; UF_MODL_create_block1(Sign, Corner_pt…
NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_part.h> UF_initialize(); //获取当前显示部件的TAG tag_t DisplayTag = UF_PART_ask_display_part(); //输入Part的TAG,获取整个部件表达式的TAG和表达式个数 int NumberOfExps; tag_t* ExpsTag = NULL_TAG; UF_MODL_ask…
#include <uf.h> #include <uf_ui.h> #include <uf_draw.h> #include <uf_view.h> #include <uf_curve.h> UF_initialize(); //在建模里创建点 ] = { , , }; tag_t p1_tag = NULL_TAG; UF_CURVE_create_point(p1, &p1_tag); //获得图纸页tag ; tag_p_t…
NX11+VS2013 #include <uf.h> #include <uf_modl.h> #include <NXOpen/Face.hxx> #include <uf_ui.h> #include <NXOpen/NXObjectManager.hxx> #include <NXOpen/Edge.hxx> UF_initialize(); //获取选择面控件选择的对象 PropertyList* FaceSelectPro…
NX11+VS2013 #include <uf.h> #include <uf_modl.h> #include <uf_ui.h> UF_initialize(); //创建球 UF_FEATURE_SIGN Sign = UF_NULLSIGN;//设置布尔 ] = { 0.0, 0.0, 0.0 };//原点 ";//直径 tag_t SphereTag = NULL_TAG; UF_MODL_create_sphere1(Sign, Center,…
NX11+VS2013 #include <uf.h> #include <uf_modl.h> #include <uf_ui.h> UF_initialize(); //创建块 UF_FEATURE_SIGN Sign = UF_NULLSIGN;//设置布尔 ] = { 0.0, 0.0, 0.0 };//设置原点 ] = { " };//设置长宽高 tag_t BlkTag = NULL_TAG; UF_MODL_create_block1(Sign,…
NX11+VS2013 #include <uf.h> #include <uf_modl.h> #include <uf_ui.h> UF_initialize(); //创建圆柱 UF_FEATURE_SIGN Sign = UF_NULLSIGN; ] = { 0.0, 0.0, 0.0 }; "; "; ] = { 0.0, 0.0, 1.0 }; tag_t CylTag = NULL_TAG; UF_MODL_create_cyl1(Si…
NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_curve.h> #include <uf_ui.h> UF_initialize(); //创建块 UF_FEATURE_SIGN Sign = UF_NULLSIGN; ] = {0.0, 0.0, 0.0}; ] = {"}; tag_t BlkTag = NULL_TAG; UF_MODL_create_block1(S…
NX9+VS2012 #include <uf.h> #include <uf_obj.h> #include <uf_modl.h> UF_initialize(); //遍历名字找到面 tag_t FaceTag = NULL_TAG; UF_OBJ_cycle_by_name("MAIN", &FaceTag); //获取相邻的面 uf_list_p_t AdjacentFaces; UF_MODL_ask_adjac_faces(Fa…
#include <uf.h> #include <uf_modl.h> #include <uf_obj.h> UF_initialize(); //获取面的所有边 uf_list_p_t edge_list; UF_MODL_ask_face_edges(, &edge_list); //获取链表的数量 int count; UF_MODL_ask_list_count(edge_list, &count); ; i < count; i++)…
NX11+VS2013 #include <uf.h> #include <uf_ui.h> #include <uf_modl.h> #include <uf_curve.h> UF_initialize(); //点构造器 char sCue[] = "点构造器"; UF_UI_POINT_base_method_t base_method = UF_UI_POINT_INFERRED; tag_t tPoint = NULL_TAG…
1 NX11+VS2013 2 3 4 #include <uf.h> 5 #include <uf_ui.h> 6 #include <uf_modl.h> 7 #include <uf_curve.h> 8 9 10 UF_initialize(); 11 12 //点构造器 13 char sCue[] = "点构造器"; 14 UF_UI_POINT_base_method_t base_method = UF_UI_POINT_…
NX9+VS2012 #include <uf.h> #include <uf_ui.h> #include <uf_assem.h> ], void* user_data, UF_UI_selection_p_t select) { if (object == NULL) { return UF_UI_SEL_REJECT; } else { return UF_UI_SEL_ACCEPT; } } static int init_proc(UF_UI_selecti…