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.
Yeah it's just svg path data, there's a bunch of different commands (single letters), followed by a number of numeric parameters. Spaces can be removed in a variety of places making legebility hard which might be confusing here, e.g if there is a sign e.g 1 -1 this can become 1-1, also parameters which are flags do not need delimiters since they always have length of 1, e.g the two flags of the arc command a 2 3 4 0 0 5 6 can become a 2 3 4 00 5 6, also commands do not need delimiters a2 3 4 00 5 6. The other golfing trick for paths is to figure out when relative vs absolute coordinates will result in shorter parameters (A is an arc with absolute coordinates, a is relative to the previous command position), you can alternate between absolute and relative commands.
When I made this path, I split each command onto new lines, without messing with spacing. Then figured out the shortest possible parameters, and removed all possible spacing as a last step.
u/vain a you see it? you asked about Path2D ... i know good online app where can drawing and explored SVG path : (this not my , this link not be ads, i not know what will been if you open this} https://yqnn.github.io/svg-path-editor/ ~_^⠀GoodLuck!
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)