dim swApp
dim storePath
dim sw2003api
Private Type BROWSEINFO
   hwndOwner       As Long
   pIDLRoot        As Long
   pszDisplayName  As Long
   lpszTitle       As String
   ulFlags         As Long
   lpfnCallback    As Long
   lParam          As Long
  iImage          As Long
End Type
Private Declare Function SHBrowseForFolder Lib "Shell32" (lpbi As BROWSEINFO) As Long
Private Declare Function SHGetPathFromIDList Lib "Shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long
Private Declare Sub CoTaskMemFree Lib "ole32" (ByVal hMem As Long)
Private Const MAX_PATH = 260
'Directories only
Private Const BIF_RETURNONLYFSDIRS = &H1&
'Windows 2000 (Shell32.dll 5.0) extended dialog
Private Const BIF_NEWDIALOGSTYLE = &H40
' show edit box
Private Const BIF_EDITBOX = &H10&
Function getFeatureByTypeOcc(model, typ, nr)  
  Set feat = model.FirstFeature ' Get the 1st feature in part
  Set res = Nothing
  Count = 0
  Do While Not feat Is Nothing ' While we have a valid feature
    If feat.GetTypeName() = typ Then
      Count = Count + 1
      If Count = nr Then
        Set res = feat
        Exit Do
      End If
    End If
    Set feat = feat.GetNextFeature() ' Get the next feature
  Loop ' Continue until no more
  Set getFeatureByTypeOcc = res
End Function
Function getLastFeatureByType(model,typ)  
  Set feat = model.FirstFeature ' Get the 1st feature in part
  Set res = Nothing
  Count = 0
  Do While Not feat Is Nothing ' While we have a valid feature
    If feat.GetTypeName() = typ Then
      Set res = feat
    End If
    Set feat = feat.GetNextFeature() ' Get the next feature
  Loop ' Continue until no more
  Set getLastFeatureByType = res
End Function
' this code with copy a matrix to a other
Function copyMat4x4(source)
Dim res(0 To 15) As Double
For i = 0 To 15
 res(i) = source(i)
Next
copyMat4x4 = res
End Function

' This code creates a mat from a sw mat
Function createMatFromSWMat(source)
 Dim res(0 To 15) As Double
 res(0) = source(0)
 res(1) = source(1)
 res(2) = source(2)
 res(3) = 0
 res(4) = source(3)
 res(5) = source(4)
 res(6) = source(5)
 res(7) = 0
 res(8) = source(6)
 res(9) = source(7)
 res(10) = source(8)
 res(11) = 0
 res(12) = source(9)
 res(13) = source(10)
 res(14) = source(11)
 res(15) = source(12)
 createMatFromSWMat = res
End Function
Function createSWMatFromMat(source)
 Dim res(0 To 15) As Double
 res(0) = source(0)
 res(1) = source(1)
 res(2) = source(2)
 res(3) = source(4)
 res(4) = source(5)
 res(5) = source(6)
 res(6) = source(8)
 res(7) = source(9)
 res(8) = source(10)
 res(9) = source(12)
 res(10) = source(13)
 res(11) = source(14)
 res(12) = source(15)
 res(13) = 0
 res(14) = 0
 res(15) = 0
 createSWMatFromMat = res
End Function
Function createMat4x4FromValues(x1,x2,x3,y1,y2,y3,z1,z2,z3,t1,t2,t3)
 Dim res(0 To 15) As Double
 res(0) = x1
 res(1) = x2
 res(2) = x3
 res(3) = 0
 res(4) = y1
 res(5) = y2
 res(6) = y3
 res(7) = 0
 res(8) = z1
 res(9) = z2
 res(10) =z3
 res(11) = 0
 res(12) = t1
 res(13) = t2
 res(14) = t3
 res(15) = 1
 createMat4x4FromValues = res
End Function
' this code will mult a common mat with any other stuff
Function multMatMat(ld, xld, yld, rd, xrd, yrd)
  mulRes = yld * xrd
  'Dim od(0 To 0) As Variant
  ReDim od(mulRes - 1) As Double
  For i = 0 To mulRes - 1
   od(i) = 0#
  Next
  y = 0
  While y < yld
    x = 0
    While x < xrd
      i = 0
      While i < xld
       od(x * yld + y) = od(x * yld + y) + ld(i * yld + y) * rd(x * yrd + i)
       i = i + 1
      Wend
      x = x + 1
    Wend
    y = y + 1
  Wend
  multMatMat = od

End Function
' this code will mult a vector with a matrix
Function mulMat4x4Values3d(mat, x,y,z)
  tmp = createVec4d(x, y, z, 1)
  res = multMatMat(mat, 4, 4, tmp, 1, 3)
  mulMat4x4Values3d = createVec3d(res(0), res(1), res(2))
End Function
Function mulMat4x4Vec3d(mat, vec)
  tmp = createVec4d(vec(0), vec(1), vec(2), 1)
  res = multMatMat(mat, 4, 4, tmp, 1, 3)
  mulMat4x4Vec3d = createVec3d(res(0), res(1), res(2))
End Function
Function mulMat4x4Mat4x4(mat1, mat2)
  mulMat4x4Mat4x4 = multMatMat(mat1, 4, 4, mat2, 4, 4)
End Function
' create a 4x4 matrix
Function createMat4x4()
 Dim res(0 To 15) As Double
 for i = 0 to 15 
 res(i) = 0
 next
 createMat4x4 = res
End Function
Function createMat4x4Ident()
 Dim res(0 To 15) As Double
 res(0) = 1
 res(5) = 1
 res(10) = 1
 res(15) = 1
 res(1) = 0
 res(2) = 0
 res(3) = 0
 res(4) = 0
 res(6) = 0
 res(7) = 0
 res(8) = 0
 res(9) = 0
 res(11) = 0
 res(12) = 0
 res(13) = 0
 res(14) = 0
 createMat4x4Ident = res
End Function
' this function create a new vector
Function createVec3d(x, y, z)
 Dim res(0 To 2) As Double
 res(0) = x
 res(1) = y
 res(2) = z
 createVec3d = res
End Function
' this function create a new vector
Function createVec4d(x, y, z, w)
 Dim res(0 To 3) As Double
 res(0) = x
 res(1) = y
 res(2) = z
 res(3) = w
 createVec4d = res
End Function

Function getMatTVec(mat)
 getMatTVec = createVec3d(mat(12), mat(13), mat(14))
End Function

Sub setMatTVec(mat, v)
 mat(12) = v(0)
 mat(13) = v(1)
 mat(14) = v(2)
End Sub
Sub setMatXVec(mat, v)
 mat(0) = v(0)
 mat(1) = v(1)
 mat(2) = v(2)
End Sub
Sub setMatYVec(mat, v)
 mat(4) = v(0)
 mat(5) = v(1)
 mat(6) = v(2)
End Sub
Sub setMatZVec(mat, v)
 mat(8) = v(0)
 mat(9) = v(1)
 mat(10) = v(2)
End Sub
Sub setMatScale(mat, s)
 mat(15) = s
End Sub
Function getMatXVec(mat)
 getMatXVec = createVec3d(mat(0), mat(1), mat(2))
End Function
Function getMatYVec(mat)
 getMatYVec = createVec3d(mat(4), mat(5), mat(6))
End Function
Function getMatZVec(mat)
 getMatZVec = createVec3d(mat(8), mat(9), mat(10))
End Function

Function negVec3d(v)
 negVec3d = createVec3d(-v(0), -v(1), -v(2))
End Function
Function scaleVec3d(v,s)
 scaleVec3d = createVec3d(v(0)*s,v(1)*s,v(2)*s)
