I am using the following code supplied by Josh Brady here.
Public Sub main()
Dim swApp As SldWorks
Dim swModel As ModelDoc2
Dim sSkSegmentsName(5) As String
Dim swSelMgr As SolidWorks.Interop.sldworks.SelectionMgr
Dim swFeat As SolidWorks.Interop.sldworks.Feature
Dim swSketch As SolidWorks.Interop.sldworks.Sketch
Dim vSkSegArr As Object
Dim vSkSeg As Object
Dim swSkSeg As SolidWorks.Interop.sldworks.SketchSegment
Dim swSkLine As SolidWorks.Interop.sldworks.SketchLine
Dim swSkArc As SolidWorks.Interop.sldworks.SketchArc
Dim swSkEllipse As SolidWorks.Interop.sldworks.SketchEllipse
Dim swSkSpline As SolidWorks.Interop.sldworks.SketchSpline
Dim swSkText As SolidWorks.Interop.sldworks.SketchText
Dim swSkParabola As SolidWorks.Interop.sldworks.SketchParabola
Dim vID As Object
Dim write As String = "Begin:" & vbCrLf
Dim value As Double = 0
Try
swApp = Me.SolidWorksApplication
swModel = swApp.ActiveDoc
swSelMgr = swModel.SelectionManager
swFeat = swSelMgr.GetSelectedObject5(1)
swSketch = swFeat.GetSpecificFeature2
System.Diagnostics.Trace.WriteLine("Feature = " & swFeat.Name & " [" & swSketch.Is3D & "]")
System.Diagnostics.Trace.WriteLine(" Sketch Segments:")
vSkSegArr = swSketch.GetSketchSegments
For Each vSkSeg In vSkSegArr
swSkSeg = vSkSeg
vID = swSkSeg.GetID
System.Diagnostics.Trace.WriteLine("ID = [" & vID(0) & "," & vID(1) & "]")
Select Case swSkSeg.GetType
Case swSkSegments_e.swSketchLINE
swSkLine = swSkSeg
swSkLine.Angle = 0.6
System.Diagnostics.Trace.WriteLine("Line")
swSkLine.Angle = 0.9
Case swSkSegments_e.swSketchARC
swSkArc = swSkSeg
System.Diagnostics.Trace.WriteLine("Arc")
Case swSkSegments_e.swSketchELLIPSE
swSkEllipse = swSkSeg
System.Diagnostics.Trace.WriteLine("Ellipse")
Case swSkSegments_e.swSketchSPLINE
swSkSpline = swSkSeg
System.Diagnostics.Trace.WriteLine("Spline")
Case swSkSegments_e.swSketchTEXT
swSkText = swSkSeg
System.Diagnostics.Trace.WriteLine("Text")
Case swSkSegments_e.swSketchPARABOLA
swSkParabola = swSkSeg
System.Diagnostics.Trace.WriteLine("Parabola")
Case Else
System.Diagnostics.Trace.WriteLine("Else statement - not a sketch entity")
End Select
Next vSkSeg
Catch ex As Exception
System.Diagnostics.Trace.WriteLine(ex.ToString)
End Try
End Sub
I am trying to delete all splines in a sketch. The SketchSpline class does not have a delete method. I have been looking and looking for the right way/class to use but am having a hard time finding the correct class. I am using a VSTA app and the vb.net examples in the help file all seem to actually be VB6 examples.
Can someone point me in the right direction here?
SolidworksApi macros