NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_obj.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; U…
函数: UF_MODL_ask_face_loops()  获取面的所有封闭边组合(多组edge) UF_MODL_ask_loop_list_count() 获取loop的数量(面上孔.槽的数量+1) UF_MODL_ask_loop_list_item() 获取loop成员,和成员有三种:外围=1, 孔槽=2, 其他=3,第四个参数为edge链 UF_MODL_ask_list_count()获取边链中边的数量 UF_MODL_ask_list_item()获取边链的成员 函数说明:使用UF…
函数:UF_CSYS_ask_csys_info() 函数说明:获取工作坐标系对象的标识符. 用法: #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); //获…
函数:UF_CSYS_ask_wcs() 函数说明:获取工作坐标系对象的标识. 用法: 1 #include <uf.h> 2 #include <uf_csys.h> 3 extern DllExport void ufusr(char *param, int *returnCode, int rlen) 4 { 5 UF_initialize(); 6 7 //获取WCS标识 8 tag_t tagWCS = NULL_TAG; 9 UF_CSYS_ask_wcs(&t…
NX9+VS2012 1.打开D:\Program Files\Siemens\NX 9.0\UGII\menus\ug_main.men 找到装配和PMI,在中间加上一段 TOGGLE_BUTTON LSYTOOLS LABEL 自定义工具箱 BITMAP cam_new_tool ACTIONS LSYTOOLS 2.打开D:\Program Files\Siemens\NX 9.0\UGII\menus\profiles\All\rbn_application.rtb 找到建模,在前面加上…
NX9+VS2012 1.打开D:\Program Files\Siemens\NX 9.0\UGII\menus\ug_main.men 找到装配和PMI,在中间加上一段 TOGGLE_BUTTON LSYTOOLS LABEL 自定义工具箱 BITMAP cam_new_tool ACTIONS LSYTOOLS 2.打开D:\Program Files\Siemens\NX 9.0\UGII\menus\profiles\All\rbn_application.rtb 找到建模,在前面加上…
NX9+VS2012 #include <uf.h> #include <uf_csys.h> UF_initialize(); //获取WCS标识 tag_t WcsId = NULL_TAG; UF_CSYS_ask_wcs(&WcsId); UF_terminate();…
NX9+VS2012 #include <uf.h> #include <uf_csys.h> UF_initialize(); //获取WCS标识 tag_t WcsId = NULL_TAG; UF_CSYS_ask_wcs(&WcsId); //获取坐标系信息 tag_t MatrixId = NULL_TAG; ]; UF_CSYS_ask_csys_info(WcsId, &MatrixId, CsysOrigin); UF_terminate();…
NX9+VS2012 #include <uf.h> #include <uf_csys.h> UF_initialize(); //获取WCS标识 tag_t WcsId = NULL_TAG; UF_CSYS_ask_wcs(&WcsId); //获取坐标系信息 tag_t MatrixId = NULL_TAG; ]; UF_CSYS_ask_csys_info(WcsId, &MatrixId, CsysOrigin); //获取矩阵值 ]; UF_CSYS…
UF_initialize(); //遍历所有尺寸 ; tag_t DimTag = NULL_TAG; UF_OBJ_cycle_objs_in_part1(UF_PART_ask_display_part(), UF_dimension_type, &DimTag);//遍历所有尺寸 while (DimTag != NULL_TAG) { //获取尺寸的值 ;//尺寸的类型 ];//原点坐标 UF_DRF_dim_info_p_t dim_info; UF_DRF_ask_dim_info…
#include <uf.h> #include <uf_drf.h> #include <uf_obj.h> #include <uf_part.h> #include <uf_ui.h> UF_initialize(); //遍历所有尺寸 ; tag_t DimTag = NULL_TAG; UF_OBJ_cycle_objs_in_part1(UF_PART_ask_display_part(), UF_dimension_type, &a…
#include <uf.h> #include <uf_ui.h> #include <uf_part.h> #include <atlstr.h> #include <iostream> #include <sstream> using namespace std; UF_initialize(); UF_UI_open_listing_window(); //获取当前part所在路径 ]; UF_PART_ask_part_na…
1 extern "C" DllExport void ufusr(char *param, int *retcod, int param_len) 2 { 3 4 if (UF_initialize()) 5 { 6 /* Failed to initialize */ 7 return; 8 } 9 // The following method shows the dialog immediately 10 11 AFX_MANAGE_STATE(AfxGetStaticModu…
NX9+VS2012 #include <uf.h> #include <uf_ui.h> #include <uf_vec.h> #include <uf_curve.h> UF_initialize(); //创建直线1 UF_CURVE_line_t LineCoords1; LineCoords1.start_point[] = 0.0; LineCoords1.start_point[] = 0.0; LineCoords1.start_point…
函数: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);…
函数:UF_CSYS_ask_wcs() 函数说明:通过3x3矩阵获取XYZ轴矢量 用法: 1 #include <uf.h> 2 #include <uf_mtx.h> 3 extern DllExport void ufusr(char *param, int *returnCode, int rlen) 4 { 5 UF_initialize(); 6 7 double douMatrixValues[9] = {1,0,0,0,1,0,0,0,1}; 8 double dV…
UF公共类型 UF_begin_timer计时函数 https://www.cnblogs.com/nxopen2018/p/10957135.html UF_end_timer计时函数 https://www.cnblogs.com/nxopen2018/p/11099462.html UF_initialize初始化 https://www.cnblogs.com/nxopen2018/p/10952538.html UF_terminate终止  https://www.cnblogs.c…
函数:UF_CSYS_create_csys() . UF_CSYS_create_temp_csys() 函数说明:创建坐标系 .创建临时坐标系 用法: #include <uf.h> #include <uf_csys.h> extern DllExport void ufusr(char *param, int *returnCode, int rlen) { UF_initialize(); //通过数组创建矩阵 const double douMatrixValues[9…
说明:移动WCS坐标系 用法: #include <uf.h> #include <uf_csys.h> extern DllExport void ufusr(char *param, int *returnCode, int rlen) { UF_initialize(); //移动WCS,到点 couCsysOrigin2 double couCsysOrigin2[3] = { 10,10,10 }; //获取当前WCS标识 tag_t tagWCS = NULL_TAG;…
NX二次开发API里没有对EXCAL读写操作的相关函数,市面上有很多种方法去实现,比如UFUN调KF,ODBC,OLE(COM组件)等等.这里我是用的OLE(COM组件)方式去做的,这种在VC上创建的方法,无论C++还是C#还是VB方式思路都是一样的.先介绍用MFC去做,然后在写一篇博客介绍怎么在NX的二次开发的向导模板里去做.NX二次开发-基于NX开发向导模板的NX对Excel读写操作(OLE方式(COM组件))https://ufun-nxopen.blog.csdn.net/article…
文章转载自唐康林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>…
先选择多个对象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…
在写这篇文章的时候,我正在头晕,因为下班坐车回家,有些晕车了.头疼的要死.也吃不下去饭. 版本:NX11+VS2013 最近这一年已经由C++过度到C#,改用C#做应用程序开发和NX二次开发. C#在做复杂界面开发的时候,WinFrom要比MFC简单的多(这个时候纯BlockUI已经满足不了集成功能的复杂界面需求了),数据库连接也简单. 言归正传 在我经过一段时间的看QQ群别人讨论技术,给了我点启发,以及带着兴趣百度到了一些相关资料.学会了这种方法. 1.有需求 在用C#做NX二次开发的时候,我…
在看这个博客前,请读者先去完整看完:NX二次开发-基于MFC界面的NX对Excel读写操作(OLE方式(COM组件))https://ufun-nxopen.blog.csdn.net/article/details/88922030 这篇博客,要不然你听不懂我下面在说什么. 版本NX11+VS2013+office2016 首先我们通过NX开发向导创建了一个模板. 先把项目属性改成多字节.下面我们把前面做的MFC项目里的几个EXCAL头文件和stdafx一块拷过来,加到NX的项目里. 在NX的…
打开VS2013 点击新建,选择MFC DLL 点击确定 点下一步 什么都不改,直接点完成 进来之后先编译一下,看是否编译成功 打开项目属性,更改这几处 $(UGII_BASE_DIR)\ugopen libufun.lib libufun_cae.lib libufun_cam.lib libufun_die.lib libufun_vdac.lib libufun_weld.lib libnxopencpp.lib libnxopencpp_annotations.lib libnxopen…
半年前在一些QQ群看到有大神NX二次开发做出了进度条,那个时候我还不会弄,也不知道怎么弄得,后来断断续续得研究了一下,直到今天我把它做出来了.内心还是很喜悦的!回想自己这两年当初从没公司肯给我做NX二次开发的机会,在到去专业NX二次开发公司上班又混不下去,最后去干画图仔,但我没放弃这行,每晚坚持那份热爱,现在技术也终究有了些进步了.[如果有写得不对的地方,各位可以给我留言批评指正] 先上两张图片 将MFC进度条嵌套在NX窗口左下角 将MFC进度条嵌套在BlockUI对话框里 ----------…
每当提起UDO总是会让我想起大专毕业那会失业找工作,后来有个宝贵机会去了软件公司上班,拿到了我人生中的第一个NX二次开发项目,一个关于测量汽车前后左右摄像头的项目.当时那个项目就用到了UDO,对于只看了两个月唐康林工程师二次开发视频教程就跑出来找工作的我,显然是不会UDO的,后来采用了将handle值写到部件属性里,然后每次打开工具对话框前先去部件属性里读,在给到对话框里.在然后项目没做完我就特么滚蛋了. 时隔差不多两年,以前技术底子太差,好多东西都不懂,直到最近我对UDO才有了一些认知了解,会…
NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_obj.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; U…
NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_obj.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; U…