2019年9月26日 星期四

week03

2019 互動技術
一筆成型
void setup(){
  size(600,400);
}
void draw(){
  line(mouseX,mouseY,pmouseX,pmouseY);//可以顛倒放

}









進階:按下左鍵才會畫畫
void setup(){
  size(600,400);
}
void draw(){
  if(mousePressed && mouseButton==LEFT){
  line(pmouseX,pmouseY,mouseX,mouseY);//由舊的座標連到新的座標
  }

}









void setup(){
  size(600,400);
}
void draw(){
  stroke(#32BBE3);//先換顏色再畫線,且要用stroke()
  if(mousePressed && mouseButton==LEFT){
  line(pmouseX,pmouseY,mouseX,mouseY);
  }

}









void setup(){
  size(600,400);
}
void draw(){
  if(key=='1') stroke(#32BBE3);//換顏色
  if(key=='2') stroke(#F578FC);
  if(key=='3') stroke(#66EA93);
  if(key=='4') strokeWeight(4);//換粗細
  if(key=='5') strokeWeight(10);
  if(mousePressed && mouseButton==LEFT){
  line(pmouseX,pmouseY,mouseX,mouseY);
  }

}









void setup(){
  size(600,400);
  fill(255,0,0);rect(0,0,50,50);//為了不讓他不斷重複畫因此畫在這個函式裡
  fill(255,255,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(255);rect(0,250,50,150);//畫出白框做為調整粗細
  line(25,250,25-7,400);畫一個三角形
  line(25,250,25+7,400);
}
void draw(){
  if(mouseX<50 && mousePressed){
    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);//換筆刷粗細
    }
  }

  if(mousePressed && mouseButton==LEFT){
  line(pmouseX,pmouseY,mouseX,mouseY);
  }
}









void setup(){
  size(600,400);
  fill(255,0,0);rect(0,0,50,50);
  fill(255,255,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(255);rect(0,250,50,150);
  line(25,250,25-7,400);
  line(25,250,25+7,400);
}
void draw(){
  if(mouseX<50 && mousePressed){
    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 mouseDragged(){//透過滑鼠和鍵盤互動
  if(mouseX>50){
    line(pmouseX,pmouseY,mouseX,mouseY);
  }
}
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寫法...