void setup() { size(400,400); smooth(); } void draw() { background(255); drawCircle(width/2,height/2,width/2,3); } void drawCircle(float x, float y, float r, int d) { fill(0,16); stroke(0,128); ellipse(x,y,2*r,2*r); if(d > 0) { float rr = r / map(mouseX,0,width,2,4); float a = map(mouseY,0,height,0,PI); drawCircle(x+(r-rr)*cos(a),y+(r-rr)*sin(a),rr,d-1); drawCircle(x+(r-rr)*cos(a+PI/2),y+(r-rr)*sin(a+PI/2),rr,d-1); drawCircle(x+(r-rr)*cos(a+PI),y+(r-rr)*sin(a+PI),rr,d-1); drawCircle(x+(r-rr)*cos(a+3*PI/2),y+(r-rr)*sin(a+3*PI/2),rr,d-1); } } // START NO NOTES // code used to capture screenshots void keyReleased() { if(key == '`' && !online) save("sketch.png"); }