xxxxxxxxxx
// sin, cos, width, height, line, strokeCap, strokeWeight, TWO_PI
// no interaction
float move;
void setup() {
size(500, 500);
strokeCap(SQUARE);
}
void draw() {
background(255);
move += .002;
noStroke();
fill(0);
ellipse(width/2, height/2, 350, 350);
fill(255);
ellipse(width/2+18, height/2, 300, 300);
stroke(255);
strokeWeight(6);
for (float i = move; i < TWO_PI+ move; i += TWO_PI/20) {
float x = (-width) + cos(i) * (width + width);
float y = height + sin(i) * (height+ height);
line(width/2, height/2, x, y);
}
stroke(0);
strokeWeight(20);
line(0, height/2, 68, height/2);
line(125, height/2, 413, height/2);
line(428, height/2, width, height/2);
}