2020年10月26日 星期一

Σ(゚д゚) weeeeeeeeeek 07

找出規律描繪出三角形的點
size(500, 500);
for(int angle=0; angle<360; angle+=120)
{
   float angle2 = radians(angle); ---------------radians -> 弧度/徑度
   float x = 100+cos(angle2)*50;
   float y = 100+sin(angle2)*50;
   ellipse(x, y, 2, 2); -----------------------------在每個頂點畫一個小圓當點
}

將點改為線繪製出封閉的三角形

size(500, 500);
beginShape();
for(int angle=0; angle<360; angle+=120)
{
   float angle2 = radians(angle);
   float x = 100+cos(angle2)*50;
   float y = 100+sin(angle2)*50;
   vertex(x,y);
}
endShape(CLOSE);

讓三角形隨著滑鼠移動而轉動


((莫名有點療癒
void setup()
{
  size(500, 500);
}
void draw()
{
  beginShape();
  for(int angle=0; angle<360; angle+=120)
  {
     float angle2 = radians(angle+mouseX); ------將滑鼠X值加入角度值
     float x = 100+cos(angle2)*50;
     float y = 100+sin(angle2)*50;
     vertex(x,y);
  }
  endShape(CLOSE);
}

再將三角形隨著滑鼠移動


void setup()
{
  size(500, 500);
}
void draw()
{
  beginShape();
  for(int angle=0; angle<360; angle+=120)
  {
     float angle2 = radians(angle+mouseX);
     float x = mouseX+cos(angle2)*50;
     float y = mouseY+sin(angle2)*50;
     vertex(x,y);
  }
  endShape(CLOSE);
}

將三角形的角度改為隨時間轉動


void setup()
{
  size(500, 500);
}
void draw()
{
  beginShape();
  for(int angle=0; angle<360; angle+=120)
  {
     float angle2 = radians(angle+frameCount); frameCount -> 第幾個frame
     float x = mouseX+cos(angle2)*50;
     float y = mouseY+sin(angle2)*50;
     vertex(x,y);
  }
  endShape(CLOSE);
}

加分



0421更新


0427更新


#程式碼

void setup()
{
  size(500, 500);
}
void draw()
{
  background(255,255,255);
  int countX = 0;
  int countY = 0;
  for(int i=25; i<=500; i+=50)
  {
    countX += 1;
    for(int j=25; j<=500; j+=50)
    {
      countY += 1;
      for(int k=22; k>=5; k-=8)
      {
        beginShape();
        for(int angle=30; angle<360; angle+=120)
        {
           float angle2 = 0;
           if(countX%2 == 0)
           {
             if(countY%2 == 0)
             {
               stroke(0,0,0);
               angle2 = radians(angle-10);
             }
             else
             {
               stroke(255,0,0);
               angle2 = radians(angle);
             }
           }
           else
           {
             if(countY%2 == 0)
             {
               stroke(255,0,0);
               angle2 = radians(angle+10);
             }
             else
             {
               stroke(0,0,0);
               angle2 = radians(angle);
             } 
           }
           float x = i+cos(angle2)*k;
           float y = j+sin(angle2)*k;
           vertex(x,y);
        }     
        endShape(CLOSE);
      }
    }
  }
}

沒有留言:

張貼留言