n=180
function setup(){
createCanvas(500,500);
angleMode(DEGREES);
fill(255,255,255,5);
}
function draw(){
translate(width/2,height/2);
t=frameCount/2;
rotate(t/4);
strokeWeight(0.1);
stroke(50*cos(t)*cos(t),150*sin(t/2)*sin(t),255*sin(t)*sin(t/2));
a=2+1.9*sin(t)+0.5*cos(t/2)-0.3*cos(t/11)*sin(t/3);
beginShape();
for (let i=-n;i<n;i++){
x=200*sin(i/a)+10*cos(i/a);
y=200*cos(i)*cos(i/a);
vertex(x,y);
}
endShape(OPEN)
beginShape()
for (let i=-n;i<n;i++){
x=200*sin(i/a)+10*cos(i/a);
y=200*cos(i)*cos(i/a)
vertex(x,-y)
}
endShape(OPEN)
beginShape()
for (let i=-n;i<n;i++){
x=200*sin(i/a)+10*cos(i/a);
y=200*cos(i)*cos(i/a)
vertex(y,-x)
}
endShape(OPEN)
beginShape()
for (let i=-n;i<n;i++){
x=200*sin(i/a)+10*cos(i/a);
y=200*cos(i)*cos(i/a)
vertex(-y,-x)
}
endShape(OPEN)
}