2020年10月26日 星期一

翰翰日記7

第七周

size(500,500);

for(int angle=0;angle<360;angle+=30)

  {

  float angle2 = radians(angle);

  float x = 100+cos(angle2)*50;

  float y = 100+sin(angle2)*50;

  ellipse(x,y,2,2);

  }

這個直接用cos,sin的公式去畫圓

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);//ellipse(x,y,2,2);
  }
  endShape(CLOSE);
上面那個120度的角度是以內角幾度畫的例如說90度就是正方形
void setup()
{
size(500,500);
}
void draw()
{
beginShape();
for(int angle=0;angle<360;angle+=120)
  {
  float angle2 = radians(angle+mouseX);
  float x = 100+cos(angle2)*50;
  float y = 100+sin(angle2)*50;
  vertex(x,y);//ellipse(x,y,2,2);
  }
  endShape(CLOSE);
}
加入setup draw就可以畫出圓了
void setup()
{
size(500,500);
}
void draw()
{
  background(255);
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);//ellipse(x,y,2,2);
  }
  endShape(CLOSE);
}
這樣寫可以讓三角形跟著滑鼠跑
把background(255);註解掉就會醬
void setup()
{
size(500,500);
}
void draw()
{
  background(255);
beginShape();
for(int angle=0;angle<360;angle+=120)
  {
  float angle2 = radians(angle+frameCount);
  float x = mouseX+cos(angle2)*100;
  float y = mouseY+sin(angle2)*100;
  vertex(x,y);//ellipse(x,y,2,2);
  }
  endShape(CLOSE);
}
變大
float fruitX=150,fruitY=0;
float kidX=150,kidY=450;
int score=0;
void setup()
{
size(300,500);
}
void draw()
{
background(255);
rect(kidX,kidY,50,80);
kidX=mouseX;
ellipse(fruitX, fruitY, 60,80);
fruitY++;
if(fruitY>kidY)
  {
    if(kidX<fruitX&&fruitX < kidX+80)
      {
      score+=10;
      fruitY=0; fruitX=random(50,450);
      
      }else
        {
        fruitY=0; fruitX=random(50,450);
        }
  }
}
老師特別寫了一個接東西的程式碼

//float fruitX=150,fruitY=0;
float [] fruitX=new float[10];
float [] fruitY=new float[10];
float kidX=150,kidY=450;
int score=0;
void setup()
{
size(500,500);
for(int i=0;i<10;i++)
  {
  fruitX[i]=random(50,450);
  fruitY[i]=-i*100;
  }
}
void draw()
{
background(255);
rect(kidX,kidY,50,80);
kidX=mouseX;
for(int i=0;i<10;i++){
ellipse(fruitX[i], fruitY[i], 60,80);
fruitY[i]++;
if(fruitY[i]>kidY)
  {
    if(kidX<fruitX[i]&&fruitX[i] < kidX+80)
      {
      score+=10;
      fruitY[i]=0; fruitX[i]=random(50,450);
      
      }else
        {
        fruitY[i]=0; fruitX[i]=random(50,450);
        }
  }
}
}
這個是加強版的水果隨機掉落











 

沒有留言:

張貼留言