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.
About the horizontal lines around the circle: u/tzador, in your original code if you change Y=...%9-4 for Y=.../400-4 then you will see parallel horizontal lines around the circle in middle. In my case, the lines around appear by using %1 here w=...+Y*Y%1
About the gradient: It's given here by using "Y" values to pixel size (w). if you change to w=.4/Z+Y then you will see a strong and simple "Y" gradient. If you try w=.4/Z+X then you will see vertical instead of horizontal gradient. Then the %1 will "break the gradient" in multiple gradients of "width 1"
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)