Daily Creative Coding

元「30 min. Processing」。毎日、Creative Codingします。

リングの上で回転する線がつくるパターン #3

f:id:aa_debdeb:20161108223145j:plain

patterns by lines on ring #3 - OpenProcessing

/**
* patterns by lines on ring #3
* 
* @author aa_debdeb
* @date 2016/11/13
*/

float radius = 150;
float bar = 180;
int step = 1;

void setup(){
  size(640, 640);
  stroke(20, 150);
}

void draw(){
  background(235);
  translate(width / 2, height / 2);
  for(float angle = 0; angle < 360; angle += 0.5){
    float radian = radians(angle);
    pushMatrix();
    translate(radius * cos(radian), radius * sin(radian));
    rotate(radian + frameCount * map(sin(radian * step * 0.5), -1, 1, -0.05, 0.05));
    line(-bar / 2, 0, bar / 2, 0);
    popMatrix();
  }
}

void mousePressed(){
  step++;
  if(step > 11){
    step = 1;
  }
}