NX二次开发-UFUN获取面的内外边界UF_MODL_ask_loop_list_item
NX11+VS2013
#include <uf.h>
#include <uf_modl.h>
#include <NXOpen/Face.hxx>
#include <uf_ui.h>
#include <NXOpen/NXObjectManager.hxx>
#include <NXOpen/Edge.hxx>
UF_initialize();
//获取选择面控件选择的对象
PropertyList* FaceSelectProps = face_select0->GetProperties();
std::vector<NXOpen::TaggedObject *> Faces = FaceSelectProps->GetTaggedObjectVector("SelectedObjects");
delete FaceSelectProps;
FaceSelectProps = NULL;
for (int i = ; i < Faces.size(); i++)
{
NXOpen::Face *MyFace = dynamic_cast<NXOpen::Face *>(Faces[i]);
std::vector<tag_t> FaceNum;
uf_loop_p_t Loop_List;
UF_MODL_ask_face_loops(MyFace->Tag(), &Loop_List);//查询面的边界
int LoopNum;
UF_MODL_ask_loop_list_count(Loop_List, &LoopNum);//查询面的边界链表数量
int LoopChildType;
int Num1;
uf_list_p_t LoopChildList;
char msg[];
std::vector<tag_t> edge;
UF_MODL_create_list(&LoopChildList);//创建链表
for (int j = ; j < LoopNum; j++)
{
UF_MODL_ask_loop_list_item(Loop_List, j, &LoopChildType, &LoopChildList);//查询面的边界类型
if (LoopChildType == )//类型为内边界的时候
{
UF_MODL_ask_list_count(LoopChildList, &Num1);//查询链表数量
for (int n = ; n < Num1; n++)
{
tag_t objTag = NULL_TAG;
UF_MODL_ask_list_item(LoopChildList, n, &objTag);//获取链表里的tag
edge.push_back(objTag);
}
}
}
sprintf_s(msg, "当前有%d个孔", edge.size());
uc1601(msg, );
UF_MODL_delete_list(&LoopChildList);
UF_MODL_delete_loop_list(&Loop_List);
}
UF_terminate();

NX二次开发-UFUN获取面的内外边界UF_MODL_ask_loop_list_item的更多相关文章
- NX二次开发-UFUN获取NX系统默认导出CGM的选项设置UF_CGM_ask_default_export_options
文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...
- NX二次开发-UFUN获取当前导出CGM选项设置UF_CGM_ask_session_export_options
文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...
- NX二次开发-UFUN获取环境变量路径,将环境变量转换为字符串,字符串拼接UF_translate_variable
NX9+VS2012 #include <uf.h> UF_initialize(); //UFUN获取环境变量路径 //将环境变量转换为字符串 char* GetName = NULL; ...
- NX二次开发-UFUN获取系统相关信息UF_ask_system_info
NX9+VS2012 #include <uf.h> UF_initialize(); UF_system_info_t Info; UF_ask_system_info(&Inf ...
- NX二次开发-UFUN获取边的光顺性UF_MODL_ask_edge_smoothness(找相切面)
#include <uf.h> #include <uf_modl.h> #include <uf_obj.h> UF_initialize(); //获取面的所有 ...
- NX二次开发-UFUN获取当前所在的模块UF_ask_application_module
NX9+VS2012 #include <uf.h> #include <NXOpen/UI.hxx> #include <NXOpen/MenuBar_MenuBarM ...
- NX二次开发-UFUN获取显示在NX交互界面的对象UF_OBJ_is_displayable
NX9+VS2012 #include <uf.h> #include <uf_disp.h> #include <uf_obj.h> #include <u ...
- NX二次开发-UFUN获取边的端点UF_MODL_ask_edge_verts
NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_ui.h> #include <uf ...
- NX二次开发-UFUN获取直线的两个端点UF_CURVE_ask_line_data
NX9+VS2012 #include <uf.h> #include <uf_obj.h> #include <uf_ui.h> UF_initialize(); ...
随机推荐
- Windows添加右键新增.md文件
因为习惯用Markdown来写文档, 所以常常需要新建.md文档,但由于Windows并不会自带把.md文档放入右键新建项中(像Word那样),所以方便起见,自己手动设置,其实就是把它写进Window ...
- Python文件路径操作
print(os.environ.get('HOME')) # 打印`HOME`这个环境变量 /Users/<> file_path = os.environ.get('HOME') + ...
- jsp网站访问次数统计的几种方法
我采用的是jsp网页,但是不管采用什么语言,原理是一样的. 第一种,单页面统计.就是说,只要点击这个页面就会统计一次. <body> <%!//在这种标记中定义的变量为全局变量 in ...
- 骚操作:c++如何用goto便捷地写人工栈?
在如今所有NOI系列赛事已经开全栈的时势下,人工栈已经离我们很远很远. 所以这博客就是我弄着玩的. 首先我们要清楚的是c++的goto写法: loop:; - goto loop; 在运行到goto时 ...
- Web移动端常见问题-摘抄
一.按钮点击时出现黑色背景 解决方法: 1 2 .class { -webkit-tap-highlight-color:rgba(0,0,0,0);} .class { -webkit-appe ...
- Tomcat服务器配置参考
Coyote HTTP/1.1 Connector 概述 Coyote HTTP/1.1 Connector元素是一个支持HTTP/1.1协议的Connector组件.它使Catalina除了能够执行 ...
- java lambda filter写法
datas.stream().filter(m->!m.getSerialId().equals(setting.getSerialId())).collect(Collectors.toLis ...
- 剑指offer——59二叉搜索树的第k大节点
题目描述 给定一棵二叉搜索树,请找出其中的第k小的结点.例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4. 题解: 考察的就是中序遍历 不过注意进行剪枝 cl ...
- window_mysql踩坑
https://blog.csdn.net/qq_37350706/article/details/81707862 先去官网下载点击的MySQL的下载 下载完成后解压 解压完是这个样子 配置系统环境 ...
- hdu6354 /// 圆的相交
题目大意: 给定m r 初始圆盘以原点为圆心半径为r 给定m个圆的圆心(x,y) 半径r 保证m个圆互不相交且不会覆盖圆盘 用这m个圆来切割初始的圆盘求最后圆盘外围的长度 求圆与圆盘的交点 减去圆盘上 ...