2019年9月26日 星期四

呼嚕嚕的p語言日記-week03

1.

void setup()
{
  size(600,300); //視窗大小

}
void draw()
{
  if(mousePressed&&mouseButton==LEFT) //如果按左鍵就開始
  {
  line(mouseX,mouseY,pmouseX,pmouseY); //開始畫線
  }


}













2.改粗細顏色
void setup()
{
  size(600,300);


}
void draw()
{
 

  if(key==1)
  {
    stroke(#120CF0);
 
  }
 
  if(key=='1')
  {
    stroke(#120CF0);
 
  }
 
  if(key=='2')
  {
    stroke(#FA0A1E);
 
  }
 
  if(key=='3')
  {
    stroke(#0AFA5C);
 
  }
 
  if(key=='4')
  {
    strokeWeight(2);
 
  }
  if(key=='5')
  {
    strokeWeight(5);
 
  }
  if(key=='6')
  {
    strokeWeight(10);
 
  }

  if(mousePressed&&mouseButton==LEFT)
  {

  line(mouseX,mouseY,pmouseX,pmouseY);

  }


}













3.滑鼠點擊就可改變顏色粗細


void setup()
{
  size(600, 400);
  fill(255, 0, 0); rect(0, 0, 50, 50);
  fill(255, 250, 0); rect(0, 50, 50, 50);
  fill(0, 255, 0); rect(0, 100, 50, 50);
  fill(0, 255, 255); rect(0, 150, 50, 50);
  fill(0, 0, 255); rect(0, 200, 50, 50);
  fill(0); rect(0,250,50,50);
  fill(255); rect(0,300,50,150);
  line(25,300,25-7,400);
  line(25,300,25+7,400);


}
void draw()
{
  if (mousePressed&&mouseX>50)
  {

    line(mouseX, mouseY, pmouseX, pmouseY);
  }
}
void mousePressed()
{
  if (mouseX<50)
  {
    if (mouseY<50) stroke(255, 0, 0);
    else if (mouseY<100) stroke(255, 255, 0);
    else if (mouseY<150) stroke(0, 255, 0);
    else if (mouseY<200) stroke(0, 255, 255);
    else if (mouseY<250) stroke(0, 0, 255);
    else
    {
      strokeWeight((mouseY-250)/10);
    }
  }
}












4.將鍵盤獨立出函數,並嘗試按方向鍵畫線
void setup()
{
  size(600, 400);
  fill(255, 0, 0); rect(0, 0, 50, 50);
  fill(255, 250, 0); rect(0, 50, 50, 50);
  fill(0, 255, 0); rect(0, 100, 50, 50);
  fill(0, 255, 255); rect(0, 150, 50, 50);
  fill(0, 0, 255); rect(0, 200, 50, 50);
  fill(0); rect(0,250,50,50);
  fill(255); rect(0,300,50,150);
  line(25,300,25-7,400);
  line(25,300,25+7,400);
  
  
}
void draw()
{
  if (mousePressed&&mouseX>50)
  {

    line(mouseX, mouseY, pmouseX, pmouseY);
  }
}
void mousePressed()
{
  if (mouseX<50)
  {
    if (mouseY<50) stroke(255, 0, 0);
    else if (mouseY<100) stroke(255, 255, 0);
    else if (mouseY<150) stroke(0, 255, 0);
    else if (mouseY<200) stroke(0, 255, 255);
    else if (mouseY<250) stroke(0, 0, 255);
    else
    {
      strokeWeight((mouseY-250)/10);
    }
  }
}
void keyPressed()
{
  if(key=='1') stroke(255,0,0);
  if(keyCode==UP) line(300,200,300,0);
  if(keyCode==DOWN) line(300,200,300,400);
  if(keyCode==LEFT) line(300,200,0,200);
  if(keyCode==RIGHT) line(300,200,600,200);
 

}











沒有留言:

張貼留言

alanhc 互動技術-week17 [final]

回顧這學期的作品:  期中作業:LANDING:PLANET 賣點&特點: 炫麗的特效 物理(星球重力及降落)及粒子系統(噴射) 世界地圖可根據視角縮放 困難點: 重寫3次最終改寫成物件導向的CLASS寫法...