录制修改封装删除面 DeleteFaces

 1 #include <uf_defs.h>
2 #include <NXOpen/NXException.hxx>
3 #include <NXOpen/Session.hxx>
4 #include <NXOpen/BasePart.hxx>
5 #include <NXOpen/Builder.hxx>
6 #include <NXOpen/Expression.hxx>
7 #include <NXOpen/ExpressionCollection.hxx>
8 #include <NXOpen/Face.hxx>
9 #include <NXOpen/FaceDumbRule.hxx>
10 #include <NXOpen/Features_Brep.hxx>
11 #include <NXOpen/Features_DeleteFaceBuilder.hxx>
12 #include <NXOpen/Features_FeatureCollection.hxx>
13 #include <NXOpen/ISurface.hxx>
14 #include <NXOpen/NXObject.hxx>
15 #include <NXOpen/Part.hxx>
16 #include <NXOpen/PartCollection.hxx>
17 #include <NXOpen/Plane.hxx>
18 #include <NXOpen/PlaneCollection.hxx>
19 #include <NXOpen/ScCollector.hxx>
20 #include <NXOpen/ScRuleFactory.hxx>
21 #include <NXOpen/SelectISurface.hxx>
22 #include <NXOpen/SelectObject.hxx>
23 #include <NXOpen/SelectionIntentRule.hxx>
24 #include <NXOpen/Session.hxx>
25 #include <NXOpen/SmartObject.hxx>
26 #include <NXOpen/TaggedObject.hxx>
27 #include <NXOpen/Unit.hxx>
 1 static void DeleteFaces(vector<tag_t> tagFaces)
2 {
3 if (tagFaces.size() == 0) return;
4 vector<Face *> deleteface;
5 for (int i = 0; i < tagFaces.size(); i++)
6 {
7 NXOpen::Face *face1(dynamic_cast<NXOpen::Face *>(NXOpen::NXObjectManager::Get(tagFaces[i])));
8 deleteface.push_back(face1);
9 }
10
11 Session *theSession = Session::GetSession();
12 Part *workPart(theSession->Parts()->Work());
13 Features::Feature *nullFeatures_Feature(NULL);
14 Features::DeleteFaceBuilder *deleteFaceB;
15 deleteFaceB = workPart->Features()->CreateDeleteFaceBuilder(nullFeatures_Feature);
16 FaceDumbRule *faceDumbRule1;
17 faceDumbRule1 = workPart->ScRuleFactory()->CreateRuleFaceDumb(deleteface);
18 std::vector<SelectionIntentRule *> rules1(1);
19 rules1[0] = faceDumbRule1;
20 deleteFaceB->FaceCollector()->ReplaceRules(rules1, false);
21 NXObject *nXObject1;
22 nXObject1 = deleteFaceB->Commit();
23 deleteFaceB->Destroy();
24 }

