Daily Creative Coding

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

回転する球の輪

/**
* ring absorption
*
* @author aa_debdeb
* @date 2016/04/22
*/

float radious1 = 200;
float radious2 = 80;

void setup(){
  size(640, 640, P3D);
  noStroke();
  fill(255);
}

void draw(){
  background(32);
  lights();
  translate(width / 2, height / 2);
  
  for(float angle1 = 0; angle1 < 360; angle1 += 20){
    float radian1 = radians(angle1);
    pushMatrix();
    translate(radious1 * cos(radian1), radious1 * sin(radian1));
    rotateZ(radian1);
    for(float angle2 = 0; angle2 < 360; angle2 += 40){
      float radian2 = radians(angle2) + frameCount * 0.03;
      pushMatrix();
      translate(radious2 * cos(radian2), 0, radious2 * sin(radian2));
      sphere(20);
      popMatrix();
    }
    popMatrix();
  }
}