Animated graphical score for Bach BWV 1080 (Art of Fugue) Canon 4 (canon at the twelfth)

The first step was to categorize the material in the canon (see 2017dec06).

I'd just done a video of the third Art of Fugue canon, and it seemed that a similar approach would work here. Having done it before, I knew what kind of framework I needed, so I set about compiling the necessary tables (sections, vertical offsets based on transposition, angular offsets based on destination, rotation timing) and, to help me navigate, I made a version of the score that was annotated with as much information I needed to refer to as I could cram into it (2017dec08).

Next, I chopped up the score to correspond to how I'd defined/conceivedOf the phrases in the piece.

Finally, the coding to turn all this into an animation.  In that script (written in an XML variant I designed for specifying my animations), the "heavy lifting" is done by a "renderer" that turns notes into shapes (see this for an [incomplete] list of renderers I've developed). Here's the code for this one.

The final result looks like this (you can watch the animation on YouTube):