录制修改封装删除面 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. 第三部分 IDEA创建并运行项目

    可以创建一个maven,几行代码就解决了导入依赖,但是我的电脑不知道哪里出现了问题,IDEA重装,jdk重装,maven重装,都无法解决问题,找了3天,还是没有解决问题.最后只能采用手动导入包方法.看 ...

  2. Linux执行命令报错:Permission denied

    原因:权限被拒 结局办法 chmod -R 777 目录名 更改目录内文件的权限即可

  3. mac打开class文件

    本来不想写这个东西的.但是这个却费了我一番周折. 我要先声明一点的是,我从来不讲iOS当成一个单独的系统,而是将这个操作系统归位unix内核的系统. 简单来说,我把它当成linux在用. 但是,mac ...

  4. python三元(三目)运算

    传统的if,else写法 三元运算 name="alex" if 1==1 else "SB"

  5. 一、HttpRunner学习汇总

    HttpRunner是一款面向Http和HTTPS协议的通用测试框架,只需编写维护一份YAML/JSON脚本即可实现自动化测试.性能测试.线上监控.持续集成等多种测试需求,是基于关键字驱动的框架,基于 ...

  6. 什么是 Mock 测试?

    什么是 Mock? 作为动词,Mock 是模拟.模仿的意思. 作为名词,Mock 是能够模仿真实对象行为的模拟对象. 那么,在软件测试中,Mock 所模拟的对象是什么呢? 模拟的是 SUT(Syste ...

  7. JVM虚拟机 类加载过程与类加载器

    目录 前言 类的生命周期 类加载过程 加载 连接 验证 准备 解析 初始化 类加载器 三大类加载器 双亲委派模型 概念 为什么要使用双亲委派模型 源码分析 反双亲委派模型 参考 前言 类装载器子系统是 ...

  8. HEVC学习(一) —— HM的使用

    http://blog.csdn.net/hevc_cjl/article/details/8169182 首先自然是先把这个测试模型下载下来,链接地址如下:https://hevc.hhi.frau ...

  9. 【技术博客】忘记密码界面的Vue前端实现

    一.基本流程 [登录界面] --> [点击忘记密码] --> [输入个人邮箱和验证码] --> [系统发送邮箱验证] --> [用户在限定时间内登录邮箱,查收验证码] --&g ...

  10. debian用户手册-20200317

    https://www.debian.org/doc/manuals/debian-reference/ 文档与使用手册在每一个操作系统中都是很重要的一部份,是描述程序操作和使用的技术手册.正由于说明 ...