// interactive version of abstactscape3 // built with processing 0.67/0.68 // by Alessandro Capozzo - GHOSTAGENCY - // winter 03-04 float noiseScale=0.012f; float gg=1; int limit; int ytarget,ydif,yspeed; int xtarget,xdif,xspeed; float ydelay=.8f; int newy=1; int newx=1; float coefW; void setup(){ size(600,200); framerate(30); coefW=width*.5f; limit=width+180; } void loop() { background(220); ydif=mouseY-newy; yspeed=(int)(ydif*ydelay); newy+=yspeed*.2f; xdif=mouseX-newx; xspeed=(int)(xdif*ydelay); newx+=xspeed; gg+=(newx-(coefW))*.01f; for(int x=0; x<(limit); x++) { float noiseVal = noise((gg+x)*noiseScale,newy*noiseScale); int c=color(noiseVal*255,noiseVal*230,noiseVal*210,20); stroke(c); beginShape(LINE_STRIP); bezierVertex(x, height*noiseVal); bezierVertex(.8f*x+noiseVal, 200+noiseVal*1.2f); bezierVertex(.6f*x-noiseVal, 200+noiseVal*1.4f); bezierVertex(x,height*noiseVal); endShape(); int d=color(noiseVal*220,noiseVal*230,noiseVal*210,20); stroke(d); beginShape(LINE_STRIP); bezierVertex(x,height*noiseVal); bezierVertex(.8f*x-noiseVal, noiseVal*1.2f); bezierVertex(.9f*x+noiseVal, noiseVal*1.4f); bezierVertex(x,height*noiseVal); endShape(); } }