Bonjour,
Je fais une macro pour créer une "animation" me permettant de voir une succession de modifications et des changements de configuration. Je vous joins une partie du code. Mon problème est que l'image ne se met pas à jour (affichage). Le code est pris en compte mais à l'écran il n'y a que la premiere et derniere étape qui sont visible malgré le "boolstatus = Part.ForceRebuild3(True)".
Avez-vous une idée?
Dim swApp As Object
Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As LongPtr) 'For 64 Bit Systems
Sub main()
Dim i As Single
Set swApp = _
Application.SldWorks
Set Part = swApp.ActiveDoc
Dim myModelView As Object
Set myModelView = Part.ActiveView
'Config Selection
boolstatus = Part.Extension.SelectByID2("Small [55-145mm]", "CONFIGURATIONS", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.ShowConfiguration2("Small [55-145mm]")
'boolstatus = Part.ForceRebuild3(True)
Wait
For i = 0.055 To 0.145 Step 0.005
boolstatus = Part.Extension.SelectByID2("", "FACE", 1.88162450943423E-02, 2.07610918535579E-02, 3.41903065946383E-02, False, 0, Nothing, 0)
Part.ActivateSelectedFeature
boolstatus = Part.Extension.SelectByID2("L inter épau@Sketch1@Flex_flexible-1@EX10610_00000_10_boni", "DIMENSION", 0.516914003349862, 0.726763465357772, 0.299002280968981, False, 0, Nothing, 0)
Dim myDimension As Object
Set myDimension = Part.Parameter("L inter épau@Sketch1@Flex_flexible.Part")
myDimension.SystemValue = i
Part.ClearSelection2 True
boolstatus = Part.ForceRebuild3(True)
Set myModelView = Part.ActiveView
Wait
Next i
'boolstatus = Part.Extension.SelectByID2("Medium [145-170mm]", "CONFIGURATIONS", 0, 0, 0, False, 0, Nothing, 0)
'boolstatus = Part.ShowConfiguration2("Medium [145-170mm]")
'boolstatus = Part.ForceRebuild3(True)
'Wait
'boolstatus = Part.Extension.SelectByID2("Large [>175mm]", "CONFIGURATIONS", 0, 0, 0, False, 0, Nothing, 0)
'boolstatus = Part.ShowConfiguration2("Large [>175mm]")
'boolstatus = Part.ForceRebuild3(True)
'For i = 0.055 To 0.145 Step 0.005
'boolstatus = Part.Extension.SelectByID2("Small@Flex_flexible.SLDPRT", "CONFIGURATIONS", 0, 0, 0, False, 0, Nothing, 0)
'boolstatus = Part.ShowConfiguration2("Small")
'boolstatus = Part.Extension.SelectByID2("L inter épau@Sketch1@Flex_flexible.SLDPRT", "DIMENSION", -7.48434662003883E-02, 0.151717758326748, -7.54569406310026E-02, False, 0, Nothing, 0)
'Dim myDimension As Object
'Set myDimension = Part.Parameter("L inter épau@Sketch1")
'myDimension.SystemValue = i
'boolstatus = Part.ForceRebuild3(True)
'Wait
'boolstatus = Part.EditRebuild3()
'Next i
End Sub
Sub Wait()
Sleep 200
End Sub