We are developing an equation driven 3d spline using VBA.
It generates a 3D spline, guide rail, and tool profile, but we're having trouble figuring out how to do the actual "sweep with guide rail" using the API.
Attached is an .ipt of the shapes our program is generating automatically.
The problem is we are having to manually create the sweep after the geometry is created.
How can we automate the sweep with guide rail process? Can someone point me in the right direction on how to do something like this?
Solved! Go to Solution.
This should get you going, it will do your first sweep feature :
Public Sub SweepFeature() 'reference the part doc Dim oPartDoc As PartDocument Set oPartDoc = ThisApplication.ActiveDocument 'reference to the sketches Dim oSketches As PlanarSketches Set oSketches = oPartDoc.ComponentDefinition.Sketches 'get the TOOL 1 sketch Dim oSketch As PlanarSketch Set oSketch = oSketches.Item("TOOL 1") ' Create a profile from oSketch (TOOL 1) Dim oProfile As Profile Set oProfile = oSketch.Profiles.AddForSolid 'get the PATH sketch Dim oSketch2 As PlanarSketch Set oSketch2 = oSketches.Item("PATH") 'get the first line in the sketch Dim oSketchLine1 As SketchLine Set oSketchLine1 = oSketch2.SketchLines.Item(1) 'set oSketchLine1 as the path Dim oPath As Path Set oPath = oPartDoc.ComponentDefinition.Features.CreatePath(o
SketchLine1) 'get the RAIL 1 sketch (a 3D sketch in this case, not a planar sketch) Dim oSketches3D As Sketches3D Set oSketches3D = oPartDoc.ComponentDefinition.Sketches3D Dim oSketch3D As Sketch3D Set oSketch3D = oSketches3D.Item("RAIL 1") 'get the first spline in the sketch Dim oSketchSpline As SketchSpline3D Set oSketchSpline = oSketch3D.SketchSplines3D.Item(1) 'set the spline as the guide path Dim oGuide As Path Set oGuide = oPartDoc.ComponentDefinition.Features.CreatePath(o SketchSpline) 'do the sweep feature with Path and Guide Rail Dim oSweep As SweepFeature Set oSweep = oPartDoc.ComponentDefinition.Features.SweepFeature s.AddUsingPathAndGuideRail(oProfile, oPath, oGuide, PartFeatureOperationEnum.kCutOperation, SweepProfileScalingEnum.kNoProfileScaling) End Sub
If you search in the API help ( ? > Additional Resources > Programming Help ) for 'sweep' you will find some help in there. Theres also some sample code in the help to create a sweep feature.
Hope this helps
Thanks a bunch, that worked out great!
Would you know how to go about doing a circular pattern of the swept features?