public static void createProfile(PartDocument oDoc) { SheetMetalComponentDefinition oCompDef = (SheetMetalComponentDefinition)oDoc.ComponentDefinition; FaceCollection oFaceColl = iApp.TransientObjects.CreateFaceCollection(); foreach (Face f in oCompDef.SurfaceBodies[1].Faces) { oFaceColl.Add(f); } PartFeatures oFeat = oCompDef.Features; oFeat.ThickenFeatures.Add(oFaceColl, Math.Round(oCompDef.Thickness.Value * 100) / 100, PartFeatureExtentDirectionEnum.kNegativeExtentDirection, PartFeatureOperationEnum.kJoinOperation, false); }
public static void deleteFace(PartDocument oDoc, List <string> faceCollToKeep) { SheetMetalComponentDefinition oCompDef = (SheetMetalComponentDefinition)oDoc.ComponentDefinition; FaceCollection faceCollToDelete = iApp.TransientObjects.CreateFaceCollection(); foreach (Face oFace in oCompDef.SurfaceBodies[1].Faces) { if (!faceCollToKeep.Contains(oFace.InternalName)) { faceCollToDelete.Add(oFace); } } PartFeatures oFeat = oCompDef.Features; oFeat.DeleteFaceFeatures.Add(faceCollToDelete); }
private static void GenerateExportList(PartFeatures pFeats) { IEnumerator<PartFeature> f = pFeats.OfType<PartFeature>().GetEnumerator(); while(f.MoveNext()) { IEnumerator<FeatureDimension> d = f.Current.FeatureDimensions.OfType<FeatureDimension>().GetEnumerator(); while(d.MoveNext()) { //NOTE IN CENTIMETERS MessageBox.Show("Type: " + d.Current.DimensionType.ToString() + " \n Name: " + f.Current.Name + "\n Extrusion: " + d.Current.Parameter.ModelValue + "cm"); } IEnumerator<Parameter> p = f.Current.Parameters.OfType<Parameter>().GetEnumerator(); while (p.MoveNext()) { //MessageBox.Show("Boom " + p.Current.ReferenceParameters.ToString()); } } //IEnumerator<ModelParameter> s = docParams.ModelParameters.OfType<ModelParameter>().GetEnumerator(); //while(s.MoveNext()) //{ // MessageBox.Show(s.Current.GetType().ToString()); //} // enumerator.Current; //Parameters //String state = occur.ElementAt(1); }