| name | tennis-forehand |
| description | Mimes a tennis forehand groundstroke, taking the racket back with a torso turn then swinging across the front and finishing over the shoulder. Use when the command mentions tennis forehand, forehand, or swing a racket. |
| category | sport |
| disable-model-invocation | true |
| subskills | ["move-arm","move-torso"] |
Tennis Forehand
A forehand groundstroke: coil with a backswing (twist right), swing the right arm
across in front of the body, and finish over the left shoulder.
How
- Backswing: twist right
Spine:[0,25,0],Chest:[0,15,0],
RightUpperArm:[0,0,-40] (racket back/out).
- Contact in front:
RightUpperArm:[70,0,0], untwist Spine:[0,-10,0].
- Finish:
Spine:[0,-35,0], RightUpperArm:[40,0,40] over the shoulder.
Example
- "hit a forehand" ->
{"durationMs":1300,"say":"Forehand!","sequence":{"loop":false,"frames":[{"t":0,"pose":{"Spine":[0,25,0],"Chest":[0,15,0],"RightUpperArm":[0,0,-40],"RightForearm":[0,0,60]}},{"t":0.5,"pose":{"Spine":[0,-10,0],"RightUpperArm":[70,0,0],"RightForearm":[0,0,10]}},{"t":1,"pose":{"Spine":[0,-35,0],"Chest":[0,-20,0],"RightUpperArm":[40,0,40],"RightForearm":[0,0,30]}}]}}