码迷,mamicode.com
首页 > 其他好文 > 详细

NX二次开发-NXopen录制:导入IGS

时间:2019-12-24 09:49:19      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:vector   ota   geometry   open   san   sele   highlight   input   put   

// Created by:  Tag_jiang
// Language:   C++
// Version:   NX 10
// Date:      12-24-2019
// Time:       9:00
 
//头文件
#include <NXOpen/DexBuilder.hxx>
#include <NXOpen/DexManager.hxx>
#include <NXOpen/NXObject.hxx>
#include <NXOpen/ObjectTypeSelector.hxx>
#include <NXOpen/Part.hxx>
#include <NXOpen/PartCollection.hxx>
#include <NXOpen/Session.hxx>
#include <NXOpen/IgesImporter.hxx>
#include <NXOpen/Update.hxx>

void PrtImportIgs(NXString AllPath, bool Simplify, bool Curves, bool Surfaces, bool Solids, bool Annotations, bool Csys, bool Structures, bool SewSurfaces, bool SmoothBSurf, bool FlattenAssembly)
{
	NXOpen::Session *theSession = NXOpen::Session::GetSession();
	NXOpen::Part *workPart(theSession->Parts()->Work());
	NXOpen::Part *displayPart(theSession->Parts()->Display());
	// ----------------------------------------------
	//   Menu: 文件(F)->导入(M)->IGES...
	// ----------------------------------------------

	NXOpen::IgesImporter *igesImporter1;
	igesImporter1 = theSession->DexManager()->CreateIgesImporter();

	igesImporter1->SetCopiousData(NXOpen::IgesImporter::CopiousDataEnumLinearNURBSpline);//冗余数据类型

	igesImporter1->SetLayerDefault(1);//0默认层

	igesImporter1->SetGeomFixupTol(0.0127);//几何修正公差

	igesImporter1->SetSettingsFile("D:\\Program Files\\Siemens\\NX 10.0\\iges\\igesimport.def");//配置文件

	igesImporter1->ObjectTypes()->SetCurves(Curves);//曲线

	igesImporter1->ObjectTypes()->SetSurfaces(Surfaces);//曲面

	igesImporter1->ObjectTypes()->SetSolids(Solids);//实体

	igesImporter1->ObjectTypes()->SetAnnotations(Annotations);//注释

	igesImporter1->ObjectTypes()->SetStructures(Structures);//结构分析

	igesImporter1->SetSmoothBSurf(SmoothBSurf);//光顺B曲面

	igesImporter1->SetFlattenAssembly(FlattenAssembly);//展开装配

	igesImporter1->SetSewSurfaces(SewSurfaces);//缝合曲面

	igesImporter1->SetSimplifyGeometry(Simplify);//简化

	igesImporter1->ObjectTypes()->SetCsys(Csys);//坐标

	igesImporter1->SetInputFile(AllPath);//路径

	igesImporter1->SetOutputFile("E:\\Design\\Desi1F702094qgyl.prt");//缓存

	igesImporter1->SetFileOpenFlag(false);

	igesImporter1->SetLayerMask("0-99999");//图层标识

	std::vector<NXOpen::NXObject *> objects1(0);//更新
	int nErrs1;
	nErrs1 = theSession->UpdateManager()->AddToDeleteList(objects1);
	theSession->CleanUpFacetedFacesAndEdges();

	NXOpen::NXObject *nXObject1;
	nXObject1 = igesImporter1->Commit();
	igesImporter1->Destroy();
}

  

NX二次开发-NXopen录制:导入IGS

标签:vector   ota   geometry   open   san   sele   highlight   input   put   

原文地址:https://www.cnblogs.com/NXString/p/12089552.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!