Wave_Clock_Modefied01

float angnoise, radiusnoise;
float xnoise, ynoise;
float angle = -PI/2;
float radius;
float strokeCol = 254;
int strokeChange = -1;

void setup() {

  size (500, 500);
  smooth();
  frameRate(30);
  background(255);
  noFill();

  angnoise = random(10);
  radiusnoise = random(10);
  xnoise = random(10);
  ynoise = random(10);
}


void draw() {

  radiusnoise += 0.005;
  radius = (noise(radiusnoise) * 550) +1;

  angnoise += 0.005;
  angle += (noise(angnoise) * 6) -3;
  if (angle > 360) { 
    angle -= 360;
  }
  if (angle < 0) {
    angle += 360;
  }

  xnoise += 0.01;
  ynoise += 0.01;
  float centerx = width/2 + (noise(xnoise)*100) - 50;
  float centery = height/2 + (noise(ynoise)*100) - 50;

  float rad = radians(angle);
  float x1 = centerx + (radius * cos(rad));
  float y1 = centery + (radius * sin(rad));

  float opprad = rad + PI/2;
  float x2 = centerx + (radius * cos(opprad));
  float y2 = centery + (radius * sin(opprad));

  strokeCol += strokeChange;
  if (strokeCol > 254) {
  strokeChange = -1;
  }
  if (strokeCol < 0) {
    strokeChange = 1;
  }
  stroke(strokeCol, 60);
  strokeWeight(1);
  line(x1, y1, x2, y2);
}

昨日は雰囲気で書いたけれど,今日は教科書『ジェネラティブ・アート』の写経.ここで教科書は一区切りにしようかなと思った.明日からは,配列を勉強してみたい.その後,また教科書にもどりたい.

雰囲気で書いたほうが,見栄えは拙いけど,勉強になる気がする.もちろん,優れたコードの写経もいいのだけれど,ああしてこうしてという試行錯誤の部分が写経ではない感じがする.変数の名前をつけるところから考えるのが重要な感じがしている.