首页 > 其他 > 详细

NXOpen 创建圆柱面中心线

时间:2021-02-25 15:18:54      阅读:94      评论:0      收藏:0      [点我收藏+]

C++  2010

 

#include <NXOpen/Annotations.hxx>
#include <NXOpen/Annotations_AnnotationManager.hxx>
#include <NXOpen/Annotations_CenterlineCollection.hxx>
#include <NXOpen/SelectNXObjectList.hxx>
#include <NXOpen/NXObject.hxx>
#include <NXOpen/NXObjectManager.hxx>

 

  //选择过滤
  Selection::SelectionAction action = Selection::SelectionActionClearAndEnableSpecific;
  std::vector<Selection::MaskTriple> maskArray(1);
  maskArray[0] = Selection::MaskTriple( UF_solid_type, UF_all_subtype, UF_UI_SEL_FEATURE_CYLINDRICAL_FACE);//圆柱面
  selection0->GetProperties()->SetSelectionFilter("SelectionFilter", action, maskArray);

 

  //获取UI选取的圆柱面
  std::vector<TaggedObject *> faces = selection0->GetSelectedObjects(); //得到圆柱面

 

  //创建圆柱面中心线
  Face *face2 (dynamic_cast<Face *>(NXObjectManager::Get(faces[0]->Tag())));
  NXOpen::Annotations::Centerline3d *line1(NULL);
  NXOpen::Annotations::Centerline3dBuilder*line1Builder;
  line1Builder=workPart->Annotations()->Centerlines()->CreateCenterline3dBuilder(line1);
  line1Builder->Face()->Add(face2);
  line1Builder->Settings()->SetExtension(0.0);
 
  NXOpen::NXObject*nXObject1;
  nXObject1=line1Builder->Commit();

  Features::Feature *centerline ;
  line1Builder->Destroy();

技术分享图片

 

NXOpen 创建圆柱面中心线

原文:https://www.cnblogs.com/hqsalanhuang/p/14446448.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!