news 2026/6/3 19:47:16

NX/UG二次开发:NX的方式创建镜像体

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
NX/UG二次开发:NX的方式创建镜像体

//单个体创建镜像体
tag_t Create_Mirror_Bodys(tag_t bodys, double dir[3], double Pt[3])
{
tag_t planetag = NULL_TAG;
std::vector<tag_t> mirrorBodys;
if (!bodys) return NULL_TAG;
UF_CALL(UF_MODL_create_fixed_dplane(Pt, dir, &planetag));

Session *theSession = Session::GetSession(); Part *workPart(theSession->Parts()->Work()); Part *displayPart(theSession->Parts()->Display()); Features::Feature *nullFeatures_Feature(NULL); if (!workPart->Preferences()->Modeling()->GetHistoryMode()) { throw NXException::Create("Create or edit of a Feature was recorded in History Mode but playback is in History-Free Mode."); } Features::MirrorBodyBuilder *mirrorBodyBuilder1; mirrorBodyBuilder1 = workPart->Features()->CreateMirrorBodyBuilder(nullFeatures_Feature); mirrorBodyBuilder1->SetAssociative(false); mirrorBodyBuilder1->SetCopyThreads(false); mirrorBodyBuilder1->SetFixAtCurrentTimestamp(true); Body *body1(dynamic_cast<Body *>(NXObjectManager::Get(bodys))); bool added1; added1 = mirrorBodyBuilder1->MirrorBodyList()->Add(body1); DatumPlane *datumPlane1(dynamic_cast<DatumPlane *>(NXObjectManager::Get(planetag))); mirrorBodyBuilder1->Plane()->SetValue(datumPlane1); NXObject *nXObject1; nXObject1 = mirrorBodyBuilder1->Commit(); std::vector<NXObject *> objects1; objects1 = mirrorBodyBuilder1->GetCommittedObjects(); mirrorBodyBuilder1->Destroy(); if (objects1.empty()) { objects1.push_back(nXObject1); } tag_t bodytag; UF_CALL(UF_MODL_ask_feat_body(objects1[0]->Tag(), &bodytag)); mirrorBodys.push_back(bodytag); UF_OBJ_delete_object(planetag); return bodytag;

}

//多个体创建镜像体
std::vector<tag_t> Create_Mirror_Bodys(std::vector<tag_t> bodys, double dir[3], double Pt[3])
{
tag_t planetag = NULL_TAG;
std::vector<tag_t> mirrorBodys;
if (bodys.empty()) return mirrorBodys;
UF_CALL(UF_MODL_create_fixed_dplane(Pt, dir, &planetag));

Session *theSession = Session::GetSession(); Part *workPart(theSession->Parts()->Work()); Part *displayPart(theSession->Parts()->Display()); Features::Feature *nullFeatures_Feature(NULL); if (!workPart->Preferences()->Modeling()->GetHistoryMode()) { throw NXException::Create("Create or edit of a Feature was recorded in History Mode but playback is in History-Free Mode."); } Features::MirrorBodyBuilder *mirrorBodyBuilder1; mirrorBodyBuilder1 = workPart->Features()->CreateMirrorBodyBuilder(nullFeatures_Feature); mirrorBodyBuilder1->SetAssociative(false); mirrorBodyBuilder1->SetCopyThreads(false); mirrorBodyBuilder1->SetFixAtCurrentTimestamp(true); for (int i = 0; i < bodys.size(); i++) { Body *body1(dynamic_cast<Body *>(NXObjectManager::Get(bodys[i]))); bool added1; added1 = mirrorBodyBuilder1->MirrorBodyList()->Add(body1); } DatumPlane *datumPlane1(dynamic_cast<DatumPlane *>(NXObjectManager::Get(planetag))); mirrorBodyBuilder1->Plane()->SetValue(datumPlane1); NXObject *nXObject1; nXObject1 = mirrorBodyBuilder1->Commit(); std::vector<NXObject *> objects1; objects1 = mirrorBodyBuilder1->GetCommittedObjects(); mirrorBodyBuilder1->Destroy(); if (objects1.empty()) { objects1.push_back(nXObject1); } for (int i = 0; i < objects1.size(); i++) { tag_t bodytag; UF_CALL(UF_MODL_ask_feat_body(objects1[i]->Tag(), &bodytag)); mirrorBodys.push_back(bodytag); } UF_OBJ_delete_object(planetag); return mirrorBodys;

}

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/3 19:47:14

灾难响应机器人:从多传感器融合到自主决策的救援技术解析

1. 项目概述&#xff1a;当灾难降临&#xff0c;机器人如何成为我们的“钢铁臂膀”那天深夜&#xff0c;我被手机急促的警报声惊醒&#xff0c;新闻推送显示数百公里外发生了强烈地震。作为一名长期关注应急科技的研究者&#xff0c;我的第一反应不是恐慌&#xff0c;而是立刻在…

作者头像 李华
网站建设 2026/6/3 19:44:07

从零到精通:AI大模型学习路线图,新手必备!

本文提供了一条系统的AI大模型学习路线&#xff0c;包括打好数学与编程基础&#xff0c;入门机器学习&#xff0c;深入深度学习&#xff0c;探索大模型&#xff0c;以及进阶与应用。文章推荐了相关的书籍、在线课程和实践项目&#xff0c;并强调了参与社区和持续学习的重要性。…

作者头像 李华
网站建设 2026/6/3 19:42:24

3分钟解决Windows包管理器安装难题:Winget-install深度解析

3分钟解决Windows包管理器安装难题&#xff1a;Winget-install深度解析 【免费下载链接】winget-install Install WinGet using PowerShell! Prerequisites automatically installed. Works on Windows 10/11 and Server 2019/2022. 项目地址: https://gitcode.com/gh_mirror…

作者头像 李华
网站建设 2026/6/3 19:41:14

AI工具如何接管企业搜索?揭秘2024头部公司已验证的7步整合路径

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;AI工具与搜索系统整合 现代搜索系统已不再局限于关键词匹配&#xff0c;而是深度融合大语言模型&#xff08;LLM&#xff09;、向量检索与意图理解能力&#xff0c;构建语义驱动的智能搜索体验。AI工具通过嵌入…

作者头像 李华
网站建设 2026/6/3 19:36:18

WorkBuddy 全能办公buff:PDF/Excel/PPT一键搞定

&#x1f680; 个人主页 极客小俊 ✍&#x1f3fb; 作者简介&#xff1a;程序猿、设计师、技术分享 &#x1f40b; 希望大家多多支持, 我们一起学习和进步&#xff01; &#x1f3c5; 欢迎评论 ❤️点赞&#x1f4ac;评论 &#x1f4c2;收藏 &#x1f4c2;加关注 WorkBuddy Ski…

作者头像 李华