| name | twirl |
| description | Twirls gracefully a full 360 in place with the arms held out, sweeping root.faceDeg through a turn in a sequence. Use when a command mentions twirl, pirouette, do a twirl, dance spin, whirl around, or spin gracefully on the spot. |
| category | locomotion |
| disable-model-invocation | true |
| subskills | ["turn-and-face","move-arm"] |
twirl
A graceful dance spin — a full turn in place with the arms extended. Sweep root.faceDeg through 360° in a sequence, arms out for flair. (Pure heading turns are turn-and-face; this adds the dance styling.)
How
- Use a
sequence with loop:false. Sweep root.faceDeg from the current heading through +180 to +360 (back to start). Hold the arms out wide (LeftUpperArm:[0,0,0],RightUpperArm:[0,0,0] = a T) during the spin, then return to rest.
- A graceful twirl wants a longer
durationMs ~1400–1800. Keep x/z fixed (it spins in place).
Example
- "do a twirl" (at faceDeg:0) ->
{"durationMs":1600,"say":"Wheee!","sequence":{"loop":false,"frames":[{"t":0,"pose":{"LeftUpperArm":[0,0,0],"RightUpperArm":[0,0,0]},"root":{"faceDeg":0}},{"t":0.5,"pose":{"LeftUpperArm":[0,0,0],"RightUpperArm":[0,0,0]},"root":{"faceDeg":180}},{"t":1,"pose":{"LeftUpperArm":[0,0,90],"RightUpperArm":[0,0,-90]},"root":{"faceDeg":360}}]}}