Rpples on Processing

Processingで波紋を描画してみました。

Processingで波紋を描画してみました。

ArrayList <Ripple>ripples;

void setup() {
  size(500, 500);
  ripples = new ArrayList();
  ripples.add(new Ripple());
}
int a=255;
int radius = 10;

int c = 0;
void draw() {
  background(100);
  noFill();
  strokeWeight(2);


  for(int i = 0; i < ripples.size(); i++){
    ripples.get(i).draw();
  }
  
  if( ( c % 40 ) == 0 ){
    ripples.add(new Ripple());
  }

  c++;
}


public class Ripple{
  float radius = 0;
  int lineColor = 255;
  
  public Ripple(){
    this.radius = 0;
    this.lineColor = 255;
  }
  
  public void draw(){
    stroke(255, this.lineColor);
    ellipse(width/2, height/2, radius, radius);
    this.radius += 2;
    this.lineColor -= 2;
  }  
}