NX9+VS2012 #include <uf.h> #include <uf_curve.h> #include <uf_csys.h> #include <uf_mtx.h> UF_initialize(); //创建向量方向 ] = { 10.0, 23.5, 75.8 }; //3*3矩阵,输入Z向量,得到矩阵 ]; UF_MTX3_initialize_z(Vec, Mtx); //创建矩阵 tag_t MatrixTag = NULL_TAG;…
NX11+VS2013 #include <uf.h> #include <uf_curve.h> #include <NXOpen/CurveCollection.hxx> #include <NXOpen/NXObject.hxx> #include <NXOpen/Part.hxx> #include <NXOpen/PartCollection.hxx> NXOpen::Session *theSession = NXOpen…
NX9+VS2012 #include <uf.h> #include <uf_curve.h> UF_initialize(); //起点 ]; ArcStartPoint[] = 0.0; ArcStartPoint[] = 0.0; ArcStartPoint[] = 0.0; tag_t ArcStartPointTag = NULL_TAG; UF_CURVE_create_point(ArcStartPoint, &ArcStartPointTag); //终点…
函数: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…
这篇文章,我在CSDN,在唐工论坛都发过.http://www.nxopen.cn/forum.php?mod=viewthread&tid=2039&highlight=NX9 博客园作为我技术博客的大本营,还是在发一遍吧.做个存档. NX9+VS2012 此方法应该适用于NX10以下的版本,NX6-NX9应该都是可以的,我只测试了NX9,其他版本是否可以大家可以测试一下. 做NX二次开发的兄弟应该都知道从NX10开始UGOPEN下的vs_files里的开发向导模板有两个,一个OPEN的…
NX9+VS2012 #include <uf.h> #include <uf_curve.h> #include <uf_modl.h> UF_initialize(); //圆心点 ] = {0.0, 0.0, 0.0}; tag_t CenterTag = NULL_TAG; UF_CURVE_create_point(p1, &CenterTag); //辅助点 ] = {100.0, 0.0, 0.0}; tag_t HelpPointTag = NU…
1 NX9+VS2012 #include <uf.h> #include <uf_csys.h> #include <uf_mtx.h> UF_initialize(); //输入X向量Y向量输出一个3*3矩阵 ] = {0.0, 0.0, 1.0}; ] = {0.0, 1.0, 0.0}; ]; UF_MTX3_initialize(XVec, YVec, Mtx); //创建一个3 x 3矩阵 tag_t MatrixID = NULL_TAG; UF_CSYS…
NX9+VS2012 #include <uf.h> #include <uf_csys.h> #include <uf_mtx.h> UF_initialize(); //输入X向量Y向量输出一个3*3矩阵 ] = {0.0, 0.0, 1.0}; ] = {0.0, 1.0, 0.0}; ]; UF_MTX3_initialize(XVec, YVec, Mtx); //创建一个3 x 3矩阵 tag_t MatrixID = NULL_TAG; UF_CSYS_c…
NX9+VS2012 #include <uf.h> #include <uf_csys.h> #include <uf_mtx.h> UF_initialize(); //输入X向量Y向量输出一个3*3矩阵 ] = {0.0, 0.0, 1.0}; ] = {0.0, 1.0, 0.0}; ]; UF_MTX3_initialize(XVec, YVec, Mtx); //创建一个3 x 3矩阵 tag_t MatrixID = NULL_TAG; UF_CSYS_c…
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_curve.h> #include <uf_ui.h> #include <uf_csys.h> UF_initialize(); //获取WCS tag_t WcsTag = NULL_TAG; UF_CSYS_ask_wcs(&WcsTag); //获取WCS的矩阵和原点 tag_t MatrixTag = NULL_TAG; ]; UF_CSYS_ask_csys_…
NX9+VS2012 #include <uf.h> #include <uf_curve.h> #include <uf_modl.h> UF_initialize(); //圆心点 ] = {0.0, 0.0, 0.0}; tag_t CenterTag = NULL_TAG; UF_CURVE_create_point(p1, &CenterTag); //辅助点 ] = {100.0, 0.0, 0.0}; tag_t HelpPointTag = NU…
#include <uf.h> #include <uf_modl.h> #include <uf_drf.h> #include <uf_obj.h> UF_initialize(); //创建表达式 tag_t ExpTag = NULL_TAG; UF_MODL_create_exp_tag("A=1", &ExpTag); //获得尺寸tag tag_t DimTag = NULL_TAG; UF_OBJ_cycle_by…
结论:偏置的方向为曲线方向与拉伸方向的向量叉乘. 在UF_MODL_create_extrusion帮助中有这么一句话:Note that the offset direction is determined by the cross product of the direction vector of the first profile segment and the extrusion direction vector.偏移方向由"第一剖面段的方向向量"和"拉伸方向向量&…
#include <uf.h> #include <uf_drf.h> UF_initialize(); //插入PNG char* file_name = "D:\\123.png"; ] = { 50.0, 50.0, 0.0 }; tag_t ImageTag = NULL_TAG; UF_DRF_create_image_from_file(file_name, NULL_TAG, origin, &ImageTag); //设置图片高度 UF_…
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…
一.本节课程 Arx二次开发创建直线.圆.圆弧和修改对象属性 二.本节要讲解的知识点 1.如何应用C++ ARX二次开发创建直线. 2.如何应用C++ ARX二次开发创建圆. 3.如何应用C++ ARX二次开发创建圆弧. 4.如何修改对象的属性. 5.腾讯课堂云幽学院详细的内容讲解. 三.具体内容 1.创建一条直线,直线的起点是(0,0,0),直线的终点(100,100,0). 2.表:表是数据库的组成单位,一个数据库至少含有一个表. 3.记录:记录是表的组成单位,一个表可能含有多个记录,也可能…
用那几个拉伸,不能将封闭的曲线拉伸成片体,用UF_MODL_create_extrusion函数是可以的,下面是例子. 帮助上说拉伸片体不能有拔模角度,应该是错误的,下面是一个封闭曲线带拔模角度拉伸片体的例子: 拉伸面.拉伸封闭曲线成片体效果:  源码: extern DllExport void ufusr(char *param, int *returnCode, int rlen) { UF_initialize(); uc1601("拉伸", 1); tag_t tagLine…
NX11+VS2013 #include <NXOpen/Line.hxx> #include <NXOpen/NXException.hxx> #include <NXOpen/PartCollection.hxx> #include <NXOpen/Session.hxx> #include <uf.h> #include <uf_curve.h> #include <uf_ui.h> #include <NXO…
每当提起UDO总是会让我想起大专毕业那会失业找工作,后来有个宝贵机会去了软件公司上班,拿到了我人生中的第一个NX二次开发项目,一个关于测量汽车前后左右摄像头的项目.当时那个项目就用到了UDO,对于只看了两个月唐康林工程师二次开发视频教程就跑出来找工作的我,显然是不会UDO的,后来采用了将handle值写到部件属性里,然后每次打开工具对话框前先去部件属性里读,在给到对话框里.在然后项目没做完我就特么滚蛋了. 时隔差不多两年,以前技术底子太差,好多东西都不懂,直到最近我对UDO才有了一些认知了解,会…
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…
今天是国庆节,放假休息懒得动,没有出去玩,在家研究一下发射线函数UF_MODL_trace_a_ray.小弟以前在软件公司混的时候,当时我做的那个项目就用到了UF_MODL_trace_a_ray,当时为了赶项目,从别处抄了代码,改吧改吧.自己也没有仔细的去研究一下这个函数的用法.UF_MODL_trace_a_ray在NX二次开发中算是一个用到比较高频的函数,今天研究了一下,写了一道例题,UFUN和NXOpen C++简单混合去用了一下,大致介绍下函数的用法.如有错误,还请各位前辈多多指教小弟…
一.本节课程 c++ Arx二次开发创建椭圆和样条曲线 二.本节要讲解的知识点 1.如何应用C++ ARX二次开发创建椭圆(对AcDbEllipse类的构造函数的直接封装和根据外接矩形来创建椭圆) 2.如何应用C++ ARX二次开发创建样条曲线(对AcDbSpline类的构造函数的直接封装) 三.具体内容 1.创建椭圆的思路 有参数构造函数:AcDbEllipse( const AcGePoint3d& center, const AcGeVector3d& unitNormal, con…
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二次开发-基于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对话框里 ----------…
NX11+VS2013 #include <uf.h> #include <uf_curve.h> #include <uf_vec.h> UF_initialize(); //创建点1 ] = { 10.0, 10.0, 10.0 }; tag_t PointTag1 = NULL_TAG; UF_CURVE_create_point(Point1, &PointTag1); //创建点2 ] = { 100.0, 100.0, 100.0 }; tag_t…