int dropcount=1000; Drop one=new Drop(10,10,10); Drop[] drops=new Drop[dropcount]; int nowX, nowY; int driftX, driftY; int gap=20; int repel=-1; boolean reCol=false; int c=0; void setup(){ size(1200,800); frameRate(30); nowY=width/2; nowY=height/2; for (int i=0; i0) { return asin(opp/h)+PI/2*repel; }else{ return PI-asin(opp/h)+PI/2*repel; } } void drawDrop(){ newa=angle(driftX, driftY); a+=(newa-a)/10; pushMatrix(); ellipseMode(CORNER); translate(x,y); rotate(a); noStroke(); em=0; //if (h