int centreX, centreY, radiEspiral; float radi, angleEspiral, incr; boolean creix; void setup(){ size(600,500); background(255); centreX=width/2; centreY=height/2; angleEspiral=0.0; radiEspiral=2; radi=1.0; incr=1.0; creix=true; } void draw(){ smooth(); translate(centreX,centreY); rotate(angleEspiral); if(radiEspiral==460){ incr=-1.0; creix=false; } if(radiEspiral==2){ incr=1.0; creix=true; } ellipse(radiEspiral,0,radi,radi); angleEspiral=angleEspiral+incr; radiEspiral=radiEspiral+(int)incr; if(creix){ noStroke(); colorr(); radi=sqrt(radiEspiral); }else{ stroke(255); fill(255); radi=sqrt(radiEspiral+10); } } void colorr(){ int i; i=(int)random(3); switch(i){ case 0: fill(0,random(0,255),random(0,255),random(16,255)); break; case 1: fill(random(0,255),0,random(0,255),random(16,255)); break; case 2: fill(random(0,255),random(0,255),0,random(16,255)); } }