Create Exploded Views of an Assembly Example (C#)
This example shows how to create multiple exploded views of an assembly.
//----------------------------------------------------------------------------
// Preconditions:
// 1. Open an assembly document.
// 2. Press F5.
// 3. Inspect the Immediate window.
// 4. Press F5.
// 5. All of the views are exploded. Inspect the graphics window.
// 6. Press F5.
// 7. All of the views are collapsed. Inspect the graphics window.
// 8. Press F5.
// 9. Inspect the exploded assembly in the graphics window.
// 10. Press F5.
// 11. Inspect the collapsed assembly in the graphics window.
//
// Postconditions: None
//
---------------------------------------------------------------------------
using
Microsoft.VisualBasic;
using
System;
using
System.Collections;
using
System.Collections.Generic;
using
System.Data;
using
System.Diagnostics;
using
SolidWorks.Interop.sldworks;
using
SolidWorks.Interop.swconst;
using
System.Runtime.InteropServices;
namespace
CreateExplodedViews_CSharp.csproj
{
partial
class
SolidWorksMacro
{
ModelDoc2
swModel;
AssemblyDoc
swAssembly;
object[]
vViewName;
string
sViewName;
int
i;
public
void Main()
{
swModel = (ModelDoc2)swApp.ActiveDoc;
swAssembly = (AssemblyDoc)swModel;
// Create five exploded views
for
(i = 0; i <= 4; i++)
{
swAssembly.CreateExplodedView();
}
vViewName = (object[])swAssembly.GetExplodedViewNames();
Debug.Print("Number
of exploded views created: " + swAssembly.GetExplodedViewCount());
for
(i = 0; i <= vViewName.GetUpperBound(0); i++)
{
sViewName = (string)vViewName[i];
Debug.Print(" Exploded
view name: " + sViewName);
}
System.Diagnostics.Debugger.Break();
for
(i = 0; i <= vViewName.GetUpperBound(0); i++)
{
sViewName = (string)vViewName[i];
swAssembly.ShowExploded2(true,
sViewName);
}
System.Diagnostics.Debugger.Break();
for
(i = 0; i <= vViewName.GetUpperBound(0); i++)
{
sViewName = (string)vViewName[i];
swAssembly.ShowExploded2(false,
sViewName);
}
System.Diagnostics.Debugger.Break();
swAssembly.ViewExplodeAssembly();
System.Diagnostics.Debugger.Break();
swAssembly.ViewCollapseAssembly();
}
public
SldWorks
swApp;
}
}