@@ -50,6 +50,7 @@ def createScene(root):
5050 'Sofa.GL.Component.Rendering3D' ,
5151 'Sofa.GUI.Component' ,
5252 'Sofa.Component.Engine.Select' ,
53+ 'Sofa.Component.Playback' ,
5354 'MultiThreading' ,
5455 'CollisionAlgorithm' ,
5556 'ConstraintGeometry'
@@ -63,29 +64,34 @@ def createScene(root):
6364 root .addObject ("CollisionLoop" )
6465
6566 needleBaseMaster = root .addChild ("NeedleBaseMaster" )
66- needleBaseMaster .addObject ("MechanicalObject" , name = "mstate_baseMaster" , position = [0.04 , 0.04 , 0 , 0 , 0 , 0 , 1 ], template = "Rigid3d" , showObjectScale = 0.002 , showObject = True , drawMode = 1 )
67- needleBaseMaster .addObject ("LinearMovementProjectiveConstraint" ,indices = [0 ],
68- keyTimes = [
69- 0 , 1 , 4 , 4.5 , 5 , 8
70- ,8.5 ,9 ,12 ,12.5 ,13 ,16
71- ],
72- movements = [
73- [0.04 , 0.04 ,0 ,0 ,0 ,0 ],
74- [0.04 , 0.04 ,0.05 ,0 ,3.14 / 2 ,0 ],
75- [0.04 , 0.04 ,- 0.07 ,0 ,3.14 / 2 ,0 ],
76- [0.05 , 0.04 ,- 0.07 ,0 ,3.14 / 2 + 3.14 / 16 ,0 ],
77- [0.04 , 0.04 ,- 0.07 ,0 ,3.14 / 2 ,0 ],
78- [0.04 , 0.04 ,0.005 ,0 ,3.14 / 2 ,0 ],
79- # Change to insertion at an angle
80- [0.06 , 0.04 ,0.005 ,0 ,3.14 / 2 ,0 ],
81- [0.06 , 0.04 ,0.005 ,0 ,3.14 / 2 + 3.14 / 8 ,0 ],
82- [0.030866 , 0.04 ,- 0.04119 ,0 ,3.14 / 2 + 3.14 / 8 ,0 ],
83- [0.030866 , 0.04 ,- 0.04119 ,0 ,3.14 / 2 ,0 ],
84- [0.030866 , 0.04 ,- 0.04119 ,0 ,3.14 / 2 + 3.14 / 8 ,0 ],
85- [0.06 , 0.04 ,0.005 ,0 ,3.14 / 2 + 3.14 / 8 ,0 ]
86- ]
87- ,relativeMovements = False
88- )
67+ needleBaseMaster .addObject ("MechanicalObject" , name = "mstate_baseMaster" , template = "Rigid3d" , showObjectScale = 0.002 , showObject = True , drawMode = 1
68+ #, position=[0.04, 0.04, 0, 0, 0, 0, 1])
69+ , position = "@reader.position" )
70+ #needleBaseMaster.addObject("LinearMovementProjectiveConstraint",indices=[0],
71+ # keyTimes=[
72+ # 0, 1, 4, 4.5, 5, 8
73+ # ,8.5,9,12,12.5,13,16
74+ # ],
75+ # movements=[
76+ # [0.04, 0.04,0,0,0,0],
77+ # [0.04, 0.04,0.05,0,3.14/2,0],
78+ # [0.04, 0.04,-0.07,0,3.14/2,0],
79+ # [0.05, 0.04,-0.07,0,3.14/2 + 3.14/16,0],
80+ # [0.04, 0.04,-0.07,0,3.14/2,0],
81+ # [0.04, 0.04,0.005,0,3.14/2,0],
82+ # # Change to insertion at an angle
83+ # [0.06, 0.04,0.005,0,3.14/2,0],
84+ # [0.06, 0.04,0.005,0,3.14/2 + 3.14/8,0],
85+ # [0.030866, 0.04,-0.04119,0,3.14/2 + 3.14/8,0],
86+ # [0.030866, 0.04,-0.04119,0,3.14/2,0],
87+ # [0.030866, 0.04,-0.04119,0,3.14/2 + 3.14/8,0],
88+ # [0.06, 0.04,0.005,0,3.14/2 + 3.14/8,0]
89+ # ]
90+ # ,relativeMovements=False
91+ #)
92+ #needleBaseMaster.addObject("WriteState", name="writer", filename="RecordState/NeedleInsertionCycles.txt"
93+ # , period=0.01, writeX=True, writeV=True, time=0)
94+ needleBaseMaster .addObject ("ReadState" , name = "reader" , filename = "RecordState/NeedleInsertionCycles.txt" )
8995
9096
9197 needle = root .addChild ("Needle" )
0 commit comments