Cómo usar Raphael .animateWith ()

Alguien ha usado.animateWith() en Raphael para mantener con éxito las animaciones rápidas en sincronización? Está mal documentado. El creador de la biblioteca tiene undemostración de video Pero no hay código que pueda encontrar.

Tengo un metrónomo de Javascript que consiste en una línea (el brazo del metrónomo) y un "peso" de forma trapezoidal que eventualmente se moverá hacia arriba y hacia abajo para indicar el ritmo. Tengo un violín trabajandoaquí, y las líneas en cuestión son:

        var ticktock = Raphael.animation({
            "50%": { transform:"R20 " + x + "," + y, easing: "sinoid", callback: function() { tick(this, repeats, done); }},
            "100%": { transform:"R-20 " + x + "," + y, easing: "sinoid", callback: function() { tick(this, repeats, done); }}
        }, interval).repeat(repeats / 2);
        arm.animate(ticktock);
        weight.animateWith(arm, ticktock, ticktock);    

Si revisa el violín y le da un ritmo alto y unas 20 garrapatas, debería ver el retraso de peso detrás del brazo. (Por favor, inténtalo unas cuantas veces, si no, la ley de Murphy, etc.) Pensé que esto era precisamente lo que evitó animateWith (). Tal vez lo estoy usando incorrectamente.

Si nos fijamos en elFuente de raphael para la función .animateWith (), verá que sincroniza el parámetro .start de cada animación, FWIW.