Bonjour à tous,
je suis débutant sur SW, et je m'intéresse à la création de macro pour la construction de trajectoire.
Je cherche à reproduire le plus fidèlement possible la trajectoire d'un fil de tricot industriel. La trajectoire passe par 4 points et on utilise des lignes et des splines pour sa construction.
Grâce à l'enregistrement de macro j'ai pu récupérer le script nécessaire créer des points, contruire des lignes ainsi que des splines.
Cependant j'ai besoin d'avoir le contrôle sur les tangentes du points de départ et d'arrivée (que l'on calcul). Malheureusement lorsque j'utilise l'enregistrement de macro et que je construis la spline avec pilotage par tangente je ne vois aucune nouvelle "fonction" apparaître.
Est-il est possible de récupérer cette fonction?
Voici le script enregistrer que j'ai obtenu après construction manuelle (il reste sans doute des lignes inutiles) :
Partial Class SolidWorksMacro
Public Sub main()
Dim swDoc As ModelDoc2 = Nothing
Dim swPart As PartDoc = Nothing
Dim swDrawing As DrawingDoc = Nothing
Dim swAssembly As AssemblyDoc = Nothing
Dim boolstatus As Boolean = false
Dim longstatus As Integer = 0
Dim longwarnings As Integer = 0
swDoc = CType(swApp.ActiveDoc,ModelDoc2)
swDoc.SketchManager.Insert3DSketch(true)
'
Dim skSegment As SketchSegment = Nothing
skSegment = CType(swDoc.SketchManager.CreateLine(0.000000, 0.000000, 0.000000, -0.002000, 0.004000, -0.000500),SketchSegment)
swDoc.SetPickMode()
swDoc.ClearSelection2(true)
'
Dim pointArray As Array = Nothing
Dim points(8) As Double
points(0) = -0.002
points(1) = 0.004
points(2) = -0.0005
points(3) = 0.004
points(4) = 0.008
points(5) = -0.0015
points(6) = 0.016
points(7) = 0.009
points(8) = -0.002
pointArray = points
skSegment = CType(swDoc.SketchManager.CreateSpline(pointArray),SketchSegment)
boolstatus = swDoc.Extension.SelectByID2("Spline1", "SKETCHSEGMENT", 0.0, 0.0, 0, False, 0, Nothing, 0)
swDoc.ShowNamedView2("*Gauche", 3)
swDoc.ClearSelection2(true)
swDoc.EditUndo2(1)
boolstatus = swDoc.Extension.SelectByID2("Spline1", "SKETCHSEGMENT", 0.0070000000000000062, 0.0060299676105561159, -0.0010150801486359592, false, 0, Nothing, 0)
swDoc.ShowNamedView2("*Face", 1)
swDoc.ShowNamedView2("*Gauche", 3)
swDoc.ClearSelection2(true)
swDoc.EditUndo2(1)
boolstatus = swDoc.Extension.SelectByID2("Spline1", "SKETCHSEGMENT", 0.0069999999999999984, 0.0049025748626198599, -0.00080798849755920818, false, 0, Nothing, 0)
swDoc.ShowNamedView2("*Face", 1)
swDoc.ClearSelection2(true)
swDoc.SketchManager.Insert3DSketch(true)
End Sub
''' <summary>
''' The SldWorks swApp variable is pre-assigned for you.
''' </summary>
Public swApp As SldWorks
End Class
Encore merci