End Function
' invert a 4x4 matrix
Function invMat4x4(source)
target = copyMat4x4(source)
setMatTVec target, createVec3d(0, 0, 0)
 target(1) = source(4)
 target(4) = source(1)
 target(2) = source(8)
 target(8) = source(2)
 target(6) = source(9)
 target(9) = source(6)
 setMatScale target,1
 t = getMatTVec(source)
 v = mulMat4x4Vec3d(target, t)
 setMatTVec target, negVec3d(v)
 invMat4x4 = target
End Function
Function getFaceFromModel(part, pos, normal)
 Dim partBodies As Variant
 partBodies = part.GetBodies(swSolidBody)
 For k = LBound(partBodies) To UBound(partBodies)
   found = 0
   Dim body As Object
   Set body = partBodies(k)
   Set face = body.GetFirstFace()
   getFaceFromModel = noting
   Do While Not face Is Nothing ' While we have a valid feature
     Set sur = face.GetSurface()
     If sur.IsPlane() Then
       planePara = sur.PlaneParams
       faceNormal = face.normal
       nTest = faceNormal(0) * normal(0) + faceNormal(1) * normal(1) + faceNormal(2) * normal(2)
       If nTest > 1 - 0.000001 Then
         ' check projection
         closeRes = face.GetClosestPointOn(pos(0), pos(1), pos(2))
         dTest = (pos(0) - closeRes(0)) * (pos(0) - closeRes(0)) + (pos(1) - closeRes(1)) * (pos(1) - closeRes(1)) + (pos(2) - closeRes(2)) * (pos(2) - closeRes(2))
         If dTest < 0.000001 Then
           Set getFaceFromModel = face
           found=1
           Exit Do
         End If
       End If
     else
       If sur.IsCylinder() then
         closeRes = face.GetClosestPointOn(pos(0), pos(1), pos(2))
         dTest = (pos(0) - closeRes(0)) * (pos(0) - closeRes(0)) + (pos(1) - closeRes(1)) * (pos(1) - closeRes(1)) + (pos(2) - closeRes(2)) * (pos(2) - closeRes(2))
         If dTest < 0.00000001 Then
           res=sur.EvaluateAtPoint(closeRes(0),closeRes(1),closeRes(2))
           nTest=res(0)*normal(0)+res(1)*normal(1)+res(2)*normal(2)
           if nTest>1-0.00000001 then
             Set getFaceFromModel = face
             found=1
             Exit Do
           End if
         End if
       End if
     End if
     Set face = face.GetNextFace ' Get the next Face
   Loop
   If (found = 1) Then
     Exit For
   End If
 Next k
End Function
Function getEdgeFromModel(part, pos,byref edgeRet)
 Dim partBodies As Variant
 partBodies = part.GetBodies(swSolidBody)
 For k = LBound(partBodies) To UBound(partBodies)
   Dim body As Object
   Set body = partBodies(k)
   edges= body.GetEdges()
   start= LBound(edges)
   ende = UBound(edges)
   For i = start To ende
     Set edge = edges(i)
     closeRes=edge.GetClosestPointOn(pos(0),pos(1),pos(2))
     dTest = (pos(0) - closeRes(0)) * (pos(0) - closeRes(0)) + (pos(1) - closeRes(1)) * (pos(1) - closeRes(1)) + (pos(2) - closeRes(2)) * (pos(2) - closeRes(2))
     If dTest < 0.00000001 Then
       set edgeRet=edge
       getEdgeFromModel=true
       exit function
     End If
   Next i
 Next k
 getEdgeFromModel=false
End Function
sub cLn(part,wMat,x1,y1,x2,y2)
pk1=mulMat4x4Values3d(wMat,x1,y1,0)
pk2=mulMat4x4Values3d(wMat,x2,y2,0)
Part.CreateLine2 pk1(0),pk1(1),0,pk2(0),pk2(1),0
end sub
sub cCLn(part,wMat,x1,y1,x2,y2)
pk1=mulMat4x4Values3d(wMat,x1,y1,0)
pk2=mulMat4x4Values3d(wMat,x2,y2,0)
Part.CreateCenterLineVB pk1(0),pk1(1),0,pk2(0),pk2(1),0
end sub
sub cArc(part,wMat,x1,y1,x2,y2,x3,y3)
pk1=mulMat4x4Values3d(wMat,x1,y1,0)
pk2=mulMat4x4Values3d(wMat,x2,y2,0)
pk3=mulMat4x4Values3d(wMat,x3,y3,0)
Part.Create3PointArc pk1(0),pk1(1),0,pk3(0),pk3(1),0,pk2(0),pk2(1),0
end sub
sub cCir(part,wMat,x1,y1,rad)
pk1=mulMat4x4Values3d(wMat,x1,y1,0)
Part.CreateCircleByRadius2 pk1(0),pk1(1),0,rad
end sub
Public Function BrowseForFolder() As String
  Dim tBI         As BROWSEINFO
  Dim lngPIDL     As Long
  Dim strPath     As String
  With tBI
    .lpszTitle = ""
    .ulFlags = BIF_RETURNONLYFSDIRS Or BIF_NEWDIALOGSTYLE Or BIF_EDITBOX
  End With
  lngPIDL = SHBrowseForFolder(tBI)
  If (lngPIDL <> 0) Then
    ' get path from ID list
    strPath = Space$(MAX_PATH)
    SHGetPathFromIDList lngPIDL, strPath
    strPath = Left$(strPath, InStr(strPath, Chr$(0)) - 1)
    ' release list
    CoTaskMemFree lngPIDL
  End If
  BrowseForFolder = strPath
End Function
Sub CreatePart0
dim error as long
set res=swApp.OpenDoc2 ( storePath & "C100_H11_2.sldprt",1,true,false,true,error)
if not res is nothing then
 exit sub
end if
set part=swApp.NewPart
part.SetAddToDB(true)
part.SetDisplayWhenAdded (false)
part.SetUnits 3,2,64,5,false
swSumInfoTitleVar = 0
swSumInfoAuthorVar = 2
Set swModel = swApp.ActiveDoc
swModel.AddCustomInfo3 "", "NB", 30, "C100-H11-2
swModel.AddCustomInfo3 "", "NN", 30, "C Series
swModel.AddCustomInfo3 "", "NT", 30, "Smalley Crest-to-Crest Springs
swModel.AddCustomInfo3 "", "NBSYN", 30, "$PARTNBR.-$HEIGHT.
swModel.AddCustomInfo3 "", "LINA", 30, "C100-H11-2
swModel.AddCustomInfo3 "", "PARTID", 30, "6059
swModel.AddCustomInfo3 "", "PARTNBR", 30, "C100-H11
swModel.AddCustomInfo3 "", "HEIGHT", 30, "2.000
swModel.AddCustomInfo3 "", "FREEHEIGHT", 30, "2.000
swModel.AddCustomInfo3 "", "WORKHEIGHT", 30, "1.083
swModel.AddCustomInfo3 "", "SPRINGTYPE", 30, "c
swModel.AddCustomInfo3 "", "BORE", 30, "1.000
swModel.AddCustomInfo3 "", "SHAFT", 30, "0.730
swModel.AddCustomInfo3 "", "LOAD", 30, "25.000
swModel.AddCustomInfo3 "", "MAXOD", 30, "0.975
swModel.AddCustomInfo3 "", "NBROFWAVES", 30, "3.500
swModel.AddCustomInfo3 "", "NBROFTURNS", 30, "24
swModel.AddCustomInfo3 "", "WIRETHICKNESS", 30, "0.015
swModel.AddCustomInfo3 "", "SLDHEIGHT", 30, "0.360
swModel.AddCustomInfo3 "", "WIRERADIALWALL", 30, "0.094
swModel.AddCustomInfo3 "", "SPRINGRATE", 30, "27.000
swModel.AddCustomInfo3 "", "NBROFSHIMS", 30, "0.000
swModel.AddCustomInfo3 "", "BOREPILOT", 30, "Operate
swModel.AddCustomInfo3 "", "UNITS", 30, "standard
swModel.AddCustomInfo3 "", "GROUPSORTORDER", 30, "30.000
swModel.AddCustomInfo3 "", "ROW", 30, "163.000
swModel.AddCustomInfo3 "", "HEIGHT1", 30, "2.000
swModel.AddCustomInfo3 "", "PPATH", 30, "cresttocrest_spring_assembly.prj
swModel.AddCustomInfo3 "", "HEIGHT0", 30, "0.370
swModel.AddCustomInfo3 "", "SLDHEIGHT0", 30, "0.375
swModel.AddCustomInfo3 "", "ASSRATING", 30, "Heavy
swModel.AddCustomInfo3 "", "KT", 30, "DUMMY
swModel.AddCustomInfo3 "", "CreationOption_UseAsmMates", 30, "0
swModel.AddCustomInfo3 "", "SUPPLIER", 30, "Smalley
swModel.AddCustomInfo3 "", "ARTICLENO", 30, "C100-H11-2
swModel.AddCustomInfo3 "", "BOMINFO", 30, "C100-H11-2
swModel.AddCustomInfo3 "", "CREATOR", 30, "CADENAS GmbH
swModel.SummaryInfo (swSumInfoAuthorVar)="Smalley"
swModel.SummaryInfo (swSumInfoTitleVar)="C100-H11-2"
valRGB=part.MaterialPropertyValues
valRGB(0)=0.68999999761581
valRGB(1)=0.68999999761581
valRGB(2)=0.68999999761581
part.MaterialPropertyValues=valRGB
Dim featMgr as object
if (sw2003api=1) then
  set featMgr=part.FeatureManager
