xxxxxxxxxx
let R=0;
let f=0;
let w=250;
let P=Math.PI/16;
document.body.style.background = '#000';
setup =_=> {
createCanvas(500,500);
stroke(255);
}
draw =_=> {
let n=.1;
let N=30;
background(0, 7);
translate(w, w);
for(i=0;i<TAU;i+=P){
for(r=-N;r<155;r+=N){
let F=f/99;
let Z=i+n-F;
let K=r+R%60;
let x=sin(Z)*(K);
let y=cos(Z)*K;
let H=i-n-F;
K=K+N;
let X=sin(H)*K;
let Y=cos(H)*K;
line(x,y,X,Y);
circle(x/2,y/2,4);
n=-n;
}
R+=.02;
}
f+=P;
}
// Minimzed version
// R=f=0,w=200,draw=a=>{for(f||createCanvas(W=400,W),background(P=PI/16,7),stroke(W),n=.1,N=30,translate(w,w),i=0;i<TAU;i+=P){for(r=-N;r<155;r+=N)F=f/99,line(x=sin(Z=i+n-F)*(K=r+R%60),y=cos(Z)*K,sin(H=i-n-F)*(K+=N),cos(H)*K),circle(x/2,y/2,4),n=-n;R+=.02}f+=P};//#つぶやきProcessing