858 lines
47 KiB
XML
858 lines
47 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<ChoregrapheProject xmlns="http://www.ald.softbankrobotics.com/schema/choregraphe/project.xsd" xar_version="3">
|
|
<Box name="root" id="-1" localization="8" tooltip="Root box of Choregraphe's behavior. Highest level possible." x="0" y="0">
|
|
<bitmap>media/images/box/root.png</bitmap>
|
|
<script language="4">
|
|
<content>
|
|
<![CDATA[]]>
|
|
</content>
|
|
</script>
|
|
<Input name="onLoad" type="1" type_size="1" nature="0" inner="1" tooltip="Signal sent when diagram is loaded." id="1" />
|
|
<Input name="onStart" type="1" type_size="1" nature="2" inner="0" tooltip="Box behavior starts when a signal is received on this input." id="2" />
|
|
<Input name="onStop" type="1" type_size="1" nature="3" inner="0" tooltip="Box behavior stops when a signal is received on this input." id="3" />
|
|
<Output name="onStopped" type="1" type_size="1" nature="1" inner="0" tooltip="Signal sent when box behavior is finished." id="4" />
|
|
<Timeline enable="0">
|
|
<BehaviorLayer name="behavior_layer1">
|
|
<BehaviorKeyframe name="keyframe1" index="1">
|
|
<Diagram>
|
|
<Box name="Tai Chi Chuan" id="11" localization="8" tooltip="Arms part of Tai Chi Chuan dance." x="198" y="164">
|
|
<bitmap>media/images/box/movement/dance.png</bitmap>
|
|
<script language="4">
|
|
<content>
|
|
<![CDATA[]]>
|
|
</content>
|
|
</script>
|
|
<Input name="onLoad" type="1" type_size="1" nature="0" inner="1" tooltip="Signal sent when diagram is loaded." id="1" />
|
|
<Input name="onStart" type="1" type_size="1" nature="2" inner="0" tooltip="Box behavior starts when a signal is received on this input." id="2" />
|
|
<Input name="onStop" type="1" type_size="1" nature="3" inner="0" tooltip="Box behavior stops when a signal is received on this input." id="3" />
|
|
<Output name="onStopped" type="1" type_size="1" nature="1" inner="0" tooltip="Signal sent when box behavior is finished." id="4" />
|
|
<Timeline enable="1" fps="5" start_frame="1" end_frame="-1" size="250">
|
|
<BehaviorLayer name="LED">
|
|
<BehaviorKeyframe name="keyframe15" index="15">
|
|
<Diagram>
|
|
<Box name="Light_ConcentratedEyes" id="1" localization="8" tooltip="Set an animated gaze which expresses concentration." x="231" y="105">
|
|
<bitmap>media/images/box/interaction/LED.png</bitmap>
|
|
<script language="4">
|
|
<content>
|
|
<![CDATA[class MyClass(GeneratedClass):
|
|
def __init__(self):
|
|
try: # disable autoBind;
|
|
GeneratedClass.__init__(self, False);
|
|
except TypeError: # if NAOqi < 1.14;
|
|
GeneratedClass.__init__( self );
|
|
|
|
def onLoad(self):
|
|
self.bIsRunning = False;
|
|
self.leds = self.session().service("ALLeds")
|
|
|
|
def onUnload(self):
|
|
self.onInput_onStop(); # will stop current loop execution
|
|
|
|
def onInput_onStart(self):
|
|
#self.log( self.getName() + ": start - begin" );
|
|
|
|
if( self.bIsRunning ):
|
|
#print( self.getName() + ": already started => nothing" );
|
|
return;
|
|
|
|
self.bIsRunning = True;
|
|
self.bMustStop = False;
|
|
|
|
rDuration = 1.0;
|
|
self.leds.fadeRGB( "FaceLedsTop", 0x0000ff, rDuration, _async=True );
|
|
self.leds.fadeRGB( "FaceLedsInternal", 0x00ff00, rDuration, _async=True );
|
|
self.leds.fadeRGB( "FaceLedsBottom", 0x0000ff, rDuration, _async=True );
|
|
self.leds.fadeRGB( "FaceLedsExternal", 0x0000ff, rDuration );
|
|
|
|
while( not self.bMustStop ):
|
|
rTime=1.0
|
|
self.leds.fadeRGB( "FaceLedsInternal", 0x000000, rTime );
|
|
if( self.bMustStop ):
|
|
break;
|
|
self.leds.fadeRGB( "FaceLedsInternal", 0x00ff00, rDuration );
|
|
|
|
|
|
# end while
|
|
self.bIsRunning = False;
|
|
self.onStopped();
|
|
|
|
def onInput_onStop(self):
|
|
self.bMustStop = True; # will stop current loop execution]]>
|
|
</content>
|
|
</script>
|
|
<Input name="onLoad" type="1" type_size="1" nature="0" inner="1" tooltip="Signal sent when diagram is loaded." id="1" />
|
|
<Input name="onStart" type="1" type_size="1" nature="2" inner="0" tooltip="Box behavior starts when a signal is received on this input." id="2" />
|
|
<Input name="onStop" type="1" type_size="1" nature="3" inner="0" tooltip="Box behavior stops when a signal is received on this input." id="3" />
|
|
<Output name="onStopped" type="1" type_size="1" nature="1" inner="0" tooltip="Signal sent when box behavior is finished." id="4" />
|
|
</Box>
|
|
<Box name="Tocolor" id="2" localization="8" tooltip="tags:
LED" x="490" y="183">
|
|
<bitmap>media/images/box/interaction/LED.png</bitmap>
|
|
<script language="4">
|
|
<content>
|
|
<![CDATA[class MyClass(GeneratedClass):
|
|
def __init__(self):
|
|
GeneratedClass.__init__(self)
|
|
|
|
def onLoad(self):
|
|
#~ puts code for box initialization here
|
|
self.leds = self.session().service("ALLeds")
|
|
|
|
def onUnload(self):
|
|
#~ puts code for box cleanup here
|
|
self.leds.reset("EarLeds")
|
|
pass
|
|
|
|
def onInput_onStart(self):
|
|
rDuration = 0.2
|
|
self.leds.fadeRGB( "BrainLeds", 0xffffff, rDuration)
|
|
|
|
self.onStopped()
|
|
|
|
def onInput_onStop(self):
|
|
self.onUnload() #~ it is usually a good idea to call onUnload of this box in a onStop method, as the code written in onUnload is used to finish the working of the box as well
|
|
pass]]>
|
|
</content>
|
|
</script>
|
|
<Input name="onLoad" type="1" type_size="1" nature="0" inner="1" tooltip="Signal sent when diagram is loaded." id="1" />
|
|
<Input name="onStart" type="1" type_size="1" nature="2" inner="0" tooltip="Box behavior starts when a signal is received on this input." id="2" />
|
|
<Input name="onStop" type="1" type_size="1" nature="3" inner="0" tooltip="Box behavior stops when a signal is received on this input." id="3" />
|
|
<Output name="onStopped" type="1" type_size="1" nature="1" inner="0" tooltip="Signal sent when box behavior is finished." id="4" />
|
|
<Resource name="Left eye leds" type="Lock" timeout="1" />
|
|
<Resource name="Right eye leds" type="Lock" timeout="1" />
|
|
</Box>
|
|
<Link inputowner="1" indexofinput="2" outputowner="0" indexofoutput="1" />
|
|
</Diagram>
|
|
</BehaviorKeyframe>
|
|
<BehaviorKeyframe name="Eye48" index="247">
|
|
<Diagram>
|
|
<Box name="Blink" id="3" localization="8" tooltip="tags:
LED" x="339" y="161">
|
|
<bitmap>media/images/box/interaction/LED.png</bitmap>
|
|
<script language="4">
|
|
<content>
|
|
<![CDATA[class MyClass(GeneratedClass):
|
|
def __init__(self):
|
|
GeneratedClass.__init__(self)
|
|
|
|
def onLoad(self):
|
|
#~ puts code for box initialization here
|
|
self.leds = self.session().service("ALLeds")
|
|
|
|
def onUnload(self):
|
|
#~ puts code for box cleanup here
|
|
pass
|
|
|
|
def onInput_onStart(self):
|
|
rDuration = 0.05;
|
|
self.leds.fadeRGB( "FaceLed0", 0x000000, rDuration, _async=True );
|
|
self.leds.fadeRGB( "FaceLed1", 0x000000, rDuration, _async=True );
|
|
self.leds.fadeRGB( "FaceLed2", 0xffffff, rDuration, _async=True );
|
|
self.leds.fadeRGB( "FaceLed3", 0x000000, rDuration, _async=True );
|
|
self.leds.fadeRGB( "FaceLed4", 0x000000, rDuration, _async=True );
|
|
self.leds.fadeRGB( "FaceLed5", 0x000000, rDuration, _async=True );
|
|
self.leds.fadeRGB( "FaceLed6", 0xffffff, rDuration, _async=True );
|
|
self.leds.fadeRGB( "FaceLed7", 0x000000, rDuration );
|
|
|
|
time.sleep( 0.1 );
|
|
|
|
rDuration = 0.05;
|
|
self.leds.fadeRGB( "FaceLeds", 0xffffff, rDuration );
|
|
|
|
self.onStopped()
|
|
|
|
|
|
def onInput_onStop(self):
|
|
self.onUnload() #~ it is usually a good idea to call onUnload of this box in a onStop method, as the code written in onUnload is used to finish the working of the box as well
|
|
pass]]>
|
|
</content>
|
|
</script>
|
|
<Input name="onLoad" type="1" type_size="1" nature="0" inner="1" tooltip="Signal sent when diagram is loaded." id="1" />
|
|
<Input name="onStart" type="1" type_size="1" nature="2" inner="0" tooltip="Box behavior starts when a signal is received on this input." id="2" />
|
|
<Input name="onStop" type="1" type_size="1" nature="3" inner="0" tooltip="Box behavior stops when a signal is received on this input." id="3" />
|
|
<Output name="onStopped" type="1" type_size="1" nature="1" inner="0" tooltip="Signal sent when box behavior is finished." id="4" />
|
|
<Resource name="Left eye leds" type="Lock" timeout="1" />
|
|
<Resource name="Right eye leds" type="Lock" timeout="1" />
|
|
</Box>
|
|
<Link inputowner="3" indexofinput="2" outputowner="0" indexofoutput="1" />
|
|
</Diagram>
|
|
</BehaviorKeyframe>
|
|
</BehaviorLayer>
|
|
<BehaviorLayer name="music">
|
|
<BehaviorKeyframe name="keyframe12" index="12">
|
|
<Diagram>
|
|
<Box name="Play Sound" id="1" localization="8" tooltip="Play a sound file. Select the file in parameters. The format of the file can be wav or ogg (on virtual robot) and also mp3 (on a real robot).

Note: There can be some delay to play ogg or mp3 (on a robot) files. We advise you to use wav if
you want a fast play of the file." x="193" y="90">
|
|
<bitmap>media/images/box/interaction/play_music.png</bitmap>
|
|
<script language="4">
|
|
<content>
|
|
<![CDATA[class MyClass(GeneratedClass):
|
|
def __init__(self):
|
|
GeneratedClass.__init__(self, False)
|
|
|
|
def onLoad(self):
|
|
self.bIsRunning = False
|
|
|
|
def onUnload(self):
|
|
self.bIsRunning = False
|
|
|
|
def onInput_onStart(self):
|
|
self.bIsRunning = True
|
|
|
|
def onInput_onStop(self):
|
|
if( self.bIsRunning ):
|
|
self.onUnload()
|
|
self.onStopped()]]>
|
|
</content>
|
|
</script>
|
|
<Input name="onLoad" type="1" type_size="1" nature="0" inner="1" tooltip="Signal sent when Diagram is loaded." id="1" />
|
|
<Input name="onStart" type="1" type_size="1" nature="2" inner="0" tooltip="Starts the music." id="2" />
|
|
<Input name="onStop" type="1" type_size="1" nature="3" inner="0" tooltip="Stops the music." id="3" />
|
|
<Output name="onStopped" type="1" type_size="1" nature="1" inner="0" tooltip="Signal sent when box behavior is finished or stopped." id="4" />
|
|
<Parameter name="File name" inherits_from_parent="0" content_type="4" value="/sounds/mikhael-landscape-paisaje.ogg" default_value="" tooltip="Name of the file you want to play.

Note: You can click on the folder icon to browse the project content or import
new files to the project." id="5" />
|
|
<Parameter name="Begin position (s)" inherits_from_parent="0" content_type="2" value="0" default_value="0" min="0" max="600" tooltip="Position in seconds where the playing must start." id="6" />
|
|
<Parameter name="Volume (%)" inherits_from_parent="0" content_type="1" value="100" default_value="100" min="0" max="100" tooltip="Volume the file is played with." id="7" />
|
|
<Parameter name="Balance L/R" inherits_from_parent="0" content_type="2" value="0" default_value="0" min="-1" max="1" tooltip="Value which determines if the sound is played more on the robot's left or right.
You can particularly set it to:
- -1 to play only on the left loudspeaker.
- 0 to play on both loudspeakers.
- 1 to play only on the right loudspeaker." id="8" />
|
|
<Parameter name="Play in loop" inherits_from_parent="0" content_type="0" value="0" default_value="0" tooltip="This parameter allows to play the file in loop. The playing will start each time at
the beginning of the file." id="9" />
|
|
<Timeline enable="0">
|
|
<BehaviorLayer name="behavior_layer1">
|
|
<BehaviorKeyframe name="keyframe1" index="1">
|
|
<Diagram>
|
|
<Box name="Play Sound File" id="2" localization="8" tooltip="Play the sound." x="442" y="70">
|
|
<bitmap>media/images/box/interaction/play_music.png</bitmap>
|
|
<script language="4">
|
|
<content>
|
|
<![CDATA[import time
|
|
|
|
class MyClass(GeneratedClass):
|
|
def __init__(self):
|
|
GeneratedClass.__init__(self, False)
|
|
|
|
def onLoad(self):
|
|
self.player = self.session().service('ALAudioPlayer')
|
|
self.playerStop = self.session().service('ALAudioPlayer') #Create another service as wait is blocking if audioout is remote
|
|
self.bIsRunning = False
|
|
self.ids = []
|
|
|
|
def onUnload(self):
|
|
for id in self.ids:
|
|
try:
|
|
self.playerStop.stop(id)
|
|
except:
|
|
pass
|
|
while( self.bIsRunning ):
|
|
time.sleep( 0.2 )
|
|
|
|
def onInput_onStart(self, p):
|
|
self.bIsRunning = True
|
|
try:
|
|
if (self.getParameter("Play in loop")) :
|
|
id = self.player.pCall("playFileInLoop",p,self.getParameter("Volume (%)")/100.,self.getParameter("Balance L/R"))
|
|
else :
|
|
id = self.player.pCall("playFileFromPosition",p,self.getParameter("Begin position (s)"),self.getParameter("Volume (%)")/100.,self.getParameter("Balance L/R"))
|
|
self.ids.append(id)
|
|
self.player.wait(id)
|
|
finally:
|
|
try:
|
|
self.ids.remove(id)
|
|
except:
|
|
pass
|
|
if( self.ids == [] ):
|
|
self.onStopped() # activate output of the box
|
|
self.bIsRunning = False
|
|
|
|
def onInput_onStop(self):
|
|
self.onUnload()]]>
|
|
</content>
|
|
</script>
|
|
<Input name="onLoad" type="1" type_size="1" nature="0" inner="1" tooltip="Signal sent when Diagram is loaded." id="1" />
|
|
<Input name="onStart" type="3" type_size="1" nature="2" inner="0" tooltip="Box behavior starts when a signal is received on this Input." id="2" />
|
|
<Input name="onStop" type="1" type_size="1" nature="3" inner="0" tooltip="Box behavior stops when a signal is received on this Input." id="3" />
|
|
<Output name="onStopped" type="1" type_size="1" nature="1" inner="0" tooltip="Signal sent when Box behavior is finished." id="4" />
|
|
<Parameter name="Begin position (s)" inherits_from_parent="1" content_type="2" value="0" default_value="0" min="0" max="600" tooltip="Position in seconds where the playing must start." id="5" />
|
|
<Parameter name="Volume (%)" inherits_from_parent="1" content_type="1" value="100" default_value="100" min="0" max="100" tooltip="Volume the file is played with." id="6" />
|
|
<Parameter name="Balance L/R" inherits_from_parent="1" content_type="2" value="0" default_value="0" min="-1" max="1" tooltip="Value which determines if the sound is played more on the robot's left or right.
You can particularly set it to:
- -1 to play only on the left loudspeaker.
- 0 to play on both loudspeakers.
- 1 to play only on the right loudspeaker." id="7" />
|
|
<Parameter name="Play in loop" inherits_from_parent="1" content_type="0" value="0" default_value="0" tooltip="This parameter allows to play the file in loop. The playing will start each time at
the beginning of the file." id="8" />
|
|
</Box>
|
|
<Box name="Get Attached File" id="1" localization="8" tooltip="Use this box to choose an attached file in its parameters. The filename will be sent on
the output when the input is stimulated." x="216" y="71">
|
|
<bitmap>media/images/box/folder.png</bitmap>
|
|
<script language="4">
|
|
<content>
|
|
<![CDATA[class MyClass(GeneratedClass):
|
|
def __init__(self):
|
|
GeneratedClass.__init__(self, False)
|
|
|
|
def onLoad(self):
|
|
pass
|
|
|
|
def onInput_onStart(self):
|
|
self.onStopped(self.behaviorAbsolutePath() + self.getParameter("File name"))]]>
|
|
</content>
|
|
</script>
|
|
<Input name="onLoad" type="1" type_size="1" nature="0" inner="1" tooltip="Signal sent when diagram is loaded." id="1" />
|
|
<Input name="onStart" type="1" type_size="1" nature="1" inner="0" tooltip="To send the filepath on the output." id="2" />
|
|
<Output name="onStopped" type="3" type_size="1" nature="2" inner="0" tooltip="The filepath of the selected resource file." id="3" />
|
|
<Parameter name="File name" inherits_from_parent="1" content_type="4" value="" default_value="" tooltip="Name of the file which is going to be sent on the box output.

Note: You can click on the folder icon to browse the project content or import
new files to the project." id="4" />
|
|
</Box>
|
|
<Link inputowner="0" indexofinput="4" outputowner="2" indexofoutput="4" />
|
|
<Link inputowner="1" indexofinput="2" outputowner="0" indexofoutput="2" />
|
|
<Link inputowner="2" indexofinput="2" outputowner="1" indexofoutput="3" />
|
|
</Diagram>
|
|
</BehaviorKeyframe>
|
|
</BehaviorLayer>
|
|
</Timeline>
|
|
<Resource name="Audio player" type="Lock" timeout="0" />
|
|
</Box>
|
|
<Link inputowner="1" indexofinput="2" outputowner="0" indexofoutput="1" />
|
|
</Diagram>
|
|
</BehaviorKeyframe>
|
|
</BehaviorLayer>
|
|
<ActuatorList model="nao">
|
|
<ActuatorCurve name="value" actuator="HeadYaw" mute="0" unit="0">
|
|
<Key frame="15" value="0" />
|
|
<Key frame="25" value="4.82967e-06" />
|
|
<Key frame="35" value="4.82968e-06" />
|
|
<Key frame="45" value="4.82968e-06" />
|
|
<Key frame="55" value="-2.73208e-05" />
|
|
<Key frame="65" value="18" />
|
|
<Key frame="75" value="-17" />
|
|
<Key frame="85" value="-68" />
|
|
<Key frame="95" value="-16" />
|
|
<Key frame="105" value="12" />
|
|
<Key frame="118" value="90" />
|
|
<Key frame="131" value="12" />
|
|
<Key frame="142" value="8" />
|
|
<Key frame="152" value="0" />
|
|
<Key frame="162" value="-8" />
|
|
<Key frame="172" value="16" />
|
|
<Key frame="185" value="-12" />
|
|
<Key frame="198" value="-90" />
|
|
<Key frame="211" value="-12" />
|
|
<Key frame="222" value="-8" />
|
|
<Key frame="231" value="0" />
|
|
<Key frame="250" value="0" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="HeadPitch" mute="0" unit="0">
|
|
<Key frame="15" value="0" />
|
|
<Key frame="25" value="5.12931e-06" />
|
|
<Key frame="35" value="-2.73208e-05" />
|
|
<Key frame="45" value="5.0962e-06" />
|
|
<Key frame="55" value="6.01466e-06" />
|
|
<Key frame="65" value="19" />
|
|
<Key frame="75" value="18" />
|
|
<Key frame="85" value="5.26559e-06" />
|
|
<Key frame="95" value="-19" />
|
|
<Key frame="105" value="8" />
|
|
<Key frame="118" value="-5" />
|
|
<Key frame="131" value="8" />
|
|
<Key frame="142" value="22" />
|
|
<Key frame="152" value="32" />
|
|
<Key frame="162" value="22" />
|
|
<Key frame="172" value="-19" />
|
|
<Key frame="185" value="8" />
|
|
<Key frame="198" value="-5" />
|
|
<Key frame="211" value="8" />
|
|
<Key frame="222" value="22" />
|
|
<Key frame="231" value="0" />
|
|
<Key frame="250" value="-10.0411" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LShoulderPitch" mute="0" unit="0">
|
|
<Key frame="15" value="90" />
|
|
<Key frame="25" value="110" />
|
|
<Key frame="35" value="120" />
|
|
<Key frame="45" value="90" />
|
|
<Key frame="55" value="0" />
|
|
<Key frame="65" value="21" />
|
|
<Key frame="75" value="20" />
|
|
<Key frame="85" value="11" />
|
|
<Key frame="95" value="-46" />
|
|
<Key frame="105" value="-10" />
|
|
<Key frame="118" value="-17" />
|
|
<Key frame="131" value="-10" />
|
|
<Key frame="142" value="30" />
|
|
<Key frame="152" value="27" />
|
|
<Key frame="162" value="19" />
|
|
<Key frame="172" value="-27" />
|
|
<Key frame="185" value="4" />
|
|
<Key frame="198" value="-4" />
|
|
<Key frame="211" value="4" />
|
|
<Key frame="222" value="19" />
|
|
<Key frame="231" value="97" />
|
|
<Key frame="250" value="83.0164" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LShoulderRoll" mute="0" unit="0">
|
|
<Key frame="15" value="10" />
|
|
<Key frame="25" value="20" />
|
|
<Key frame="35" value="10" />
|
|
<Key frame="45" value="10" />
|
|
<Key frame="55" value="10" />
|
|
<Key frame="65" value="40" />
|
|
<Key frame="75" value="0" />
|
|
<Key frame="85" value="5" />
|
|
<Key frame="95" value="10" />
|
|
<Key frame="105" value="23" />
|
|
<Key frame="118" value="66" />
|
|
<Key frame="131" value="23" />
|
|
<Key frame="142" value="23" />
|
|
<Key frame="152" value="10" />
|
|
<Key frame="162" value="0" />
|
|
<Key frame="172" value="23" />
|
|
<Key frame="185" value="0" />
|
|
<Key frame="198" value="0" />
|
|
<Key frame="211" value="0" />
|
|
<Key frame="222" value="12" />
|
|
<Key frame="231" value="54" />
|
|
<Key frame="250" value="12.7723" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LElbowYaw" mute="0" unit="0">
|
|
<Key frame="15" value="-90" />
|
|
<Key frame="25" value="-90" />
|
|
<Key frame="35" value="-90" />
|
|
<Key frame="45" value="-90" />
|
|
<Key frame="55" value="-90" />
|
|
<Key frame="65" value="-22" />
|
|
<Key frame="75" value="0" />
|
|
<Key frame="85" value="0" />
|
|
<Key frame="95" value="0" />
|
|
<Key frame="105" value="0" />
|
|
<Key frame="118" value="0" />
|
|
<Key frame="131" value="0" />
|
|
<Key frame="142" value="0" />
|
|
<Key frame="152" value="12" />
|
|
<Key frame="162" value="11" />
|
|
<Key frame="172" value="-24" />
|
|
<Key frame="185" value="-24" />
|
|
<Key frame="198" value="-5" />
|
|
<Key frame="211" value="-24" />
|
|
<Key frame="222" value="11" />
|
|
<Key frame="227" value="-21.7" />
|
|
<Key frame="231" value="-14" />
|
|
<Key frame="250" value="-68.8135" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LElbowRoll" mute="0" unit="0">
|
|
<Key frame="15" value="0" />
|
|
<Key frame="25" value="-40" />
|
|
<Key frame="35" value="-60" />
|
|
<Key frame="45" value="0" />
|
|
<Key frame="55" value="0" />
|
|
<Key frame="65" value="-95" />
|
|
<Key frame="75" value="-55" />
|
|
<Key frame="85" value="-85" />
|
|
<Key frame="95" value="-58" />
|
|
<Key frame="105" value="-58" />
|
|
<Key frame="118" value="0" />
|
|
<Key frame="131" value="-58" />
|
|
<Key frame="142" value="-58" />
|
|
<Key frame="152" value="-51" />
|
|
<Key frame="162" value="-49" />
|
|
<Key frame="172" value="-64" />
|
|
<Key frame="185" value="-49" />
|
|
<Key frame="198" value="-72" />
|
|
<Key frame="211" value="-49" />
|
|
<Key frame="222" value="-49" />
|
|
<Key frame="227" value="-57" />
|
|
<Key frame="231" value="-81.4" />
|
|
<Key frame="250" value="-23.6757" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LWristYaw" mute="0" unit="0">
|
|
<Key frame="15" value="-88" />
|
|
<Key frame="250" value="5.78932" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LHand" mute="0" unit="1">
|
|
<Key frame="15" value="0" />
|
|
<Key frame="250" value="0.291787" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="RShoulderPitch" mute="0" unit="0">
|
|
<Key frame="15" value="90" />
|
|
<Key frame="25" value="110" />
|
|
<Key frame="35" value="120" />
|
|
<Key frame="45" value="90" />
|
|
<Key frame="55" value="0" />
|
|
<Key frame="65" value="10" />
|
|
<Key frame="75" value="35" />
|
|
<Key frame="85" value="60" />
|
|
<Key frame="95" value="-27" />
|
|
<Key frame="105" value="4" />
|
|
<Key frame="118" value="-4" />
|
|
<Key frame="131" value="4" />
|
|
<Key frame="142" value="19" />
|
|
<Key frame="152" value="27" />
|
|
<Key frame="162" value="30" />
|
|
<Key frame="172" value="-46" />
|
|
<Key frame="185" value="-10" />
|
|
<Key frame="198" value="-17" />
|
|
<Key frame="211" value="-10" />
|
|
<Key frame="222" value="30" />
|
|
<Key frame="231" value="97" />
|
|
<Key frame="250" value="82.7438" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="RShoulderRoll" mute="0" unit="0">
|
|
<Key frame="15" value="-10" />
|
|
<Key frame="25" value="-10" />
|
|
<Key frame="35" value="-20" />
|
|
<Key frame="45" value="-10" />
|
|
<Key frame="55" value="-9.99896" />
|
|
<Key frame="65" value="-4" />
|
|
<Key frame="75" value="-48" />
|
|
<Key frame="85" value="-87" />
|
|
<Key frame="95" value="-23" />
|
|
<Key frame="105" value="0" />
|
|
<Key frame="118" value="0" />
|
|
<Key frame="131" value="0" />
|
|
<Key frame="142" value="0" />
|
|
<Key frame="152" value="-10" />
|
|
<Key frame="162" value="-23" />
|
|
<Key frame="172" value="-10" />
|
|
<Key frame="185" value="-23" />
|
|
<Key frame="198" value="-66" />
|
|
<Key frame="211" value="-23" />
|
|
<Key frame="222" value="-32" />
|
|
<Key frame="231" value="-54" />
|
|
<Key frame="250" value="-12.6315" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="RElbowYaw" mute="0" unit="0">
|
|
<Key frame="15" value="90" />
|
|
<Key frame="25" value="90" />
|
|
<Key frame="35" value="90" />
|
|
<Key frame="45" value="90" />
|
|
<Key frame="55" value="90" />
|
|
<Key frame="65" value="11" />
|
|
<Key frame="75" value="20" />
|
|
<Key frame="85" value="90" />
|
|
<Key frame="95" value="24" />
|
|
<Key frame="105" value="24" />
|
|
<Key frame="118" value="5" />
|
|
<Key frame="131" value="24" />
|
|
<Key frame="142" value="-11" />
|
|
<Key frame="152" value="-12" />
|
|
<Key frame="162" value="0" />
|
|
<Key frame="172" value="0" />
|
|
<Key frame="185" value="0" />
|
|
<Key frame="198" value="0" />
|
|
<Key frame="211" value="0" />
|
|
<Key frame="222" value="0" />
|
|
<Key frame="227" value="19.6" />
|
|
<Key frame="231" value="14" />
|
|
<Key frame="250" value="68.8565" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="RElbowRoll" mute="0" unit="0">
|
|
<Key frame="15" value="0" />
|
|
<Key frame="25" value="40" />
|
|
<Key frame="35" value="60" />
|
|
<Key frame="45" value="1.47493e-05" />
|
|
<Key frame="55" value="0" />
|
|
<Key frame="65" value="71" />
|
|
<Key frame="75" value="94" />
|
|
<Key frame="85" value="4" />
|
|
<Key frame="95" value="64" />
|
|
<Key frame="105" value="49" />
|
|
<Key frame="118" value="72" />
|
|
<Key frame="131" value="49" />
|
|
<Key frame="142" value="49" />
|
|
<Key frame="152" value="51" />
|
|
<Key frame="162" value="58" />
|
|
<Key frame="172" value="58" />
|
|
<Key frame="185" value="58" />
|
|
<Key frame="198" value="2" />
|
|
<Key frame="211" value="58" />
|
|
<Key frame="222" value="58" />
|
|
<Key frame="227" value="64.9" />
|
|
<Key frame="231" value="78.3" />
|
|
<Key frame="250" value="23.387" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="RWristYaw" mute="0" unit="0">
|
|
<Key frame="15" value="88" />
|
|
<Key frame="250" value="6.23278" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="RHand" mute="0" unit="1">
|
|
<Key frame="15" value="0" />
|
|
<Key frame="250" value="0.301984" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LHipYawPitch" mute="0" unit="0">
|
|
<Key frame="15" value="-6.2" />
|
|
<Key frame="25" value="-6.9" />
|
|
<Key frame="35" value="-6.94104" />
|
|
<Key frame="45" value="-7.04938" />
|
|
<Key frame="55" value="-8.2" />
|
|
<Key frame="65" value="-9.6" />
|
|
<Key frame="75" value="-5.7" />
|
|
<Key frame="85" value="0" />
|
|
<Key frame="95" value="0" />
|
|
<Key frame="105" value="0" />
|
|
<Key frame="118" value="0" />
|
|
<Key frame="131" value="0" />
|
|
<Key frame="142" value="-0.566539" />
|
|
<Key frame="152" value="0" />
|
|
<Key frame="162" value="0" />
|
|
<Key frame="172" value="0" />
|
|
<Key frame="185" value="0" />
|
|
<Key frame="198" value="0" />
|
|
<Key frame="211" value="0" />
|
|
<Key frame="222" value="-3.9" />
|
|
<Key frame="231" value="0" />
|
|
<Key frame="250" value="-9.74084" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LHipRoll" mute="0" unit="0">
|
|
<Key frame="15" value="-3" />
|
|
<Key frame="25" value="-7" />
|
|
<Key frame="35" value="-11.4235" />
|
|
<Key frame="45" value="5.96288" />
|
|
<Key frame="55" value="6" />
|
|
<Key frame="65" value="-10" />
|
|
<Key frame="75" value="10" />
|
|
<Key frame="85" value="24.1" />
|
|
<Key frame="95" value="30.3" />
|
|
<Key frame="105" value="28.7" />
|
|
<Key frame="118" value="32.4" />
|
|
<Key frame="131" value="28.7" />
|
|
<Key frame="142" value="19.9829" />
|
|
<Key frame="152" value="0" />
|
|
<Key frame="162" value="-15" />
|
|
<Key frame="167" value="14.4" />
|
|
<Key frame="172" value="15" />
|
|
<Key frame="185" value="8" />
|
|
<Key frame="198" value="40" />
|
|
<Key frame="211" value="8" />
|
|
<Key frame="222" value="-15" />
|
|
<Key frame="231" value="0" />
|
|
<Key frame="250" value="6.82441" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LHipPitch" mute="0" unit="0">
|
|
<Key frame="15" value="0" />
|
|
<Key frame="25" value="0" />
|
|
<Key frame="35" value="-19.8395" />
|
|
<Key frame="45" value="-0.0382666" />
|
|
<Key frame="55" value="0" />
|
|
<Key frame="65" value="-40" />
|
|
<Key frame="75" value="-35" />
|
|
<Key frame="85" value="-60" />
|
|
<Key frame="95" value="-60" />
|
|
<Key frame="105" value="-60" />
|
|
<Key frame="118" value="-60" />
|
|
<Key frame="131" value="-60" />
|
|
<Key frame="142" value="-59.6787" />
|
|
<Key frame="152" value="-50" />
|
|
<Key frame="162" value="-42.5" />
|
|
<Key frame="172" value="-7" />
|
|
<Key frame="185" value="-50" />
|
|
<Key frame="198" value="0" />
|
|
<Key frame="211" value="-50" />
|
|
<Key frame="222" value="-37.5" />
|
|
<Key frame="231" value="-60" />
|
|
<Key frame="250" value="7.30057" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LKneePitch" mute="0" unit="0">
|
|
<Key frame="15" value="0" />
|
|
<Key frame="25" value="0" />
|
|
<Key frame="35" value="42.8009" />
|
|
<Key frame="45" value="0.0951225" />
|
|
<Key frame="55" value="-5.69182e-06" />
|
|
<Key frame="65" value="80" />
|
|
<Key frame="75" value="70" />
|
|
<Key frame="85" value="120" />
|
|
<Key frame="95" value="120" />
|
|
<Key frame="105" value="120" />
|
|
<Key frame="118" value="120" />
|
|
<Key frame="131" value="120" />
|
|
<Key frame="142" value="120.887" />
|
|
<Key frame="152" value="100" />
|
|
<Key frame="162" value="85" />
|
|
<Key frame="172" value="7" />
|
|
<Key frame="185" value="100" />
|
|
<Key frame="198" value="0" />
|
|
<Key frame="211" value="100" />
|
|
<Key frame="222" value="75" />
|
|
<Key frame="231" value="120" />
|
|
<Key frame="250" value="-5.09006" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LAnklePitch" mute="0" unit="0">
|
|
<Key frame="15" value="5.75265e-06" />
|
|
<Key frame="25" value="0" />
|
|
<Key frame="35" value="-22.1511" />
|
|
<Key frame="45" value="-0.569877" />
|
|
<Key frame="55" value="0" />
|
|
<Key frame="65" value="-37.1" />
|
|
<Key frame="75" value="-35" />
|
|
<Key frame="85" value="-60" />
|
|
<Key frame="95" value="-60" />
|
|
<Key frame="105" value="-60" />
|
|
<Key frame="118" value="-60" />
|
|
<Key frame="131" value="-60" />
|
|
<Key frame="142" value="-59.6787" />
|
|
<Key frame="152" value="-50" />
|
|
<Key frame="162" value="-42.5" />
|
|
<Key frame="172" value="0" />
|
|
<Key frame="185" value="5.75265e-06" />
|
|
<Key frame="198" value="30" />
|
|
<Key frame="211" value="5.75265e-06" />
|
|
<Key frame="217" value="-31.8" />
|
|
<Key frame="222" value="-37.5" />
|
|
<Key frame="231" value="-60" />
|
|
<Key frame="250" value="5.00876" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="LAnkleRoll" mute="0" unit="0">
|
|
<Key frame="15" value="3" />
|
|
<Key frame="25" value="7" />
|
|
<Key frame="35" value="9.83048" />
|
|
<Key frame="45" value="-6.94104" />
|
|
<Key frame="55" value="-6" />
|
|
<Key frame="65" value="10" />
|
|
<Key frame="75" value="-15" />
|
|
<Key frame="85" value="3.6" />
|
|
<Key frame="95" value="4.2" />
|
|
<Key frame="105" value="0.5" />
|
|
<Key frame="118" value="1.8" />
|
|
<Key frame="131" value="0.5" />
|
|
<Key frame="142" value="6.97225" />
|
|
<Key frame="152" value="0" />
|
|
<Key frame="162" value="-13.8" />
|
|
<Key frame="167" value="-31.9" />
|
|
<Key frame="172" value="-24.3" />
|
|
<Key frame="185" value="-20" />
|
|
<Key frame="198" value="0" />
|
|
<Key frame="211" value="-20" />
|
|
<Key frame="222" value="-17.9" />
|
|
<Key frame="231" value="0" />
|
|
<Key frame="250" value="-6.34798" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="RHipRoll" mute="0" unit="0">
|
|
<Key frame="15" value="3" />
|
|
<Key frame="25" value="-7" />
|
|
<Key frame="35" value="-24.8982" />
|
|
<Key frame="45" value="-6.04821" />
|
|
<Key frame="55" value="-6" />
|
|
<Key frame="65" value="-20" />
|
|
<Key frame="75" value="-45" />
|
|
<Key frame="85" value="-31" />
|
|
<Key frame="95" value="-12.7" />
|
|
<Key frame="105" value="-25.6" />
|
|
<Key frame="118" value="-40" />
|
|
<Key frame="131" value="-25.6" />
|
|
<Key frame="142" value="15.2077" />
|
|
<Key frame="152" value="0" />
|
|
<Key frame="162" value="-20" />
|
|
<Key frame="172" value="-30.9" />
|
|
<Key frame="185" value="-29.3" />
|
|
<Key frame="198" value="-34.2" />
|
|
<Key frame="211" value="-35" />
|
|
<Key frame="222" value="-30.5" />
|
|
<Key frame="231" value="0" />
|
|
<Key frame="250" value="-6.82407" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="RHipPitch" mute="0" unit="0">
|
|
<Key frame="15" value="0" />
|
|
<Key frame="25" value="0" />
|
|
<Key frame="35" value="0.134711" />
|
|
<Key frame="45" value="0.21464" />
|
|
<Key frame="55" value="0" />
|
|
<Key frame="65" value="-40" />
|
|
<Key frame="75" value="-10" />
|
|
<Key frame="85" value="-6" />
|
|
<Key frame="95" value="-7" />
|
|
<Key frame="105" value="-50" />
|
|
<Key frame="118" value="0" />
|
|
<Key frame="131" value="-50" />
|
|
<Key frame="142" value="-45.3545" />
|
|
<Key frame="152" value="-50" />
|
|
<Key frame="162" value="-60" />
|
|
<Key frame="172" value="-60" />
|
|
<Key frame="185" value="-60" />
|
|
<Key frame="198" value="-60" />
|
|
<Key frame="211" value="-60" />
|
|
<Key frame="222" value="-60" />
|
|
<Key frame="231" value="-60" />
|
|
<Key frame="250" value="7.30058" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="RKneePitch" mute="0" unit="0">
|
|
<Key frame="15" value="0" />
|
|
<Key frame="25" value="0" />
|
|
<Key frame="35" value="0.178188" />
|
|
<Key frame="45" value="-0.410883" />
|
|
<Key frame="55" value="0" />
|
|
<Key frame="65" value="80" />
|
|
<Key frame="75" value="20" />
|
|
<Key frame="85" value="7" />
|
|
<Key frame="95" value="7" />
|
|
<Key frame="105" value="100" />
|
|
<Key frame="118" value="0" />
|
|
<Key frame="131" value="100" />
|
|
<Key frame="142" value="90.0035" />
|
|
<Key frame="152" value="100" />
|
|
<Key frame="162" value="120" />
|
|
<Key frame="172" value="120" />
|
|
<Key frame="185" value="120" />
|
|
<Key frame="198" value="120" />
|
|
<Key frame="211" value="120" />
|
|
<Key frame="222" value="120" />
|
|
<Key frame="231" value="120" />
|
|
<Key frame="250" value="-5.26102" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="RAnklePitch" mute="0" unit="0">
|
|
<Key frame="15" value="5.75266e-06" />
|
|
<Key frame="25" value="0" />
|
|
<Key frame="35" value="0.266079" />
|
|
<Key frame="45" value="-0.349163" />
|
|
<Key frame="55" value="0" />
|
|
<Key frame="65" value="-40" />
|
|
<Key frame="75" value="-10" />
|
|
<Key frame="85" value="0" />
|
|
<Key frame="95" value="0" />
|
|
<Key frame="105" value="5.75266e-06" />
|
|
<Key frame="118" value="30" />
|
|
<Key frame="131" value="5.75266e-06" />
|
|
<Key frame="142" value="-45.8771" />
|
|
<Key frame="152" value="-50" />
|
|
<Key frame="162" value="-60" />
|
|
<Key frame="172" value="-60" />
|
|
<Key frame="185" value="-60" />
|
|
<Key frame="198" value="-60" />
|
|
<Key frame="211" value="-60" />
|
|
<Key frame="222" value="-60" />
|
|
<Key frame="231" value="-60" />
|
|
<Key frame="250" value="5.00876" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="value" actuator="RAnkleRoll" mute="0" unit="0">
|
|
<Key frame="15" value="-3" />
|
|
<Key frame="25" value="7.5" />
|
|
<Key frame="35" value="22.6325" />
|
|
<Key frame="45" value="6.68218" />
|
|
<Key frame="55" value="6" />
|
|
<Key frame="65" value="16.9" />
|
|
<Key frame="75" value="35.6" />
|
|
<Key frame="85" value="45" />
|
|
<Key frame="95" value="42.6" />
|
|
<Key frame="105" value="25" />
|
|
<Key frame="118" value="0" />
|
|
<Key frame="131" value="25" />
|
|
<Key frame="142" value="9.83317" />
|
|
<Key frame="152" value="0" />
|
|
<Key frame="162" value="-10" />
|
|
<Key frame="172" value="-2.41531" />
|
|
<Key frame="185" value="-3.18747" />
|
|
<Key frame="198" value="-0.718272" />
|
|
<Key frame="211" value="-0.558977" />
|
|
<Key frame="222" value="-1.55043" />
|
|
<Key frame="231" value="0" />
|
|
<Key frame="250" value="6.34774" />
|
|
</ActuatorCurve>
|
|
<ActuatorCurve name="RHipYawPitch (RHipYawPitch)" actuator="RHipYawPitch" mute="0" unit="0">
|
|
<Key frame="15" value="-6.2" />
|
|
<Key frame="25" value="-6.9" />
|
|
<Key frame="35" value="-7.55628" />
|
|
<Key frame="45" value="-7.04938" />
|
|
<Key frame="55" value="-8.2" />
|
|
<Key frame="65" value="-9.6" />
|
|
<Key frame="142" value="0.178188" />
|
|
<Key frame="250" value="-9.74084" />
|
|
</ActuatorCurve>
|
|
</ActuatorList>
|
|
</Timeline>
|
|
<Resource name="Standing" type="Lock" timeout="1" />
|
|
<Resource name="All motors" type="Lock" timeout="1" />
|
|
</Box>
|
|
<Link inputowner="11" indexofinput="2" outputowner="0" indexofoutput="2" />
|
|
<Link inputowner="0" indexofinput="4" outputowner="11" indexofoutput="4" />
|
|
</Diagram>
|
|
</BehaviorKeyframe>
|
|
</BehaviorLayer>
|
|
</Timeline>
|
|
</Box>
|
|
</ChoregrapheProject>
|