u(t) is called 60 times per second.
t: Elapsed time in seconds.
S: Shorthand for Math.sin.
C: Shorthand for Math.cos.
T: Shorthand for Math.tan.
R: Function that generates rgba-strings, usage ex.: R(255, 255, 255, 0.5)
c: A 1920x1080 canvas.
x: A 2D context for that canvas.
Full code c.width=500;with(x)for(i of [2,0,1])fillStyle=hsl(32 50%${30+i*10+(K=t%(p=1.57))/p*10}%,fill(new Path2D("M"+[w=200,0,(A=S(K+p*i)*150)+w,w+S(K+p*~-i)*50,S(K+p*-~i)*150+w,w+A/3]));
u(t) is called 60 times per second.
t: elapsed time in seconds.
c: A 1920x1080 canvas.
x: A 2D context for that canvas.
S: Math.sin
C: Math.cos
T: Math.tan
R: Generates rgba-strings, ex.: R(255, 255, 255, 0.5)