2019年9月19日 星期四

Week2

第二堂課


Processing程式操作一(簡易格子)

程式


void setup(){  //start()開始函式指令
   size(800,300);
}
void draw(){//update() 一直更新
   rect(mouseX,mouseY,50,20);
  方塊(滑鼠X座標,滑鼠Y座標,方塊長,方塊寬)
}


結果













Processing程式操作二(打卡機一)

程式

void setup(){   
  size(800,300);  
//800->720 for 45  720/45=>16扣左右邊除格數
  for(int x=0;x<800;x+=16){
    for(int y=0;y<300;y+=30){
      rect(x,y,16,30);
    }
  }
}
void draw(){  
  int nowX=mouseX/16*16,nowY=mouseY/30*30;
  fill(0);  
 //顏色為黑
  rect(nowX,nowY,16,30);
}

結果









Processing程式操作三(打卡機二)

程式

void setup(){
  size(800,300);
  for(int x=0;x<800;x+=16){
    for(int y=0;y<300;y+=30){
      rect(x,y,16,30);
    }
  }
}
void draw(){
//點擊滑鼠右鍵變黑,點擊滑鼠右鍵變白
  int nowX=mouseX/16*16,nowY=mouseY/30*30;
  if(mousePressed && mouseButton == LEFT)
{  
//滑鼠點擊左鍵
   fill(0);
   rect(nowX,nowY,16,30);
  }
else if(mousePressed && mouseButton ==RIGHT)
{  
//滑鼠點擊右鍵
   fill(255);
   rect(nowX,nowY,16,30);
  }
}

結果


Processing程式操作四(圖片操作)


程式


PImage img;
void setup(){
  size(500,500); 
  img=loadImage("pipi.jpg");
}
void draw(){
  image(img,mouseX,mouseY,200,200);
}

結果


Processing程式操作五(打卡機三)


程式

PImage imgBG;
int [ ] [ ] table = new int [45][10];
void setup(){
  size(711,377); 

//大小要依照圖片大小做更改為主
  imgBG=loadImage("card.jpg"); 

//processing不只是程式也是文件夾,可以放資料在裡面,可以在速寫本找到內容
**注意從網路尋找的圖片,要依照格式存檔以免出錯
}
void draw(){

  background(imgBG);
//背景圖(命名大多都取為BG)
  int nowI=mouseX/16,nowJ=mouseY/30;
  if (mousePressed && mouseButton==LEFT){
    table[nowI] [nowJ]=1;
  }else if(mousePressed && mouseButton==RIGHT){
    table[nowI] [nowJ]=0;
  }
  for(int i=0;i<45;i++){
    for(int j=0;j<10;j++){
      fill(0);
      if(table[i] [j]==1) rect (i*16,j*30,16,30);
    }
  }
}


結果





沒有留言:

張貼留言

alanhc 互動技術-week17 [final]

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