日常の進捗

主に自分のための,行為とその習慣化の記録

波っぽい円弧

float step = 40;
// setup関数 : 初回1度だけ実行される
void setup() {
  size(960, 540); // ウィンドウサイズを960px,540pxに
  colorMode(HSB, 360, 100, 100, 100); // HSBでの色指定にする
}

// draw関数 : setup関数実行後繰り返し実行される
void draw() {
  background(0,0,0);
  strokeWeight(step/3);
  noFill();
  translate(width/2, height-50);
  for (float r = 0; r < width; r = r + step) {
    float theta = map(sin((r/4.3f + frameCount)*0.025), -1, 1, 0, PI);
    float hue = map(theta, 0, PI, 60, 240);
    stroke(hue, 80, 100);
    arc(0, 0, r, r, PI, PI+theta);
  }
}