Javascript API for formation choreography

with Anwar H. Michelle G.

Fall 2013, Stanford CS448B

The Project

One challenge of choreographing for Viennese Ball was figuring out the feasibily of formations without being able to test each part out on a full set of dancers. The success of a formation relies on the ability of each dancer to hit their position at precisely the right time with the correct orientation. These details are hard to figure out on paper, so we created Dancevis to make the process easier.

Dancevis is a Javascript API that allows the user to simulate a set of dancers progressing from one formation to another. Formations are specified according to their shape, duration, and direction of movement.

Basic Features

Dancers are represented by colored circles and travel on geometric paths from figure to figure according to a pre-set schedule.

Each figure consists of a

  • Travel path
  • Travel direction
  • Travel speed
  • Start and end time

To simulate a rotating waltz, the dancers are placed on a smaller circle that rotates clockwise (right waltz) or counterclowise (reverse waltz) as they move along their path.

To run the simulation, click the "Play" button. The dancers will first waltz, then walk along line of dance, pivot in place, and then reverse direction.

Exit Points

Exit points allow dancers to travel between formations and are represented by blue dots.

An exit point is active on a specified time interval. In the example on the left, the left and right exit points are active between 2 and 6 seconds, and the top and bottom exit points are active between 9 and 16 seconds. When an exit point is inactive, the dancers simply ignore it and continue on their path.

Dancer Tracking

By specifying a list of dancer names, the user can also keep track of the position and orientation of each dancer throughout the sequence. Clicking on a dancer mark will highlight that dancer for the duration of the choreo. A dancer tracking table will also appear on the left.

There are a few other tools to keep track of the choreo as well:

  • Timer
  • Play, reset, pause buttons
  • Annotations
  • View customization (paths on/off)

Gears Formation

Here is an animation and corresponding video of the Gears formation that made it into our Polka performance. The dancers start out in four circles alternating between leads and follows. As the circles rotate, two all-follow and two all-lead circles form. After a brief pause and rotation, the circles merge and resume rotation.

In order to get a better idea of what the formation might look like in real life, the leads and follows are color coded in black and white. The paths, exit points, and background grid are turned off.

The actual choreography ended up being a little longer than the simulation since we added a few extra position switches to get dancers back to their original partners. However it was still useful to see the gear rotation visualized.