void setup() {
size(640, 640);
noStroke();
}
void draw() {
background(40);
translate(width/2, height/2-height/4);
for (int i = 0; i < 360; i++) {
float angle = sin(radians(i*2))*10;
float x = asin(sin(radians(i+frameCount)))*(100+angle);
float y = acos(cos(radians(i+frameCount)))*(100-angle);
float s = map(sin(radians(i*4)), -1, 1, 15, 40);
fill(10);
ellipse(x, y, s, s);
}
// Repeated code only for visual effect
for (int i = 0; i < 360; i++) {
float angle = sin(radians(i*2))*10;
float x = asin(sin(radians(i+frameCount)))*(100+angle);
float y = acos(cos(radians(i+frameCount)))*(100-angle);
float s = map(sin(radians(i*4)), -1, 1, 5, 30);
fill(100, 30, 255);
ellipse(x, y, s, s);
}
}