dwitter.net | #Spirograph

+ New dweet
function u(t) {
} //
122/140


Please log in (or register) to post a dweet (copy-paste the code somewhere safe to save it meanwhile)


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.
Try the new frontend: beta.dwitter.net
Current theme challenge: #Opposites
show FPS hide FPS share fullscreen

function u(t) {

}//
137/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

Please log in (or register) to comment.

show FPS hide FPS share 1 remix fullscreen

function u(t) {

}//
140/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

  • Random Spirograph Doodle Generator

Please log in (or register) to comment.

show FPS hide FPS share fullscreen

function u(t) {

}//
135/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

  • 50 Times Table Visualization (5*10)

Please log in (or register) to comment.

show FPS hide FPS share fullscreen

function u(t) {

}//
134/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

  • u/pavel
    I believe this generates all valid spirographs, at least the circle with a small pencil hole rolling in a circle ones.
  • u/pavel
    The incremental drawing is not parameter aware so at the extremes its too slow / too fast and choppy
  • u/pavel
    I was gonna improve this by using the period of a spirograph but gave up deriving it.
  • u/pavel
    I think the period is the denominator of 1-1/m expressed as an irreducible fraction.

Please log in (or register) to comment.

show FPS hide FPS share fullscreen

function u(t) {

}//
117/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

Please log in (or register) to comment.

show FPS hide FPS share fullscreen

function u(t) {

}//
128/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

Please log in (or register) to comment.

show FPS hide FPS share 1 remix fullscreen

function u(t) {

}//
140/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

Please log in (or register) to comment.

show FPS hide FPS share 1 remix fullscreen

function u(t) {

}//
140/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

Please log in (or register) to comment.

show FPS hide FPS share 1 remix fullscreen

function u(t) {

}//
128/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

  • u/rodrigo.siqueira
    Same result, uncompressed, 128 bytes: t||(p=0) f=(X,Y,s,z)=>s>2?f(X+S(z/2)*s*2,Y+C(z*3)*s,s/2,z*4):[X,Y] for(i=999;i--;)q=f(960,540,250,p++),x.fillRect(q[0],q[1],2,2)
  • u/rodrigo.siqueira
    My previous comment is not working because of "enter" converted to "space".
  • u/rodrigo.siqueira
    Same result, uncompressed, 128 bytes (correct code): t||(p=0);f=(X,Y,s,z)=>s>2?f(X+S(z/2)*s*2,Y+C(z*3)*s,s/2,z*4):[X,Y];for(i=999;i--;)q=f(960,540,250,p++),x.fillRect(q[0],q[1],2,2)

Please log in (or register) to comment.

show FPS hide FPS share fullscreen

function u(t) {

}//
140/140


Please log in (or register) to post as a new dweet (copy-paste code somewhere safe to save it meanwhile).

Please log in (or register) to comment.

Loading...
Next page