Daily Creative Coding

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

二重螺旋

/**
* double helix
*
* @author aa_debdeb
* @date 2016/09/07
*/

void setup(){
  size(480, 640, P3D);
}

void draw(){
  background(255);
  translate(width / 2, 0, 0);
  rotateY(frameCount * 0.05);
  fill(152, 251, 152);
  stroke(152, 251, 152);
  float h = -100;
  float angle = 0;
  while(h < height + 100){
    beginShape();
    vertex(50 * cos(angle), h, 50 * sin(angle));
    vertex(100 * cos(angle), h, 100 * sin(angle));    
    h += 2;
    angle += PI / 64;
    vertex(100 * cos(angle), h, 100 * sin(angle));   
    vertex(50 * cos(angle), h, 50 * sin(angle));
    endShape(CLOSE);
  }
  fill(152, 250, 250);
  stroke(152, 250, 250);
  h = -100;
  angle = PI;
  while(h < height + 100){
    beginShape();
    vertex(50 * cos(angle), h, 50 * sin(angle));
    vertex(100 * cos(angle), h, 100 * sin(angle));    
    h += 2;
    angle += PI / 64;
    vertex(100 * cos(angle), h, 100 * sin(angle));   
    vertex(50 * cos(angle), h, 50 * sin(angle));
    endShape(CLOSE);
  }
  
}
f:id:aa_debdeb:20160905223953j:plain