2016年11月10日 星期四

Week 09 蕭阿火筆記

本日上課重點
- Leap Motion
- 檔案讀取、寫檔
- 排名
- ArrayList與資料結構

================================================================
小畫家的圖檔存檔:

void setup(){
  size(600,600);
}
void draw(){
  if(mousePressed) line(mouseX,mouseY,pmouseX,pmouseY);   畫線
}
void keyPressed(){
  save("now.png");                                      存檔
}
能夠更新存檔(將下半部的void KeyPressed的函式做修改)
int number=0;
void keyPressed(){
  //save("now.png");
  save("now_"+number+".png");           使檔名成為now01 now02等
  number++;
}
將存檔的指令改成saveFrame來存檔
void setup(){
  size(600,600);
}
void draw(){
  if(mousePressed) line(mouseX,mouseY,pmouseX,pmouseY);
}
//int number=0;
void keyPressed(){
  saveFrame();                                利用當時的電腦的Frame number來當成檔名儲存
  //save("now.png");
  //save("now_"+number+".png");
  //number++;
}
==================================================================
TXT的存檔
String [] names = {"AAA","BBB","CCC"};
saveStrings ("myClassmateName.txt",names);

讀檔案並且印出
String lines[] = loadStrings("myClassmateName.txt");
println("there are " + lines.length + " lines");  
  for(int i=0;i<lines.length;i++){
    println(lines[i]);
  }
==============================================================
接金幣計算成績小遊戲:
PVector [] coins=new PVector[10];
void setup(){
  size(500,500);
  for(int i=0;i<10;i++) coins[i]=new PVector(random(500),-random(100));
}
int Score=0;
void draw(){
  background(144);
  for(int i=0;i<10;i++){
   fill(255,255,0);ellipse(coins[i].x,coins[i].y,30,30);
   coins[i].y+=1;
   if(coins[i].y>530) coins[i].y=-random(100);
   if(dist(mouseX,mouseY,coins[i].x,coins[i].y)<30){
     Score+=100;coins[i].y=-random(100);
    }
  text("Score:"+Score,200,200);
  }
}


沒有留言:

張貼留言