Create 360°
Revolve Feature Example (VBA)
This example shows how to create a 360°
revolve feature.
'----------------------------------------------------------------------------
' Preconditions: A part document is open and contains
' an
axis and a sketch of a rectangle
' to
revolve around the axis.
'
' Postconditions: A 360°
revolve feature is created.
'---------------------------------------------------------------------------
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swModelDocExt As SldWorks.ModelDocExtension
Dim swFeatMgr As SldWorks.FeatureManager
Dim swFeat As SldWorks.Feature
Dim swRevolveFeat As SldWorks.RevolveFeatureData2
Dim revolveType As Long
Dim revolveAngle As Double
Dim boolstatus As Boolean
Sub main()
Set
swApp = Application.SldWorks
Set
swModel = swApp.ActiveDoc
Set
swModelDocExt = swModel.Extension
boolstatus
= swModelDocExt.SelectByID2("Axis1",
"AXIS", -0.001439, 0.008691, -0.001923, False, 4, Nothing, 0)
boolstatus
= swModelDocExt.SelectByID2("Sketch3",
"SKETCH", 0, 0, 0, True, 0, Nothing, 0)
'
Demonstrate that if the angle is specified as anything other than
'
2 PI (6.2831853071796), you do not get good results
Set
swFeatMgr = swModel.FeatureManager
Set swFeat = swFeatMgr.FeatureRevolve2
True, True, False, False, False, False, 0, 0, 6.28318530718, 0, False, False, 0.01,
0.01, 0, 0, 0, True, True, True
swModel.ViewZoomtofit2
'
Modify the revolve feature using the enumerator that correctly
'
creates a 360°
revolve feature
Set
swRevolveFeat = swFeat.GetDefinition
'
Assign the type of revolve as defined in swRevolveType_e
swRevolveFeat.Type = 3 ' swRevolveTypeOneDirection360Degrees
boolstatus
= swFeat.ModifyDefinition(swRevolveFeat,
swModel, Nothing)
End Sub