Ultimately, every move is defined by a movement, which is another XML element. A movement is one or two quadratic Bezier curves. Each Bezier curve has a start point, an end point, and two control points. One curve controls the location of the dancer. The dancer moves from the start point to the end point along the curve. This page is hard-wired to show one of the paths with Bezier points. You can view the paths with Bezier points on any page by Alt-clicking on a dancer.

The second Bezier curve controls the rotation of the dancer. The default, if only one curve is used, is for the dancer to always face the direction of travel. This works for moves like Run but not for Dodge or Turn Back. If a second curve is used, the dancer faces its direction as if it was used for travel.

The points for the Bezier curves are in the dancer's coordinate system. Since the curve always starts at the dancer's current position the first point is always (0,0). The other points are attributes of the movement element. Here is the movement for Run Left

  <movement beats="3" cx1="1.333" cy1="0" cx2="1.333" cy2="2" x2="0" y2="2" />

The four points of the Bezier curve are the implied start point (0,0), the end point (x2,y2) and the two control points (cx1,cy1) and (cx2,cy2). The beats attribute is also needed, there is no default.

Here is the movement for U-Turn Left. Since there is only rotation and no travel, the first Bezier is all zero. The rest of the attributes cx3 to y4 define the second Bezier.

  <movement beats="3" cx1="0" cy1="0" cx2="0" cy2="0" x2="0" y2="0"
                      cx3="1.333" cx4="1.333" cy4="2" x4="0" y4="2" />

Again, the start point is always (0,0) so it is not in the attributes. Also, since the dancer always starts facing forward (that's the definition of the dancer coordinate system), the Y-coord of the first control point is always 0. So the second Bezier has start point (0,0), end point (x4,y4) and control points (cx3,0) and (cx4,cy4). If you look closely you will see that the second Bezier for U-Turn Left matches the first Bezier for Run Left. So for U-Turn Left, the dancer turns as if doing a Run Left but stays on the same spot on the floor.

<-- Prev
Next -->