【NX二次开发】 删除面操作的更多相关文章

  1. NX二次开发-删除功能区工具栏UF_UI_remove_ribbon

    NX9+VS2012 1.打开D:\Program Files\Siemens\NX 9.0\UGII\menus\ug_main.men 找到装配和PMI,在中间加上一段 TOGGLE_BUTTON ...

  2. NX二次开发-删除经典工具栏UF_UI_remove_toolbar

    NX9+VS2012 1.打开D:\Program Files\Siemens\NX 9.0\UGII\menus\ug_main.men 找到装配和PMI,在中间加上一段 TOGGLE_BUTTON ...

  3. 【NX二次开发】属性操作相关函数的使用方法

    内容包括:1.属性创建2.判断属性是否存在3.读取属性值4.时间属性转换成字符串5.统计属性的数量6.删除指定属性7.删除全部属性效果: 源码: #include <stdlib.h> # ...

  4. 【NX二次开发】布尔操作

    //布尔操作 //UF_MODL_operations 对两个体执行布尔操作 //UF_MODL_unite_bodies 相加布尔操作,不可保留目标体.工具体 //UF_MODL_unite_bod ...

  5. 【NX二次开发】属性操作总结

    内容包括:1.属相创建2.判断属性是否存在3.读取属性值4.时间属性转换成字符串5.统计属性的数量6.删除指定属性7.删除全部属性 源码: 1 #include <stdlib.h> 2 ...

  6. NX二次开发-基于MFC界面的NX对Excel读写操作(OLE方式(COM组件))

    NX二次开发API里没有对EXCAL读写操作的相关函数,市面上有很多种方法去实现,比如UFUN调KF,ODBC,OLE(COM组件)等等.这里我是用的OLE(COM组件)方式去做的,这种在VC上创建的 ...

  7. NX二次开发-基于NX开发向导模板的NX对Excel读写操作(OLE方式(COM组件))

    在看这个博客前,请读者先去完整看完:NX二次开发-基于MFC界面的NX对Excel读写操作(OLE方式(COM组件))https://ufun-nxopen.blog.csdn.net/article ...

  8. NX二次开发-UDO用户自定义对象(UFUN)【持续完善】

    每当提起UDO总是会让我想起大专毕业那会失业找工作,后来有个宝贵机会去了软件公司上班,拿到了我人生中的第一个NX二次开发项目,一个关于测量汽车前后左右摄像头的项目.当时那个项目就用到了UDO,对于只看 ...

  9. C# NX二次开发环境搭建

    在网上看到一篇C#二次开发环境搭建的文章:NX二次开发-使用NXOPEN C#手工搭建开发环境配置 ,写得非常好.我按照文章操作,过程中遇到几个问题,把问题分享给大家,希望对各位有帮助. 注意三点: ...

  10. NX二次开发-获取WCS坐标系的原点坐标和矩阵标识

    函数:UF_CSYS_ask_csys_info() 函数说明:获取工作坐标系对象的标识符. 用法: #include <uf.h> #include <uf_csys.h> ...

随机推荐

  1. <JVM下篇:性能监控与调优篇>补充:浅堆深堆与内存泄露

    笔记来源:尚硅谷JVM全套教程,百万播放,全网巅峰(宋红康详解java虚拟机) 同步更新:https://gitee.com/vectorx/NOTE_JVM https://codechina.cs ...

  2. PHP 读取文件夹(比如某共享文件夹)中的图片并显示

    1.获取文件夹下图片public function albumList(){ $share_url = input('path'); $files = getImgList($share_url); ...

  3. 建立AD域,修改密码后不重启生效命令

    net user administrator /passwordreq:yes

  4. WireShark之抓telnet密码

    背景环境: 涉及到telnet和ssh知识的时候,必须要提的是telnet传输是明文的不安全的,传输的密码都会泄露,有兴趣来做个试验. 一:工具 ·①Windows 7 PC机:②GNS3:③Wire ...

  5. 最近做app项目中遇到的问题 以及一些常见注意事项

    最近做app项目中遇到的问题 1.时间兼容问题 var date = "2019-12-18 18:03:45" //不兼容代码 var newDate = new Date(da ...

  6. XD to Flutter 2.0 现已发布!

    Flutter 是 Google 的开源 UI 工具包.利用它,只需一套代码库,就能开发出适合移动设备.桌面设备.嵌入式设备以及 web 等多个平台的精美应用.过去几年,对于想要打造多平台应用的开发者 ...

  7. c++通讯录管理系统

    代码拷贝 #include<iostream> #include<string> #include<stdlib.h> #define MAX 1000 using ...

  8. Window内核学习之保护模式基础

    段寄存器 段寄存器有6个分别是 cs,ss,ds,es,fs,gs.这些段寄存器包含16位的可见部分和80位的隐藏部分,共90位. 16位的可见部分就是我们知道的cs等段寄存器的值,我们可以在od中查 ...

  9. Introduction to x265 Rate Control Algorithm

    The rate control in x265 is the same as x264's implementation, which is mostly empirical. It include ...

  10. 10.Debug

    1.Debug模式 1.1 什么是Debug模式 是供程序员使用的程序调试工具,它可以用于查看程序的执行流程,也可以用于追踪程序执行过程来调试程序. 1.2 Debug介绍与操作流程 Debug调式, ...