End If
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat4=getLastFeatureByType(part,"RefPlane")
feat4.select false
codeBag0 part
set feat4=getLastFeatureByType(part,"ProfileFeature")
feat4.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat6=getLastFeatureByType(part,"RefPlane")
feat6.select false
codeBag1 part
set feat6=getLastFeatureByType(part,"ProfileFeature")
feat6.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat8=getLastFeatureByType(part,"RefPlane")
feat8.select false
codeBag2 part
set feat8=getLastFeatureByType(part,"ProfileFeature")
feat8.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat10=getLastFeatureByType(part,"RefPlane")
feat10.select false
codeBag3 part
set feat10=getLastFeatureByType(part,"ProfileFeature")
feat10.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat12=getLastFeatureByType(part,"RefPlane")
feat12.select false
codeBag4 part
set feat12=getLastFeatureByType(part,"ProfileFeature")
feat12.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat14=getLastFeatureByType(part,"RefPlane")
feat14.select false
codeBag5 part
set feat14=getLastFeatureByType(part,"ProfileFeature")
feat14.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat16=getLastFeatureByType(part,"RefPlane")
feat16.select false
codeBag6 part
set feat16=getLastFeatureByType(part,"ProfileFeature")
feat16.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat18=getLastFeatureByType(part,"RefPlane")
feat18.select false
codeBag7 part
set feat18=getLastFeatureByType(part,"ProfileFeature")
feat18.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat20=getLastFeatureByType(part,"RefPlane")
feat20.select false
codeBag8 part
set feat20=getLastFeatureByType(part,"ProfileFeature")
feat20.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat22=getLastFeatureByType(part,"RefPlane")
feat22.select false
codeBag9 part
set feat22=getLastFeatureByType(part,"ProfileFeature")
feat22.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat24=getLastFeatureByType(part,"RefPlane")
feat24.select false
codeBag10 part
set feat24=getLastFeatureByType(part,"ProfileFeature")
feat24.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat26=getLastFeatureByType(part,"RefPlane")
feat26.select false
codeBag11 part
set feat26=getLastFeatureByType(part,"ProfileFeature")
feat26.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat28=getLastFeatureByType(part,"RefPlane")
feat28.select false
codeBag12 part
set feat28=getLastFeatureByType(part,"ProfileFeature")
feat28.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat30=getLastFeatureByType(part,"RefPlane")
feat30.select false
codeBag13 part
set feat30=getLastFeatureByType(part,"ProfileFeature")
feat30.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat32=getLastFeatureByType(part,"RefPlane")
feat32.select false
codeBag14 part
set feat32=getLastFeatureByType(part,"ProfileFeature")
feat32.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat34=getLastFeatureByType(part,"RefPlane")
feat34.select false
codeBag15 part
set feat34=getLastFeatureByType(part,"ProfileFeature")
feat34.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat36=getLastFeatureByType(part,"RefPlane")
feat36.select false
codeBag16 part
set feat36=getLastFeatureByType(part,"ProfileFeature")
feat36.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat38=getLastFeatureByType(part,"RefPlane")
feat38.select false
codeBag17 part
set feat38=getLastFeatureByType(part,"ProfileFeature")
feat38.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat40=getLastFeatureByType(part,"RefPlane")
feat40.select false
codeBag18 part
set feat40=getLastFeatureByType(part,"ProfileFeature")
feat40.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat42=getLastFeatureByType(part,"RefPlane")
feat42.select false
codeBag19 part
set feat42=getLastFeatureByType(part,"ProfileFeature")
feat42.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat44=getLastFeatureByType(part,"RefPlane")
feat44.select false
codeBag20 part
set feat44=getLastFeatureByType(part,"ProfileFeature")
feat44.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat46=getLastFeatureByType(part,"RefPlane")
feat46.select false
codeBag21 part
set feat46=getLastFeatureByType(part,"ProfileFeature")
feat46.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat48=getLastFeatureByType(part,"RefPlane")
feat48.select false
codeBag22 part
set feat48=getLastFeatureByType(part,"ProfileFeature")
feat48.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,1,0),1
part.BlankRefGeom
set feat50=getLastFeatureByType(part,"RefPlane")
feat50.select false
codeBag23 part
set feat50=getLastFeatureByType(part,"ProfileFeature")
feat50.select false
if (sw2003api=0) then
  part.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0
else
  featMgr.FeatureExtrusion 0,0,1,0,0,0.014859,0.014859,1,1,0,0,0,0,0,0,0,0,1,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,0,-1),1
part.BlankRefGeom
set feat53=getLastFeatureByType(part,"RefPlane")
feat53.select false
codeBag24 part
set feat53=getLastFeatureByType(part,"ProfileFeature")
feat53.select false
if (sw2003api=0) then
  part.FeatureCut 1,0,1,0,0,0.0508,0.0508,1,1,0,0,0,0,0,0
else
  featMgr.FeatureCut 1,0,1,0,0,0.0508,0.0508,1,1,0,0,0,0,0,0,0,0,0,1,1
end if
part.CreatePlaneFixed createVec3d(0,0,0),createVec3d(1,0,0),createVec3d(0,0,-1),1
part.BlankRefGeom
set feat55=getLastFeatureByType(part,"RefPlane")
feat55.select false
codeBag25 part
set feat55=getLastFeatureByType(part,"ProfileFeature")
feat55.select false
if (sw2003api=0) then
  part.FeatureCut 1,0,1,0,0,0.0508,0.0508,1,1,0,0,0,0,0,0
else
  featMgr.FeatureCut 1,0,1,0,0,0.0508,0.0508,1,1,0,0,0,0,0,0,0,0,0,1,1
