[–] tomxor 5y ago ↗ f=_=>(X+d*A*b-d*a^Y+d*B^Z-d*A*a-d*b)%15>1 t?c.width=w=64:X=Y=Z=R=5; for(a=S(R),b=C(R),p=3e3;p--;) { for(A=p%w/32-1,B=p/1e3,d=1;f();d+=.1) k=1e-4-3e-4/d/d X-=k*a,Z-=k*b,Y+=k*B,R-=k*A x.fillRect(p%w,p/w,1,2-4/d) } The original dwitter link https://www.dwitter.net/d/22883 will only run fast on Firefox, due to dwitter+chrome perf issue. You can instead paste the plain JS version below into the console of a new tab: document.body.innerHTML='<canvas id=c style=width:4in>';x=c.getContext('2d');X=Y=Z=R=5;setInterval('c.width=w=64;for(a=Math.sin(R),b=Math.cos(R),p=3e3;p--;X-=k*a,Z-=k*b,Y+=k*B,R-=k*A,x.fillRect(p%w,p/w,1,2-4/d))for(A=p%w/32-1,B=p/1e3,d=1;(X+d*A*b-d*a^Y+d*B^Z-d*A*a-d*b)%15>1;d+=.1)k=1e-4-3e-4/d/d',24)
1 comment
[ 2.7 ms ] story [ 10.1 ms ] thread