static void Main(string[] args) { SolidEdgeFramework.Application application = null; SolidEdgeDraft.DraftDocument draftDocument = null; SolidEdgeDraft.Sections sections = null; SolidEdgeDraft.Section section = null; SolidEdgeDraft.SectionSheets sectionSheets = null; SolidEdgeDraft.DrawingViews drawingViews = 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 active draft document. draftDocument = application.GetActiveDocument <SolidEdgeDraft.DraftDocument>(false); if (draftDocument != null) { // Get a reference to the Sections collection. sections = draftDocument.Sections; // Get a reference to the working section. section = sections.WorkingSection; // Get a reference to the working section sheets. sectionSheets = section.Sheets; foreach (var sheet in sectionSheets.OfType <SolidEdgeDraft.Sheet>()) { // Get a reference to the DrawingViews collection. drawingViews = sheet.DrawingViews; foreach (var drawingView in drawingViews.OfType <SolidEdgeDraft.DrawingView>()) { // DrawingView's of type igUserView cannot be converted. if (drawingView.DrawingViewType != SolidEdgeDraft.DrawingViewTypeConstants.igUserView) { // Converts the current DrawingView to an igUserView type containing simple geometry // and disassociates the drawing view from the source 3d Model. drawingView.Drop(); } } } } else { throw new System.Exception("No active document."); } } catch (System.Exception ex) { Console.WriteLine(ex.Message); } finally { SolidEdgeCommunity.OleMessageFilter.Unregister(); } }
static void Main(string[] args) { SolidEdgeFramework.Application application = null; SolidEdgeDraft.DraftDocument draftDocument = null; SolidEdgeDraft.Sections sections = null; SolidEdgeDraft.Section section = null; SolidEdgeDraft.SectionSheets sectionSheets = null; SolidEdgeDraft.DrawingViews drawingViews = 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(false); draftDocument = application.GetActiveDocument <SolidEdgeDraft.DraftDocument>(false); if (draftDocument != null) { // Get a reference to the Sections collection. sections = draftDocument.Sections; // Get a reference to the WorkingSection. section = sections.WorkingSection; // Get a reference to the Sheets collection. sectionSheets = section.Sheets; foreach (var sheet in sectionSheets.OfType <SolidEdgeDraft.Sheet>()) { Console.WriteLine("Processing sheet '{0}'.", sheet.Name); // Get a reference to the DrawingViews collection. drawingViews = sheet.DrawingViews; foreach (var drawingView in drawingViews.OfType <SolidEdgeDraft.DrawingView>()) { // Updates an out-of-date drawing view. drawingView.Update(); // Note: You can use ForceUpdate() even if it is not out-of-date. Console.WriteLine("Updated drawing view '{0}'.", drawingView.Name); } } } else { throw new System.Exception("No active document."); } } catch (System.Exception ex) { Console.WriteLine(ex.Message); } finally { SolidEdgeCommunity.OleMessageFilter.Unregister(); } }
static void Main(string[] args) { SolidEdgeFramework.Application application = null; SolidEdgeDraft.DraftDocument draftDocument = null; SolidEdgeDraft.Sections sections = null; SolidEdgeDraft.Section section = null; SolidEdgeDraft.SectionSheets sectionSheets = null; SolidEdgeDraft.DrawingViews drawingViews = null; SolidEdgeDraft.ModelMembers modelMembers = null; SolidEdgeDraft.GraphicMembers graphicMembers = 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(false); draftDocument = application.GetActiveDocument <SolidEdgeDraft.DraftDocument>(false); if (draftDocument != null) { // Get a reference to the Sections collection. sections = draftDocument.Sections; // Get a reference to the WorkingSection. section = sections.WorkingSection; // Get a reference to the Sheets collection. sectionSheets = section.Sheets; foreach (var sheet in sectionSheets.OfType <SolidEdgeDraft.Sheet>()) { Console.WriteLine(); Console.WriteLine("Processing sheet '{0}'.", sheet.Name); // Get a reference to the DrawingViews collection. drawingViews = sheet.DrawingViews; foreach (var drawingView in drawingViews.OfType <SolidEdgeDraft.DrawingView>()) { Console.WriteLine(); Console.WriteLine("Processing drawing view '{0}'.", drawingView.Name); double xOrigin = 0; double yOrigin = 0; drawingView.GetOrigin(out xOrigin, out yOrigin); Console.WriteLine("Origin: x={0} y={1}.", xOrigin, yOrigin); // Get a reference to the ModelMembers collection. modelMembers = drawingView.ModelMembers; foreach (var modelMember in modelMembers.OfType <SolidEdgeDraft.ModelMember>()) { Console.WriteLine("Processing model member '{0}'.", modelMember.FileName); Console.WriteLine("ComponentType: '{0}'.", modelMember.ComponentType); Console.WriteLine("DisplayType: '{0}'.", modelMember.DisplayType); Console.WriteLine("Type: '{0}'.", modelMember.Type); } // Get a reference to the ModelMembers collection. graphicMembers = drawingView.GraphicMembers; ReportGraphicMembers(graphicMembers); } } } else { throw new System.Exception("No active document."); } } catch (System.Exception ex) { Console.WriteLine(ex.Message); } finally { SolidEdgeCommunity.OleMessageFilter.Unregister(); } }