end if
part.SetDisplayWhenAdded (true)
part.SetAddToDB(false)
part.SaveAs2 storePath & "C100_H11_2.sldprt",0,0,false
End Sub
sub codeBag0(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.00086783333333333,-0.0123825,0.0017610666666667,-0.0092868749999999,0.0008678333333333
cArc part,wMat,-0.0092868749999999,0.0008678333333333,-0.00619125,0,-0.003095625,0.00086783333333332
cArc part,wMat,-0.003095625,0.00086783333333332,8.8453945471608e-019,0.0017610666666667,0.0030956249999999,0.00086783333333337
cArc part,wMat,0.0030956249999999,0.00086783333333337,0.00619125,-7.0499162063697e-019,0.0092868750000001,0.0008678333333334
cArc part,wMat,0.0092868750000001,0.0008678333333334,0.0123825,0.0017610666666667,0.015478125,0.00086783333333333
cLn part,wMat,0.015478125,0.00086783333333333,0.015478125,0.0012488333333333
cArc part,wMat,0.015478125,0.0012488333333333,0.0123825,0.0021420666666667,0.009286875,0.0012488333333333
cArc part,wMat,0.009286875,0.0012488333333333,0.00619125,0.000381,0.0030956249999999,0.0012488333333334
cArc part,wMat,0.0030956249999999,0.0012488333333334,8.8453945471608e-019,0.0021420666666667,-0.0030956250000001,0.0012488333333333
cArc part,wMat,-0.0030956250000001,0.0012488333333333,-0.00619125,0.000381,-0.0092868750000001,0.0012488333333334
cArc part,wMat,-0.0092868750000001,0.0012488333333334,-0.0123825,0.0021420666666667,-0.015478125,0.0012488333333333
cLn part,wMat,-0.015478125,0.0012488333333333,-0.015478125,0.00086783333333333
Part.InsertSketch
end sub

sub codeBag1(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.0033655,-0.015478125,0.0029845
cArc part,wMat,-0.015478125,0.0029845,-0.0123825,0.0020912666666667,-0.0092868749999999,0.0029845
cArc part,wMat,-0.0092868749999999,0.0029845,-0.00619125,0.0038523333333333,-0.003095625,0.0029845
cArc part,wMat,-0.003095625,0.0029845,-1.5961309331928e-018,0.0020912666666667,0.003095625,0.0029845
cArc part,wMat,0.003095625,0.0029845,0.00619125,0.0038523333333333,0.0092868750000001,0.0029844999999999
cArc part,wMat,0.0092868750000001,0.0029844999999999,0.0123825,0.0020912666666667,0.015478125,0.0029845
cLn part,wMat,0.015478125,0.0029845,0.015478125,0.0033655
cArc part,wMat,0.015478125,0.0033655,0.0123825,0.0024722666666667,0.0092868750000002,0.0033654999999999
cArc part,wMat,0.0092868750000002,0.0033654999999999,0.00619125,0.0042333333333333,0.0030956250000001,0.0033655000000001
cArc part,wMat,0.0030956250000001,0.0033655000000001,-1.5961309331928e-018,0.0024722666666667,-0.0030956250000001,0.0033655
cArc part,wMat,-0.0030956250000001,0.0033655,-0.00619125,0.0042333333333333,-0.0092868750000001,0.0033654999999999
cArc part,wMat,-0.0092868750000001,0.0033654999999999,-0.0123825,0.0024722666666667,-0.015478125,0.0033655
Part.InsertSketch
end sub

sub codeBag2(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.0050757666666667,-0.0123825,0.005969,-0.0092868749999999,0.0050757666666666
cArc part,wMat,-0.0092868749999999,0.0050757666666666,-0.00619125,0.0042079333333333,-0.003095625,0.0050757666666667
cArc part,wMat,-0.003095625,0.0050757666666667,8.8453945471608e-019,0.005969,0.0030956249999999,0.0050757666666667
cArc part,wMat,0.0030956249999999,0.0050757666666667,0.00619125,0.0042079333333333,0.0092868750000001,0.0050757666666667
cArc part,wMat,0.0092868750000001,0.0050757666666667,0.0123825,0.005969,0.015478125,0.0050757666666667
cLn part,wMat,0.015478125,0.0050757666666667,0.015478125,0.0054567666666667
cArc part,wMat,0.015478125,0.0054567666666667,0.0123825,0.00635,0.009286875,0.0054567666666667
cArc part,wMat,0.009286875,0.0054567666666667,0.00619125,0.0045889333333333,0.0030956249999999,0.0054567666666667
cArc part,wMat,0.0030956249999999,0.0054567666666667,8.8453945471608e-019,0.00635,-0.0030956250000001,0.0054567666666666
cArc part,wMat,-0.0030956250000001,0.0054567666666666,-0.00619125,0.0045889333333333,-0.0092868750000001,0.0054567666666667
cArc part,wMat,-0.0092868750000001,0.0054567666666667,-0.0123825,0.00635,-0.015478125,0.0054567666666667
cLn part,wMat,-0.015478125,0.0054567666666667,-0.015478125,0.0050757666666667
Part.InsertSketch
end sub

sub codeBag3(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.0075988333333333,-0.015478125,0.0072178333333333
cArc part,wMat,-0.015478125,0.0072178333333333,-0.0123825,0.0063246,-0.0092868749999999,0.0072178333333334
cArc part,wMat,-0.0092868749999999,0.0072178333333334,-0.00619125,0.0080856666666667,-0.003095625,0.0072178333333333
cArc part,wMat,-0.003095625,0.0072178333333333,-1.5961309331928e-018,0.0063246,0.003095625,0.0072178333333333
cArc part,wMat,0.003095625,0.0072178333333333,0.00619125,0.0080856666666667,0.0092868750000001,0.0072178333333333
cArc part,wMat,0.0092868750000001,0.0072178333333333,0.0123825,0.0063246,0.015478125,0.0072178333333333
cLn part,wMat,0.015478125,0.0072178333333333,0.015478125,0.0075988333333333
cArc part,wMat,0.015478125,0.0075988333333333,0.0123825,0.0067056,0.0092868750000002,0.0075988333333332
cArc part,wMat,0.0092868750000002,0.0075988333333332,0.00619125,0.0084666666666667,0.0030956250000001,0.0075988333333334
cArc part,wMat,0.0030956250000001,0.0075988333333334,-1.5961309331928e-018,0.0067056,-0.0030956250000001,0.0075988333333334
cArc part,wMat,-0.0030956250000001,0.0075988333333334,-0.00619125,0.0084666666666667,-0.0092868750000001,0.0075988333333333
cArc part,wMat,-0.0092868750000001,0.0075988333333333,-0.0123825,0.0067056,-0.015478125,0.0075988333333333
Part.InsertSketch
end sub

sub codeBag4(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.0093091,-0.0123825,0.010202333333333,-0.0092868749999999,0.0093091
cArc part,wMat,-0.0092868749999999,0.0093091,-0.00619125,0.0084412666666667,-0.003095625,0.0093091
cArc part,wMat,-0.003095625,0.0093091,8.8453945471608e-019,0.010202333333333,0.0030956249999999,0.0093091
cArc part,wMat,0.0030956249999999,0.0093091,0.00619125,0.0084412666666667,0.0092868750000001,0.0093091000000001
cArc part,wMat,0.0092868750000001,0.0093091000000001,0.0123825,0.010202333333333,0.015478125,0.0093091
cLn part,wMat,0.015478125,0.0093091,0.015478125,0.0096901
cArc part,wMat,0.015478125,0.0096901,0.0123825,0.010583333333333,0.009286875,0.0096901
cArc part,wMat,0.009286875,0.0096901,0.00619125,0.0088222666666667,0.0030956249999999,0.0096901000000001
cArc part,wMat,0.0030956249999999,0.0096901000000001,8.8453945471608e-019,0.010583333333333,-0.0030956250000001,0.0096901
cArc part,wMat,-0.0030956250000001,0.0096901,-0.00619125,0.0088222666666667,-0.0092868750000001,0.0096901
cArc part,wMat,-0.0092868750000001,0.0096901,-0.0123825,0.010583333333333,-0.015478125,0.0096901
cLn part,wMat,-0.015478125,0.0096901,-0.015478125,0.0093091
Part.InsertSketch
end sub

sub codeBag5(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.011832166666667,-0.015478125,0.011451166666667
cArc part,wMat,-0.015478125,0.011451166666667,-0.0123825,0.010557933333333,-0.0092868749999999,0.011451166666667
cArc part,wMat,-0.0092868749999999,0.011451166666667,-0.00619125,0.012319,-0.0030956249999999,0.011451166666667
cArc part,wMat,-0.0030956249999999,0.011451166666667,-1.5961309331928e-018,0.010557933333333,0.003095625,0.011451166666667
cArc part,wMat,0.003095625,0.011451166666667,0.00619125,0.012319,0.0092868750000003,0.011451166666666
cArc part,wMat,0.0092868750000003,0.011451166666666,0.0123825,0.010557933333333,0.015478125,0.011451166666667
cLn part,wMat,0.015478125,0.011451166666667,0.015478125,0.011832166666667
cArc part,wMat,0.015478125,0.011832166666667,0.0123825,0.010938933333333,0.0092868750000002,0.011832166666667
cArc part,wMat,0.0092868750000002,0.011832166666667,0.00619125,0.0127,0.0030956250000001,0.011832166666667
cArc part,wMat,0.0030956250000001,0.011832166666667,-1.5961309331928e-018,0.010938933333333,-0.0030956250000001,0.011832166666667
cArc part,wMat,-0.0030956250000001,0.011832166666667,-0.00619125,0.0127,-0.0092868750000002,0.011832166666667
cArc part,wMat,-0.0092868750000002,0.011832166666667,-0.0123825,0.010938933333333,-0.015478125,0.011832166666667
Part.InsertSketch
end sub

sub codeBag6(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.013542433333333,-0.0123825,0.014435666666667,-0.0092868750000001,0.013542433333333
cArc part,wMat,-0.0092868750000001,0.013542433333333,-0.00619125,0.0126746,-0.003095625,0.013542433333333
cArc part,wMat,-0.003095625,0.013542433333333,8.8453945471608e-019,0.014435666666667,0.0030956249999999,0.013542433333333
cArc part,wMat,0.0030956249999999,0.013542433333333,0.00619125,0.0126746,0.0092868750000001,0.013542433333333
cArc part,wMat,0.0092868750000001,0.013542433333333,0.0123825,0.014435666666667,0.015478125,0.013542433333333
cLn part,wMat,0.015478125,0.013542433333333,0.015478125,0.013923433333333
cArc part,wMat,0.015478125,0.013923433333333,0.0123825,0.014816666666667,0.009286875,0.013923433333333
cArc part,wMat,0.009286875,0.013923433333333,0.00619125,0.0130556,0.0030956250000001,0.013923433333333
cArc part,wMat,0.0030956250000001,0.013923433333333,8.8453945471608e-019,0.014816666666667,-0.003095625,0.013923433333333
cArc part,wMat,-0.003095625,0.013923433333333,-0.00619125,0.0130556,-0.0092868750000001,0.013923433333333
cArc part,wMat,-0.0092868750000001,0.013923433333333,-0.0123825,0.014816666666667,-0.015478125,0.013923433333333
cLn part,wMat,-0.015478125,0.013923433333333,-0.015478125,0.013542433333333
Part.InsertSketch
end sub

sub codeBag7(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.0160655,-0.015478125,0.0156845
cArc part,wMat,-0.015478125,0.0156845,-0.0123825,0.014791266666667,-0.0092868749999999,0.0156845
cArc part,wMat,-0.0092868749999999,0.0156845,-0.00619125,0.016552333333333,-0.003095625,0.0156845
cArc part,wMat,-0.003095625,0.0156845,-1.5961309331928e-018,0.014791266666667,0.003095625,0.0156845
cArc part,wMat,0.003095625,0.0156845,0.00619125,0.016552333333333,0.0092868750000001,0.0156845
cArc part,wMat,0.0092868750000001,0.0156845,0.0123825,0.014791266666667,0.015478125,0.0156845
cLn part,wMat,0.015478125,0.0156845,0.015478125,0.0160655
cArc part,wMat,0.015478125,0.0160655,0.0123825,0.015172266666667,0.0092868750000001,0.0160655
cArc part,wMat,0.0092868750000001,0.0160655,0.00619125,0.016933333333333,0.0030956249999999,0.0160655
cArc part,wMat,0.0030956249999999,0.0160655,-1.5961309331928e-018,0.015172266666667,-0.003095625,0.0160655
cArc part,wMat,-0.003095625,0.0160655,-0.00619125,0.016933333333333,-0.0092868750000001,0.0160655
cArc part,wMat,-0.0092868750000001,0.0160655,-0.0123825,0.015172266666667,-0.015478125,0.0160655
Part.InsertSketch
end sub

sub codeBag8(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.017775766666667,-0.0123825,0.018669,-0.0092868750000001,0.017775766666667
cArc part,wMat,-0.0092868750000001,0.017775766666667,-0.00619125,0.016907933333333,-0.003095625,0.017775766666667
cArc part,wMat,-0.003095625,0.017775766666667,8.8453945471608e-019,0.018669,0.0030956249999999,0.017775766666667
cArc part,wMat,0.0030956249999999,0.017775766666667,0.00619125,0.016907933333333,0.0092868750000001,0.017775766666667
cArc part,wMat,0.0092868750000001,0.017775766666667,0.0123825,0.018669,0.015478125,0.017775766666667
cLn part,wMat,0.015478125,0.017775766666667,0.015478125,0.018156766666667
cArc part,wMat,0.015478125,0.018156766666667,0.0123825,0.01905,0.009286875,0.018156766666667
cArc part,wMat,0.009286875,0.018156766666667,0.00619125,0.017288933333333,0.003095625,0.018156766666667
cArc part,wMat,0.003095625,0.018156766666667,8.8453945471608e-019,0.01905,-0.0030956250000001,0.018156766666667
cArc part,wMat,-0.0030956250000001,0.018156766666667,-0.00619125,0.017288933333333,-0.0092868749999998,0.018156766666667
cArc part,wMat,-0.0092868749999998,0.018156766666667,-0.0123825,0.01905,-0.015478125,0.018156766666667
cLn part,wMat,-0.015478125,0.018156766666667,-0.015478125,0.017775766666667
Part.InsertSketch
end sub

sub codeBag9(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.020298833333333,-0.015478125,0.019917833333333
cArc part,wMat,-0.015478125,0.019917833333333,-0.0123825,0.0190246,-0.0092868749999999,0.019917833333333
cArc part,wMat,-0.0092868749999999,0.019917833333333,-0.00619125,0.020785666666667,-0.003095625,0.019917833333333
cArc part,wMat,-0.003095625,0.019917833333333,-1.5961309331928e-018,0.0190246,0.003095625,0.019917833333333
cArc part,wMat,0.003095625,0.019917833333333,0.00619125,0.020785666666667,0.0092868750000001,0.019917833333333
cArc part,wMat,0.0092868750000001,0.019917833333333,0.0123825,0.0190246,0.015478125,0.019917833333333
cLn part,wMat,0.015478125,0.019917833333333,0.015478125,0.020298833333333
cArc part,wMat,0.015478125,0.020298833333333,0.0123825,0.0194056,0.009286875,0.020298833333333
cArc part,wMat,0.009286875,0.020298833333333,0.00619125,0.021166666666667,0.0030956250000001,0.020298833333333
cArc part,wMat,0.0030956250000001,0.020298833333333,-1.5961309331928e-018,0.0194056,-0.0030956250000001,0.020298833333333
cArc part,wMat,-0.0030956250000001,0.020298833333333,-0.00619125,0.021166666666667,-0.0092868750000002,0.020298833333333
cArc part,wMat,-0.0092868750000002,0.020298833333333,-0.0123825,0.0194056,-0.015478125,0.020298833333333
Part.InsertSketch
end sub

sub codeBag10(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.0220091,-0.0123825,0.022902333333333,-0.0092868749999998,0.0220091
cArc part,wMat,-0.0092868749999998,0.0220091,-0.00619125,0.021141266666667,-0.0030956250000001,0.0220091
cArc part,wMat,-0.0030956250000001,0.0220091,8.8453945471608e-019,0.022902333333333,0.0030956249999999,0.0220091
cArc part,wMat,0.0030956249999999,0.0220091,0.00619125,0.021141266666667,0.0092868750000001,0.0220091
cArc part,wMat,0.0092868750000001,0.0220091,0.0123825,0.022902333333333,0.015478125,0.0220091
cLn part,wMat,0.015478125,0.0220091,0.015478125,0.0223901
cArc part,wMat,0.015478125,0.0223901,0.0123825,0.023283333333333,0.0092868749999999,0.0223901
cArc part,wMat,0.0092868749999999,0.0223901,0.00619125,0.021522266666667,0.0030956250000001,0.0223901
cArc part,wMat,0.0030956250000001,0.0223901,8.8453945471608e-019,0.023283333333333,-0.0030956250000001,0.0223901
cArc part,wMat,-0.0030956250000001,0.0223901,-0.00619125,0.021522266666667,-0.0092868750000002,0.0223901
cArc part,wMat,-0.0092868750000002,0.0223901,-0.0123825,0.023283333333333,-0.015478125,0.0223901
cLn part,wMat,-0.015478125,0.0223901,-0.015478125,0.0220091
Part.InsertSketch
end sub

sub codeBag11(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.024532166666667,-0.015478125,0.024151166666667
cArc part,wMat,-0.015478125,0.024151166666667,-0.0123825,0.023257933333333,-0.0092868749999999,0.024151166666667
cArc part,wMat,-0.0092868749999999,0.024151166666667,-0.00619125,0.025019,-0.0030956250000002,0.024151166666667
cArc part,wMat,-0.0030956250000002,0.024151166666667,-1.5961309331928e-018,0.023257933333333,0.0030956250000001,0.024151166666667
cArc part,wMat,0.0030956250000001,0.024151166666667,0.00619125,0.025019,0.0092868750000001,0.024151166666667
cArc part,wMat,0.0092868750000001,0.024151166666667,0.0123825,0.023257933333333,0.015478125,0.024151166666667
cLn part,wMat,0.015478125,0.024151166666667,0.015478125,0.024532166666667
cArc part,wMat,0.015478125,0.024532166666667,0.0123825,0.023638933333333,0.0092868750000001,0.024532166666667
cArc part,wMat,0.0092868750000001,0.024532166666667,0.00619125,0.0254,0.003095625,0.024532166666667
cArc part,wMat,0.003095625,0.024532166666667,-1.5961309331928e-018,0.023638933333333,-0.0030956250000001,0.024532166666667
cArc part,wMat,-0.0030956250000001,0.024532166666667,-0.00619125,0.0254,-0.0092868749999998,0.024532166666667
cArc part,wMat,-0.0092868749999998,0.024532166666667,-0.0123825,0.023638933333333,-0.015478125,0.024532166666667
Part.InsertSketch
end sub

sub codeBag12(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.026242433333333,-0.0123825,0.027135666666667,-0.0092868749999998,0.026242433333333
cArc part,wMat,-0.0092868749999998,0.026242433333333,-0.00619125,0.0253746,-0.0030956250000001,0.026242433333333
cArc part,wMat,-0.0030956250000001,0.026242433333333,8.8453945471608e-019,0.027135666666667,0.0030956249999999,0.026242433333333
cArc part,wMat,0.0030956249999999,0.026242433333333,0.00619125,0.0253746,0.0092868750000001,0.026242433333333
cArc part,wMat,0.0092868750000001,0.026242433333333,0.0123825,0.027135666666667,0.015478125,0.026242433333333
cLn part,wMat,0.015478125,0.026242433333333,0.015478125,0.026623433333333
cArc part,wMat,0.015478125,0.026623433333333,0.0123825,0.027516666666667,0.0092868749999999,0.026623433333333
cArc part,wMat,0.0092868749999999,0.026623433333333,0.00619125,0.0257556,0.0030956250000001,0.026623433333333
cArc part,wMat,0.0030956250000001,0.026623433333333,8.8453945471608e-019,0.027516666666667,-0.0030956250000001,0.026623433333333
cArc part,wMat,-0.0030956250000001,0.026623433333333,-0.00619125,0.0257556,-0.0092868750000002,0.026623433333333
cArc part,wMat,-0.0092868750000002,0.026623433333333,-0.0123825,0.027516666666667,-0.015478125,0.026623433333333
cLn part,wMat,-0.015478125,0.026623433333333,-0.015478125,0.026242433333333
Part.InsertSketch
end sub

sub codeBag13(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.0287655,-0.015478125,0.0283845
cArc part,wMat,-0.015478125,0.0283845,-0.0123825,0.027491266666667,-0.0092868749999999,0.0283845
cArc part,wMat,-0.0092868749999999,0.0283845,-0.00619125,0.029252333333333,-0.0030956249999999,0.0283845
cArc part,wMat,-0.0030956249999999,0.0283845,-1.5961309331928e-018,0.027491266666667,0.003095625,0.0283845
cArc part,wMat,0.003095625,0.0283845,0.00619125,0.029252333333333,0.0092868750000003,0.0283845
cArc part,wMat,0.0092868750000003,0.0283845,0.0123825,0.027491266666667,0.015478125,0.0283845
cLn part,wMat,0.015478125,0.0283845,0.015478125,0.0287655
cArc part,wMat,0.015478125,0.0287655,0.0123825,0.027872266666667,0.0092868750000001,0.0287655
cArc part,wMat,0.0092868750000001,0.0287655,0.00619125,0.029633333333333,0.003095625,0.0287655
cArc part,wMat,0.003095625,0.0287655,-1.5961309331928e-018,0.027872266666667,-0.0030956250000001,0.0287655
cArc part,wMat,-0.0030956250000001,0.0287655,-0.00619125,0.029633333333333,-0.0092868750000002,0.0287655
cArc part,wMat,-0.0092868750000002,0.0287655,-0.0123825,0.027872266666667,-0.015478125,0.0287655
Part.InsertSketch
end sub

sub codeBag14(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.030475766666667,-0.0123825,0.031369,-0.0092868750000001,0.030475766666667
cArc part,wMat,-0.0092868750000001,0.030475766666667,-0.00619125,0.029607933333333,-0.003095625,0.030475766666667
cArc part,wMat,-0.003095625,0.030475766666667,8.8453945471608e-019,0.031369,0.0030956250000001,0.030475766666667
cArc part,wMat,0.0030956250000001,0.030475766666667,0.00619125,0.029607933333333,0.0092868749999999,0.030475766666667
cArc part,wMat,0.0092868749999999,0.030475766666667,0.0123825,0.031369,0.015478125,0.030475766666667
cLn part,wMat,0.015478125,0.030475766666667,0.015478125,0.030856766666667
cArc part,wMat,0.015478125,0.030856766666667,0.0123825,0.03175,0.009286875,0.030856766666667
cArc part,wMat,0.009286875,0.030856766666667,0.00619125,0.029988933333333,0.003095625,0.030856766666667
cArc part,wMat,0.003095625,0.030856766666667,8.8453945471608e-019,0.03175,-0.0030956250000001,0.030856766666667
cArc part,wMat,-0.0030956250000001,0.030856766666667,-0.00619125,0.029988933333333,-0.0092868749999998,0.030856766666667
cArc part,wMat,-0.0092868749999998,0.030856766666667,-0.0123825,0.03175,-0.015478125,0.030856766666667
cLn part,wMat,-0.015478125,0.030856766666667,-0.015478125,0.030475766666667
Part.InsertSketch
end sub

sub codeBag15(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.032998833333333,-0.015478125,0.032617833333333
cArc part,wMat,-0.015478125,0.032617833333333,-0.0123825,0.0317246,-0.0092868750000001,0.032617833333333
cArc part,wMat,-0.0092868750000001,0.032617833333333,-0.00619125,0.033485666666667,-0.0030956249999997,0.032617833333333
cArc part,wMat,-0.0030956249999997,0.032617833333333,-1.5961309331928e-018,0.0317246,0.003095625,0.032617833333333
cArc part,wMat,0.003095625,0.032617833333333,0.00619125,0.033485666666667,0.0092868750000003,0.032617833333333
cArc part,wMat,0.0092868750000003,0.032617833333333,0.0123825,0.0317246,0.015478125,0.032617833333333
cLn part,wMat,0.015478125,0.032617833333333,0.015478125,0.032998833333333
cArc part,wMat,0.015478125,0.032998833333333,0.0123825,0.0321056,0.0092868750000001,0.032998833333333
cArc part,wMat,0.0092868750000001,0.032998833333333,0.00619125,0.033866666666667,0.003095625,0.032998833333333
cArc part,wMat,0.003095625,0.032998833333333,-1.5961309331928e-018,0.0321056,-0.0030956250000001,0.032998833333333
cArc part,wMat,-0.0030956250000001,0.032998833333333,-0.00619125,0.033866666666667,-0.0092868750000002,0.032998833333333
cArc part,wMat,-0.0092868750000002,0.032998833333333,-0.0123825,0.0321056,-0.015478125,0.032998833333333
Part.InsertSketch
end sub

sub codeBag16(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.0347091,-0.0123825,0.035602333333333,-0.0092868750000001,0.0347091
cArc part,wMat,-0.0092868750000001,0.0347091,-0.00619125,0.033841266666667,-0.003095625,0.0347091
cArc part,wMat,-0.003095625,0.0347091,8.8453945471608e-019,0.035602333333333,0.0030956250000001,0.0347091
cArc part,wMat,0.0030956250000001,0.0347091,0.00619125,0.033841266666667,0.0092868749999999,0.0347091
cArc part,wMat,0.0092868749999999,0.0347091,0.0123825,0.035602333333333,0.015478125,0.0347091
cLn part,wMat,0.015478125,0.0347091,0.015478125,0.0350901
cArc part,wMat,0.015478125,0.0350901,0.0123825,0.035983333333333,0.009286875,0.0350901
cArc part,wMat,0.009286875,0.0350901,0.00619125,0.034222266666667,0.003095625,0.0350901
cArc part,wMat,0.003095625,0.0350901,8.8453945471608e-019,0.035983333333333,-0.0030956250000001,0.0350901
cArc part,wMat,-0.0030956250000001,0.0350901,-0.00619125,0.034222266666667,-0.0092868749999998,0.0350901
cArc part,wMat,-0.0092868749999998,0.0350901,-0.0123825,0.035983333333333,-0.015478125,0.0350901
cLn part,wMat,-0.015478125,0.0350901,-0.015478125,0.0347091
Part.InsertSketch
end sub

sub codeBag17(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.037232166666667,-0.015478125,0.036851166666667
cArc part,wMat,-0.015478125,0.036851166666667,-0.0123825,0.035957933333333,-0.0092868750000001,0.036851166666667
cArc part,wMat,-0.0092868750000001,0.036851166666667,-0.00619125,0.037719,-0.003095625,0.036851166666667
cArc part,wMat,-0.003095625,0.036851166666667,-1.5961309331928e-018,0.035957933333333,0.0030956250000001,0.036851166666667
cArc part,wMat,0.0030956250000001,0.036851166666667,0.00619125,0.037719,0.0092868750000001,0.036851166666667
cArc part,wMat,0.0092868750000001,0.036851166666667,0.0123825,0.035957933333333,0.015478125,0.036851166666667
cLn part,wMat,0.015478125,0.036851166666667,0.015478125,0.037232166666667
cArc part,wMat,0.015478125,0.037232166666667,0.0123825,0.036338933333333,0.0092868750000001,0.037232166666667
cArc part,wMat,0.0092868750000001,0.037232166666667,0.00619125,0.0381,0.003095625,0.037232166666667
cArc part,wMat,0.003095625,0.037232166666667,-1.5961309331928e-018,0.036338933333333,-0.0030956250000001,0.037232166666667
cArc part,wMat,-0.0030956250000001,0.037232166666667,-0.00619125,0.0381,-0.0092868749999998,0.037232166666667
cArc part,wMat,-0.0092868749999998,0.037232166666667,-0.0123825,0.036338933333333,-0.015478125,0.037232166666667
Part.InsertSketch
end sub

sub codeBag18(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.038942433333333,-0.0123825,0.039835666666667,-0.0092868750000001,0.038942433333333
cArc part,wMat,-0.0092868750000001,0.038942433333333,-0.00619125,0.0380746,-0.003095625,0.038942433333333
cArc part,wMat,-0.003095625,0.038942433333333,8.8453945471608e-019,0.039835666666667,0.0030956250000001,0.038942433333333
cArc part,wMat,0.0030956250000001,0.038942433333333,0.00619125,0.0380746,0.0092868749999999,0.038942433333333
cArc part,wMat,0.0092868749999999,0.038942433333333,0.0123825,0.039835666666667,0.015478125,0.038942433333333
cLn part,wMat,0.015478125,0.038942433333333,0.015478125,0.039323433333333
cArc part,wMat,0.015478125,0.039323433333333,0.0123825,0.040216666666667,0.009286875,0.039323433333333
cArc part,wMat,0.009286875,0.039323433333333,0.00619125,0.0384556,0.003095625,0.039323433333333
cArc part,wMat,0.003095625,0.039323433333333,8.8453945471608e-019,0.040216666666667,-0.0030956250000001,0.039323433333333
cArc part,wMat,-0.0030956250000001,0.039323433333333,-0.00619125,0.0384556,-0.0092868749999998,0.039323433333333
cArc part,wMat,-0.0092868749999998,0.039323433333333,-0.0123825,0.040216666666667,-0.015478125,0.039323433333333
cLn part,wMat,-0.015478125,0.039323433333333,-0.015478125,0.038942433333333
Part.InsertSketch
end sub

sub codeBag19(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.041290875,-0.015478125,0.040909875
cArc part,wMat,-0.015478125,0.040909875,-0.0123825,0.040191266666667,-0.009286875,0.040909875
cArc part,wMat,-0.009286875,0.040909875,-0.00619125,0.041952333333333,-0.003095625,0.040909875
cArc part,wMat,-0.003095625,0.040909875,8.2418229730805e-019,0.040191266666667,0.003095625,0.040909875
cArc part,wMat,0.003095625,0.040909875,0.00619125,0.041952333333333,0.009286875,0.040909875
cArc part,wMat,0.009286875,0.040909875,0.0123825,0.040191266666667,0.015478125,0.040909875
cLn part,wMat,0.015478125,0.040909875,0.015478125,0.041290875
cArc part,wMat,0.015478125,0.041290875,0.0123825,0.040572266666667,0.009286875,0.041290875
cArc part,wMat,0.009286875,0.041290875,0.00619125,0.042333333333333,0.003095625,0.041290875
cArc part,wMat,0.003095625,0.041290875,8.2418229730805e-019,0.040572266666667,-0.003095625,0.041290875
cArc part,wMat,-0.003095625,0.041290875,-0.00619125,0.042333333333333,-0.009286875,0.041290875
cArc part,wMat,-0.009286875,0.041290875,-0.0123825,0.040572266666667,-0.015478125,0.041290875
Part.InsertSketch
end sub

sub codeBag20(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.043175766666667,-0.0123825,0.044069,-0.0092868750000001,0.043175766666667
cArc part,wMat,-0.0092868750000001,0.043175766666667,-0.00619125,0.042307933333333,-0.003095625,0.043175766666667
cArc part,wMat,-0.003095625,0.043175766666667,8.8453945471608e-019,0.044069,0.0030956250000001,0.043175766666667
cArc part,wMat,0.0030956250000001,0.043175766666667,0.00619125,0.042307933333333,0.0092868749999999,0.043175766666667
cArc part,wMat,0.0092868749999999,0.043175766666667,0.0123825,0.044069,0.015478125,0.043175766666667
cLn part,wMat,0.015478125,0.043175766666667,0.015478125,0.043556766666667
cArc part,wMat,0.015478125,0.043556766666667,0.0123825,0.04445,0.009286875,0.043556766666667
cArc part,wMat,0.009286875,0.043556766666667,0.00619125,0.042688933333333,0.003095625,0.043556766666667
cArc part,wMat,0.003095625,0.043556766666667,8.8453945471608e-019,0.04445,-0.0030956250000001,0.043556766666667
cArc part,wMat,-0.0030956250000001,0.043556766666667,-0.00619125,0.042688933333333,-0.0092868749999998,0.043556766666667
cArc part,wMat,-0.0092868749999998,0.043556766666667,-0.0123825,0.04445,-0.015478125,0.043556766666667
cLn part,wMat,-0.015478125,0.043556766666667,-0.015478125,0.043175766666667
Part.InsertSketch
end sub

sub codeBag21(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.045698833333333,-0.015478125,0.045317833333333
cArc part,wMat,-0.015478125,0.045317833333333,-0.0123825,0.0444246,-0.0092868750000001,0.045317833333333
cArc part,wMat,-0.0092868750000001,0.045317833333333,-0.00619125,0.046185666666667,-0.0030956249999997,0.045317833333333
cArc part,wMat,-0.0030956249999997,0.045317833333333,-1.5961309331928e-018,0.0444246,0.003095625,0.045317833333333
cArc part,wMat,0.003095625,0.045317833333333,0.00619125,0.046185666666667,0.0092868750000003,0.045317833333333
cArc part,wMat,0.0092868750000003,0.045317833333333,0.0123825,0.0444246,0.015478125,0.045317833333333
cLn part,wMat,0.015478125,0.045317833333333,0.015478125,0.045698833333333
cArc part,wMat,0.015478125,0.045698833333333,0.0123825,0.0448056,0.0092868750000001,0.045698833333333
cArc part,wMat,0.0092868750000001,0.045698833333333,0.00619125,0.046566666666667,0.003095625,0.045698833333333
cArc part,wMat,0.003095625,0.045698833333333,-1.5961309331928e-018,0.0448056,-0.0030956250000001,0.045698833333333
cArc part,wMat,-0.0030956250000001,0.045698833333333,-0.00619125,0.046566666666667,-0.0092868750000002,0.045698833333333
cArc part,wMat,-0.0092868750000002,0.045698833333333,-0.0123825,0.0448056,-0.015478125,0.045698833333333
Part.InsertSketch
end sub

sub codeBag22(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cArc part,wMat,-0.015478125,0.0474091,-0.0123825,0.048302333333333,-0.0092868750000001,0.0474091
cArc part,wMat,-0.0092868750000001,0.0474091,-0.00619125,0.046541266666667,-0.003095625,0.0474091
cArc part,wMat,-0.003095625,0.0474091,8.8453945471608e-019,0.048302333333333,0.003095625,0.0474091
cArc part,wMat,0.003095625,0.0474091,0.00619125,0.046541266666667,0.009286875,0.0474091
cArc part,wMat,0.009286875,0.0474091,0.0123825,0.048302333333333,0.015478125,0.0474091
cLn part,wMat,0.015478125,0.0474091,0.015478125,0.0477901
cArc part,wMat,0.015478125,0.0477901,0.0123825,0.048683333333333,0.0092868749999999,0.0477901
cArc part,wMat,0.0092868749999999,0.0477901,0.00619125,0.046922266666667,0.0030956250000001,0.0477901
cArc part,wMat,0.0030956250000001,0.0477901,8.8453945471608e-019,0.048683333333333,-0.0030956249999998,0.0477901
cArc part,wMat,-0.0030956249999998,0.0477901,-0.00619125,0.046922266666667,-0.0092868750000002,0.0477901
cArc part,wMat,-0.0092868750000002,0.0477901,-0.0123825,0.048683333333333,-0.015478125,0.0477901
cLn part,wMat,-0.015478125,0.0477901,-0.015478125,0.0474091
Part.InsertSketch
end sub

sub codeBag23(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,1,0,0,0,1,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.015478125,0.049932166666667,-0.015478125,0.049551166666667
cArc part,wMat,-0.015478125,0.049551166666667,-0.0123825,0.048657933333333,-0.0092868749999998,0.049551166666667
cArc part,wMat,-0.0092868749999998,0.049551166666667,-0.00619125,0.050419,-0.003095625,0.049551166666667
cArc part,wMat,-0.003095625,0.049551166666667,-1.5961309331928e-018,0.048657933333333,0.0030956250000001,0.049551166666667
cArc part,wMat,0.0030956250000001,0.049551166666667,0.00619125,0.050419,0.0092868750000001,0.049551166666667
cArc part,wMat,0.0092868750000001,0.049551166666667,0.0123825,0.048657933333333,0.015478125,0.049551166666667
cLn part,wMat,0.015478125,0.049551166666667,0.015478125,0.049932166666667
cArc part,wMat,0.015478125,0.049932166666667,0.0123825,0.049038933333333,0.0092868750000001,0.049932166666667
cArc part,wMat,0.0092868750000001,0.049932166666667,0.00619125,0.0508,0.003095625,0.049932166666667
cArc part,wMat,0.003095625,0.049932166666667,-1.5961309331928e-018,0.049038933333333,-0.0030956250000001,0.049932166666667
cArc part,wMat,-0.0030956250000001,0.049932166666667,-0.00619125,0.0508,-0.0092868749999998,0.049932166666667
cArc part,wMat,-0.0092868749999998,0.049932166666667,-0.0123825,0.049038933333333,-0.015478125,0.049932166666667
Part.InsertSketch
end sub

sub codeBag24(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,0,-1,0,1,0,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cLn part,wMat,-0.024765,0.024765,-0.024765,-0.024765
cLn part,wMat,-0.024765,-0.024765,0.024765,-0.024765
cLn part,wMat,0.024765,-0.024765,0.024765,0.024765
cLn part,wMat,0.024765,0.024765,-0.024765,0.024765
cCir part,wMat,0,0,0.0123825
Part.InsertSketch
end sub

sub codeBag25(part)
Part.InsertSketch
Set swActiveMat = Part.GetActiveSketch()
swSketchMat= createMatFromSWMat(swActiveMat.ModelToSketchXForm)
mSkMat=createMat4x4FromValues(1,0,0,0,0,-1,0,1,0,0,0,0)
wMat=mulMat4x4Mat4x4(swSketchMat,mSkMat)
cCir part,wMat,0,0,0.0099949
Part.InsertSketch
end sub

sub main
set swApp=CreateObject("SldWorks.Application")
code = swApp.RevisionNumber
found = InStr(code, ".")
If (found > 0) Then
  code = Left(code, found-1)
  If (CInt(code) >= 11) Then
    sw2003api=1
  End If
End If
swApp.SetUserPreferenceToggle 11, FALSE
swApp.SetUserPreferenceToggle 97, FALSE
storePath=BrowseForFolder
If (storePath <> "") Then
   If ((Right(storePath, 1) <> "\") And (Right(storePath, 1) <> "/")) Then
       storePath = storePath + "\"
   End If
   createPart0
End If
end sub
