Insert Extruded Reference Surface Example (VBA)
This example shows how to insert an extruded surface into a model.
'----------------------------------------------------------------------------
' Preconditions: Verify that the specified Part template exists.
'
' Postconditions: Boss-Extrude1, Surface-Extrude1,
' and 6 Solid Bodies are in
the FeatureManager design tree.
'------------------------------------
Option Explicit
Dim swApp As Object
Dim Part As SldWorks.ModelDoc2
Dim swFeatMgr As SldWorks.FeatureManager
Dim boolstatus As Boolean
Dim longstatus As Long
Sub main()
Set swApp = Application.SldWorks
Set Part = swApp.NewDocument("C:\ProgramData\SolidWorks\SolidWorks
2011\templates\Part.prtdot", 0, 0, 0)
swApp.ActivateDoc2 "Part1", False, longstatus
Set Part = swApp.ActiveDoc
Dim myModelView As SldWorks.ModelView
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized
Part.SketchManager.InsertSketch True
boolstatus = Part.Extension.SelectByID2("Front Plane",
"PLANE", -0.03891024234798, 0.02968528649877, 3.646590412283E-04, False, 0,
Nothing, 0)
Part.ClearSelection2 True
Dim vSkLines As Variant
vSkLines = Part.SketchManager.CreateCornerRectangle(-0.05517876768764,
0.008130204900836, 0, -0.02399076855985, -0.0155939995639, 0)
Part.ClearSelection2 True
vSkLines = Part.SketchManager.CreateCornerRectangle(-0.003731897331531,
0.008130204900836, 0, 0.0285223581767, -0.02998846069981, 0)
Part.ClearSelection2 True
Dim skSegment As SldWorks.SketchSegment
Set skSegment = Part.SketchManager.CreateCircle(0.053579,
0.013995, 0#, 0.06819, 0.018462, 0#)
Part.ClearSelection2 True
Part.SketchManager.InsertSketch True
Part.ShowNamedView2 "*Trimetric", 8
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("Sketch1", "SKETCH",
0, 0, 0, False, 0, Nothing, 0)
Dim myFeature As SldWorks.Feature
Dim myFeatMr As SldWorks.FeatureManager
Set myFeatMr = Part.FeatureManager
Set myFeature = myFeatMr.FeatureExtrusion2(True, False,
False, 0, 0, 0.05, 0.01, False, False, False, False, 0.01745329251994,
0.01745329251994, False, False, False, False, False, False, False, 0, 0, False)
boolstatus =
Part.Extension.SelectByID2("", "FACE", -0.03303425584835, -0.002425135081921,
0.04999999999995, False, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("", "FACE",
0.01139270278031, -0.006451084779542, 0.05000000000001, True, 256, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("", "FACE",
0.05275573322768, 0.01530932615179, 0.05000000000001, True, 256, Nothing, 0)
myFeatMr.FeatureExtruRefSurface
False, False, False, 0, 0, 0.01, 0.01, False, False, False, False,
0.01745329251994, 0.01745329251994, False, False, False, False, True, True,
False, False
End Sub