//缝合
public static void SewBuilder(List<Tag> ExtractFaceTag, ref List<Tag> Sew_Face)
{
NXOpen.Session theSession = NXOpen.Session.GetSession();
NXOpen.Part workPart = theSession.Parts.Work;
NXOpen.Part displayPart = theSession.Parts.Display;
NXOpen.Features.Feature nullNXOpen_Features_Feature = null;
NXOpen.Features.SewBuilder sewBuilder1;
sewBuilder1 = workPart.Features.CreateSewBuilder(nullNXOpen_Features_Feature);
sewBuilder1.Tolerance = 0.02;
NXOpen.Body body1 = (NXOpen.Body)(NXObjectManager.Get(ExtractFaceTag[0]));
bool added1;
added1 = sewBuilder1.TargetBodies.Add(body1);
NXOpen.DisplayableObject[] objects1 = new NXOpen.DisplayableObject[ExtractFaceTag.Count - 1];
List<Body> objectsList = new List<Body> { };
for (int i = 1; i < ExtractFaceTag.Count; i++)
{
NXOpen.Body body2 = (NXOpen.Body)(NXObjectManager.Get(ExtractFaceTag[i]));
objectsList.Add(body2);
}
objects1 = objectsList.ToArray();
bool added2;
added2 = sewBuilder1.ToolBodies.Add(objects1);
NXOpen.NXObject nXObject1;
nXObject1 = sewBuilder1.Commit();
//获取体
NXOpen.Features.Feature Tembody = (NXOpen.Features.Feature)nXObject1;
Body[] Temp_SFBody = Tembody.GetBodies();
for (int i = 0; i < Temp_SFBody.Length; i++)
{
Sew_Face.Add(Temp_SFBody[i].Tag);
}
sewBuilder1.Destroy();
}