ALAnimationPlayer¶
NAOqi Motion - Overview | API | Tutorials | Advanced
What it does¶
ALAnimationPlayer allows you to start animations. This service is a wrapper of ALBehaviorManager, its goal is to have an easy way to start animations according to animation tags or the current posture of the robot.
How it works¶
Animation Paths¶
To run an application stored in a package, use:
package_name/path_of_animation
Example:
run("animations/Stand/Gestures/Hey_1")
Some specific patterns will automatically be replaced as documented here:
Pattern | Is replaced by... | When... |
---|---|---|
[posture] | Stand | the Posture family is Standing. |
Sit | the Posture family is Sitting. | |
SitOnPod | the Posture family is SittingOnChair. | |
[robot] | Nao | the robot is Nao. |
Pepper | the robot is Pepper. |
Example:
run("animations/[posture]/Gestures/Hey_1")
run("my_dances/[robot]/salsa")
If one of those patterns cannot be replaced the path will be considered as not valid.
You can use any animation available by default:
You can also use your own behaviors provided that you follow these requirements:
- Limit the content of the behavior to an animation (no speech, no complex behaviors), in order to guaranty a good compatibility with ALTextToSpeech.
- Lock the resources as follow: Wait 1 second at box startup, and lock resources during box execution - in order to secure a full compatibility with the automatic body language process.
For further details, see : Creating an animation.
Tags¶
You can use any tag supplied by default.
For further details, see:
Additionally, you can declare new tagged animations using:
ALAnimationPlayerProxy::declarePathForTags
You can also declare new tags for some specific animations (without modifying the animations) using:
ALAnimationPlayerProxy::addTagForAnimations
Note
The tags used by ALAnimationPlayer are nothing more than the generic tags you can associate to any behavior. But for ALAnimationPlayer, we trust the developers to use only tags that cover animations.