static void Main(string[] args) { SolidEdgeFramework.Application application = null; SolidEdgeFramework.Documents documents = null; SolidEdgePart.SheetMetalDocument sheetMetalDocument = null; SolidEdgePart.FamilyMembers familyMembers = null; SolidEdgePart.FamilyMember familyMember = null; SolidEdgePart.EdgebarFeatures edgebarFeatures = null; try { // Register with OLE to handle concurrency issues on the current thread. SolidEdgeCommunity.OleMessageFilter.Register(); // Connect to or start Solid Edge. application = SolidEdgeCommunity.SolidEdgeUtils.Connect(true, true); // Get a reference to the documents collection. documents = application.Documents; // Add a new sheetmetal document. sheetMetalDocument = documents.AddSheetMetalDocument(); // Invoke existing sample to create geometry. SheetMetalHelper.CreateHolesWithUserDefinedPattern(sheetMetalDocument); // Get a reference to the FamilyMembers collection. familyMembers = sheetMetalDocument.FamilyMembers; // Add a new FamilyMember. familyMember = familyMembers.Add("Member 1"); // Get a reference to the DesignEdgebarFeatures collection. edgebarFeatures = sheetMetalDocument.DesignEdgebarFeatures; // Iterate through the DesignEdgebarFeatures. for (int i = 1; i <= edgebarFeatures.Count; i++) { // Get the EdgebarFeature at the current index. object edgebarFeature = edgebarFeatures.Item(i); // Use helper class to get the feature type. var featureType = SolidEdgeCommunity.Runtime.InteropServices.ComObject.GetPropertyValue <SolidEdgePart.FeatureTypeConstants>(edgebarFeature, "Type", (SolidEdgePart.FeatureTypeConstants) 0); // Looking for a Hole pattern to suppress. if (featureType == SolidEdgePart.FeatureTypeConstants.igUserDefinedPatternFeatureObject) { // Suppress the feature. familyMember.AddSuppressedFeature(edgebarFeature); } } // Apply the FamilyMember. familyMember.Apply(); } catch (System.Exception ex) { Console.WriteLine(ex.Message); } finally { SolidEdgeCommunity.OleMessageFilter.Unregister(); } }
static void Main(string[] args) { SolidEdgeFramework.Application application = null; SolidEdgeFramework.Documents documents = null; SolidEdgePart.SheetMetalDocument sheetMetalDocument = null; SolidEdgePart.Models models = null; SolidEdgePart.Model model = null; SolidEdgePart.Sketchs sketchs = null; SolidEdgePart.Sketch sketch = null; SolidEdgePart.Profiles profiles = null; SolidEdgePart.Profile profile = null; SolidEdgePart.Etches etches = null; SolidEdgePart.Etch etch = null; SolidEdgeFramework.SelectSet selectSet = null; try { // Register with OLE to handle concurrency issues on the current thread. SolidEdgeCommunity.OleMessageFilter.Register(); // Connect to or start Solid Edge. application = SolidEdgeCommunity.SolidEdgeUtils.Connect(true, true); // Get a reference to the documents collection. documents = application.Documents; // Add a new sheet metal document. sheetMetalDocument = documents.AddSheetMetalDocument(); // Invoke existing sample to create geometry. SheetMetalHelper.CreateHolesWithUserDefinedPattern(sheetMetalDocument); // Get a reference to the Sketches collection. sketchs = sheetMetalDocument.Sketches; // Get the 1st Sketch. sketch = sketchs.Item(1); // Get a reference to the Profiles collection. profiles = sketch.Profiles; // Get the 1st Profile. profile = profiles.Item(1); // Get a reference to the Models collection. models = sheetMetalDocument.Models; // Get the 1st Model. model = models.Item(1); // Get a reference to the Etches collection. etches = model.Etches; // Add the Etch. etch = etches.Add(profile); // Get a reference to the ActiveSelectSet. selectSet = application.ActiveSelectSet; // Empty ActiveSelectSet. selectSet.RemoveAll(); // Add new Dimple to ActiveSelectSet. selectSet.Add(etch); // Switch to ISO view. application.StartCommand(SolidEdgeConstants.SheetMetalCommandConstants.SheetMetalViewISOView); } catch (System.Exception ex) { Console.WriteLine(ex.Message); } finally { SolidEdgeCommunity.OleMessageFilter.Unregister(); } }