- 博客(28)
- 收藏
- 关注
原创 UG二次开发,获取选择器 取消选中 后的对象
在开发过程中,我们经常会在选择器中取消选中的某个或某些(框选) 对象,但是我们又需要知道究竟是取消的是哪一个。我们可能常用的方法就是提前收集一份,再获取当前选择器的对象,然后两个容器中的对象进行对比,少了哪个哪个就是刚刚被我取消的。
2025-03-18 14:53:09
105
原创 UG二次开发 创建csys坐标系
uf_csys_create_csys()//通过原点和矩阵的tag创建csys坐标系。uf_csys_create_matrix()//得到矩阵的tag。
2025-02-14 11:48:21
125
原创 NX二次开发 配置MFC项目(环境配置不正确可能会导致录制代码无法使用)
C/C++ ---》常规 ---》附加包含目录:$(UGII_BASE_DIR)\UGOPEN。链接 ---》常规 ---》附加包含目录:$(UGII_BASE_DIR)\UGOPEN。C/C++ ---》常规 ---》代码生成 ---》运行库:多线程调试(.MTD)平台工具集:2010(NX8.5)MFC的使用:在静态库中使用MFC。解决方案配置:release。配置类型:动态库(.dll)目标文件拓展名:.dll。字符集:多字节字符集。
2024-12-05 10:57:17
197
原创 MFC 下拉框显示问题和控件自适应窗口大小
解决办法:把鼠标放到下拉框的倒三角去点一下,鼠标就会变成双向箭头,或者先选中一下下拉框再把鼠标移动到倒三角上去再点一下都可以,之后会出现可以调整大小的八个点,其中只有下面那条的中间的点是全黑色,表示可以往下拖,你就可以按照你需要的高度进行调整了。解决办法:为了排版美观,我的解决办法是,改变了下拉框的宽度,但是并不修改下拉框这个控件的宽度,以最长的那条文本的宽度为准。在mfc开发过程中,遇到了下拉框的两个问题,现在记录一下。1、把下拉框点开显示不全我放进去的多条文本。
2024-11-23 09:32:49
429
原创 NX/UG 二次开发 获取注释信息
/获取注释信息it!it++)return -1;return -1;i++)//读取注释cr3 = NULL;return -1;return 0;
2024-11-11 10:39:24
375
原创 MFC 重写了listControl类(类名为A),并把双击事件的处理函数定义在A中,主窗口如何接收表格是否被双击
刚接触MFC遇到的问题,我在主对话框的.cpp里添加了表格的双击处理事件,但是没用,试了下添加单击的,发现居然可以进单击的处理函数,就很懵逼,然后我就把处理双击事件的函数添加到表格的类中,那这样就会又有个问题,我想在主程序这里去处理这个事件,那我应该怎么做?//当表格被双击就调用。在主对话框类 .cpp 的OnInitDialog()中添加绑定。// TODO: 在此添加控件通知处理程序代码。定义主对话框的处理双击函数并在头文件中声明。在A类 .hpp 中添加。在A类 .cpp 中添加。
2024-11-07 18:06:49
822
原创 开发遇到的问题点
我这边提供一个思路:根据地址来找这个值,但是感觉应该还有更好的办法,如果有想法欢迎在评论区解答。问题:以下这种情况,我需要获取到createPoint函数创建的点的tag值应该要怎么获取。
2024-04-30 11:42:34
106
1
原创 UG二次开发 高、低版本投影曲线
注意点:1:使用NXOpen GetCommittedObjects()可能无法获取到准确的对象,但是我们可以使用UF函数进行获取 UF_MODL_ask_feat_object();如何处理:对投影后的对象(不能是特征)进行去参,然后再连结曲线。问题:样条在低版本投影曲线到平面上后只会输出一个对象,但是在高版本上会产生多个对象。注意点2:使用投影曲线时建议使用面的法向去进行投影,高低版本在投影方向上也有不同。解决思路:投影曲线后判断投影后对象的个数,如果大于1就单独对这些对象进行处理。
2024-04-23 08:58:24
333
原创 NX/UG二次开发 selection0 删除,清空对象的正确步骤
这两种方式究竟哪个才是正确的?可以很明显的看出来,第二种我们选择的对象明明删除了,但是数量那里还是显示有对象。第二种清空方式:先把selection0容器清空再把对象删除。selection0选择好对象之后需要把这些对象清空,第一种清空方式:先删除再把selection0容器清空。
2024-03-04 14:40:12
723
原创 NX\UG二次开发 判断线段的类型
/对传进来的线段进行判断 相当于是个评估者。//询问评估者是否是圆弧。// 判断线段类型 3 直线、1 圆弧、2 样条。
2024-01-29 11:17:55
595
1
原创 NX\UG二次开发 在包容块中点到包容块边取整,点到点取整
处理方法:前提需要把包容块的长宽都取整,获取到这个包容块边的方向,分别为 X 方向和 Y 方向,获取包容块的最小点,通过这个点和方向创建工作坐标系,再把你需要取整的点映射到这个工作坐标系上,再做一个对点取整的操作 (point[0] = int point[0]) ,然后把这个点映射回绝对坐标系就可以了。今天遇到个要求,在包容块边是平行或不平行于当前绝对坐标系的坐标时,把点到边、点到点的距离取整。
2024-01-24 12:14:10
536
1
原创 UG\NX二次开发 坐标系的转换
UG上的点默认是绝对坐标系上的点,如果要转为工作坐标系,那就要把这个点映射到工作坐标系上,那如何映射呢?UF_CSYS_ROOT_WCS_COORDS : 根部件工作坐标系。UF_CSYS_ROOT_COORDS : 根部件绝对坐标系。UF_CSYS_WORK_COORDS : 工作坐标系。先理清楚,绝对坐标系和工作坐标系(WCS)应该讲明白了,哈哈哈,那如何进行转换呢?那上面的代码是什么转什么呢?如果描述有误,欢迎指正~
2024-01-23 11:19:56
1413
1
原创 UG/NX二次开发 一键打开透明度
#includevoid OpenCloseTransparency(bool flage){ Session* theSession = Session::GetSession(); Part* workPart(theSession->Parts()->Work()); Part* displayPart(theSession->Parts()->Display());
2024-01-18 10:21:42
557
原创 UG\NX二次开发导入组件的方式
原理是(举个例子):当程序调用这个总装时,就把它导进UG,多次导入的原始装配一直都是这个总装,所以当你对导入的其中一个总装进行表达式的修改,那全部都会一起修改(导入多个组件也是相同的原理)当我们使用代码进行导入组件时,可以导入它的总装配,然后通过修改表达式从而达到切换到对应组件的效果、当然也可以导入具体的组件。2、每导入一次总装(组件),都需要对他就行修改名字,然后单独对他们进行修改表达式。三、多个导入,前提是修改其中一个总装的表达式、其他不受影响。二、多个导入,前提,最终都是一模一样的组件。
2024-01-15 08:46:56
949
原创 UG\NX二次开发 指派特征颜色 给特征上色
在UG二次开发过程中,我们可能经常用到给对应的面进行上色,当我们进行了一系列操作之后还要去找对应的面就比较麻烦,有个快捷方式,直接拿到他的特征就可以直接上色。
2023-10-10 09:39:29
596
1
原创 UG\NX二次开发 优化面
void optimizeFace(tag_t tempBody){ Session* theSession = Session::GetSession(); Part* workPart(theSession->Parts()->Work()); Part* displayPart(theSession->Parts()->Display()); Features::OptimizeFaceBuilder* optimizeFaceBuilder1; optimiz
2023-09-25 12:14:54
200
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人