What method do you use to retrieve the length of weldment?

I found the API files, which will be merged into my codes to get length of weldment. Do you think it is suitable or not?

----------------------------------------------------

Option Explicit

Public Enum swSketchSegments_e

    swSketchLine = 0

    swSketchArc = 1

    swSketchEllipse = 2

    swSketchSpline = 3

    swSketchTEXT = 4

    swSketchParabola = 5

End Enum

Sub main()

    Dim swApp                           As SldWorks.SldWorks

    Dim swModel                         As SldWorks.ModelDoc2

    Dim swSelMgr                        As SldWorks.SelectionMgr

    Dim swFeat                          As SldWorks.feature

    Dim swSketch                        As SldWorks.sketch

    Dim i                               As Long

    Dim bRet                            As Boolean

   

    Dim vSketchSeg                      As Variant

    Dim swSketchSeg                     As SldWorks.SketchSegment

    Dim nLength                         As Double

   

   

    Set swApp = CreateObject("SldWorks.Application")

    Set swModel = swApp.ActiveDoc

    Set swSelMgr = swModel.SelectionManager

    Set swFeat = swSelMgr.GetSelectedObject5(1)

    Set swSketch = swFeat.GetSpecificFeature2

   

    vSketchSeg = swSketch.GetSketchSegments

    For i = 0 To UBound(vSketchSeg)

        Set swSketchSeg = vSketchSeg(i)

                   

        ' Ignore construction lines

        If swSketchSeg.ConstructionGeometry = False Then

            ' ignore text

            If swSketchTEXT <> swSketchSeg.GetType Then

                nLength = nLength + swSketchSeg.GetLength

            End If

        End If

    Next i

   

    Debug.Print "File = " & swModel.GetPathName

    Debug.Print "  Sketch = " & swFeat.Name

    Debug.Print "    Total length = " & nLength * 1000# & " mm"

End Sub

SolidworksApi macros