2023年11月9日 星期四

10160756 廖云瑄 week09

 week09

week09-1 放入鍵盤圖片

PImage img;
void setup(){
  size(800,600);
  img = loadImage("keyboard.png");///鍵盤圖片
}
void draw(){
  image(img ,0,600-266);
}









week09-2 印出半透明框框

PImage img;
void setup(){
  size(800,600);
  img = loadImage("keyboard.png");
  rectMode(CENTER);
}
void draw(){
  background(#FFFFF2);///背景 淡黃色
  image(img ,0,600-266);
  fill(255,0,0,128);///半透明紅色
  rect(mouseX,mouseY,28,30,5);
}
void mousePressed(){
  println(mouseX,mouseY);///定位
}









week09-3設定座標,用滑鼠點擊鍵盤顯示的座標,複製貼上到Notepad++加括號逗號

PImage img;
int[][]pos = {{91,491},{246,525},{179,524},{162,491},{153,458},{195,490},{229,489},{263,491},{322,456},{298,491},{332,490},{366,491},{315,525},{279,525},{357,456},{390,457},{84,456},{185,456},{127,490},{219,457},{288,457},{212,523},{118,457},{144,523},{254,457},{108,524}};
void setup(){
  size(800,600);
  img = loadImage("keyboard.png");
  rectMode(CENTER);
}
void draw(){
  background(#FFFFF2);
  image(img ,0,600-266);
  fill(255,0,0,128);
  rect(mouseX,mouseY,28,30,5);
  fill(0,255,0,128);
  for(int i=0;i<26;i++){
    rect(pos[i][0],pos[i][1],28,30,5);
  }
}
void mousePressed(){
  println(mouseX,mouseY);
}







week09-4鍵盤測試

PImage img;
int[][]pos = {{91,491},{246,525},{179,524},{162,491},{153,458},{195,490},{229,489},{263,491},{322,456},{298,491},{332,490},{366,491},{315,525},{279,525},{357,456},{390,457},{84,456},{185,456},{127,490},{219,457},{288,457},{212,523},{118,457},{144,523},{254,457},{108,524}};

void setup(){
  size(800,600);
  img = loadImage("keyboard.png");
  rectMode(CENTER);
}
void draw(){
  background(#FFFFF2);
  image(img ,0,600-266);
  fill(255,0,0,128);
  rect(mouseX,mouseY,28,30,5);
  fill(0,255,0,128);
  for(int i=0;i<26;i++){
   if(pressed[i])rect(pos[i][0],pos[i][1],28,30,5);
  }
}
boolean[]pressed = new boolean[26];
void keyPressed(){
  if(key>='a'&&key<='z')pressed[key-'a']= true;
}
void keyReleased(){
  if(key>='a'&&key<='z')pressed[key-'a']=false;
}
void mousePressed(){
  println(mouseX,mouseY);
}









week09-5 typing印出來

PImage img;
int[][]pos = {{91,491},{246,525},{179,524},{162,491},{153,458},{195,490},{229,489},{263,491},{322,456},{298,491},{332,490},{366,491},{315,525},{279,525},{357,456},{390,457},{84,456},{185,456},{127,490},{219,457},{288,457},{212,523},{118,457},{144,523},{254,457},{108,524}};

void setup(){
  size(800,600);
  img = loadImage("keyboard.png");
  rectMode(CENTER);
}
void draw(){
  background(#FFFFF2);
  image(img ,0,600-266);
  fill(255,0,0,128);
  rect(mouseX,mouseY,28,30,5);
  fill(0,255,0,128);
  for(int i=0;i<26;i++){
    if(typing.charAt(0)-'a'==i)rect(pos[i][0],pos[i][1],28,30,5);
   if(pressed[i])rect(pos[i][0],pos[i][1],28,30,5);
  }
  fill(0);
  textSize(50);
  text(typing,50,50);
  text(typing.charAt(0),50,100);
}
String typing = "printf";

boolean[]pressed = new boolean[26];
void keyPressed(){
  if(key>='a'&&key<='z')pressed[key-'a']= true;
}
void keyReleased(){
  if(key>='a'&&key<='z')pressed[key-'a']=false;
}
void mousePressed(){
  println(mouseX,mouseY);
}















week09-6 打字,紅色是要打的字,鍵盤也會顯示字母
PImage img;
int [][]pos = {{92,491},{246,525},{179,524},{162,490},{152,457},{194,490},{229,490},{264,490},{323,456},{298,491},{333,490},{367,491},{315,525},{281,523},{356,457},{390,457},{85,456},{185,456},{127,490},{220,456},{289,457},{212,525},{117,457},{143,524},{254,457},{109,524}};
void setup(){
  size(800, 600); //大小800x266
  img = loadImage("keyboard.png");
  rectMode(CENTER); // 滑鼠在正中心
}
void draw(){
  background(#FFFFF2); 
  image(img, 0, 600-266);
  fill(255, 0, 0, 128); //半透明紅
  rect(mouseX, mouseY, 28, 30, 5);
  fill(0, 255, 0, 128);
  for (int i=0; i<26; i++){
    // if (typing.charAt(0)-'a'==i) rect(pos[i][0], pos[i][1], 28, 30, 5);
    if (pressed[i]) rect(pos[i][0], pos[i][1], 28, 30, 5);
  }
  textSize(50);
  fill(0); // 黑色的字
  text(typing, 50, 50); // 要打的字
  
  fill(255, 0, 0); // red現在要打的字
  text(typed+typing.charAt(ID), 50, 100);
  
  fill(0); // 再用黑色秀出打好的字
  text(typed, 50, 100); //已經打好的字
}
  
String typing = "printfprintfprintf"; 
String typed = ""; 
int ID = 0; 
boolean [] pressed = new boolean[26]; 
void keyPressed(){
  if (key >= 'a' && key <= 'z') pressed[key-'a'] = true;
  typed += key;
  ID ++;
}
void keyReleased(){
  if (key >= 'a' && key <= 'z') pressed[key-'a'] = false;
}
void mousePressed(){
  println(mouseX, mouseY); 
}
















week09-7 打對字才會出現 打錯閃紅光
PImage img;
int[][]pos = {{91,491},{246,525},{179,524},{162,491},{153,458},{195,490},{229,489},{263,491},{322,456},{298,491},{332,490},{366,491},{315,525},{279,525},{357,456},{390,457},{84,456},{185,456},{127,490},{219,457},{288,457},{212,523},{118,457},{144,523},{254,457},{108,524}};

void setup(){
  size(800,600);
  img = loadImage("keyboard.png");
  rectMode(CENTER);
}
void draw(){
  background(#FFFFF2);
  image(img ,0,600-266);
  fill(255,0,0,128);
  rect(mouseX,mouseY,28,30,5);
  fill(0,255,0,128);
  for(int i=0;i<26;i++){
   if(typing.charAt(0)-'a'==i)rect(pos[i][0],pos[i][1],28,30,5);
   if(pressed[i])rect(pos[i][0],pos[i][1],28,30,5);
  }
  textSize(50);
  fill(0);
  text(typing,50,50);
  fill(255,0,0);
  text(typed+typing.charAt(ID),50,100);
  fill(0);
  text(typed,50,100);
}
String typing = "printfprintfprintf";
String typed = "";
int ID = 0;
boolean[]pressed = new boolean[26];
void keyPressed(){
  if(key>='a'&&key<='z'){
    if(key==typing.charAt(ID)){
      pressed[key-'a']= true;
      typed += key;
      ID++;
    }else{
      background(255,0,0);
    }
  }
}
void keyReleased(){
  if(key>='a'&&key<='z')pressed[key-'a']=false;
}
/*void mousePressed(){
  println(mouseX,mouseY);
}*/















week09-8 
PImage img;
int [][]pos={{92,491},{244,524},{178,524},{160,491},{150,457},{197,490},{228,489},{261,488},{323,455},{296,487},{332,491},{365,489},{315,523},{280,524},{354,456},{390,455},{86,455},{184,455},{127,489},{219,456},{289,456},{212,521},{118,455},{141,523},{254,456},{111,525}};
void setup(){
  size(800,600);
  img=loadImage("keyboard.png");
  rectMode(CENTER);
}
void draw(){
  background(#FFFFF2);
  image(img,0,600-266);
  fill(255,0,0,128);
  rect(mouseX,mouseY,28,30,5);
  fill(0,255,0,128);
  for(int i=0;i<26;i++){
    if(ID<typing.length()&&typing.charAt(ID)-'a'==i) rect(pos[i][0],pos[i][1],28,30,5);
    if(pressed[i])rect(pos[i][0],pos[i][1],28,30,5);
  }
  textSize(50);
  fill(0);
  text(typing.charAt(0),50,100);
  text(typing,50,50);
  fill(255,0,0);
  if(ID<typing.length()) text(typed+typing.charAt(ID),50,100);
  fill(0);
  text(typed,50,100);
}
String typing="printfprintfprintf";
String typed="";
int ID=0;
boolean[] pressed=new boolean[26];
void keyPressed(){
  if(key>='a'&&key<='z'){
   if(ID<typing.length()&&key==typing.charAt(ID)){
    pressed[key-'a']=true;
    typed+=key;
    ID++;
    }else{
      background(255,0,0);
    }
  }
}
void keyReleased(){
  if(key>='a'&&key<='z') pressed[key-'a']=false;
}
void mousePressed(){
  println(mouseX,mouseY);
}













week09-9打完按空白鍵會跳下一個要打的字母
PImage img;

int[][]pos = {{91,491},{246,525},{179,524},{162,491},{153,458},{195,490},{229,489},{263,491},{322,456},{298,491},{332,490},{366,491},{315,525},{279,525},{357,456},{390,457},{84,456},{185,456},{127,490},{219,457},{288,457},{212,523},{118,457},{144,523},{254,457},{108,524}};

void setup(){
  size(800,600);
  img = loadImage("keyboard.png");
  rectMode(CENTER);
}
void draw(){
  background(#FFFFF2);
  image(img ,0,600-266);
  fill(255,0,0,128);
  rect(mouseX,mouseY,28,30,5);
  fill(0,255,0,128);
  for(int i=0;i<26;i++){
    if(ID<typing.length()&&typing.charAt(ID)-'a'==i)rect(pos[i][0],pos[i][1],28,30,5);
   if(pressed[i])rect(pos[i][0],pos[i][1],28,30,5);
  }
  textSize(50);
  fill(0);
  text(typing,50,50);
  fill(255,0,0);
  if(ID<typing.length())text(typed + typing.charAt(ID),50,100);
  fill(0);
  text(typed,50,100);
}
String typing = "print is a function";
String typed = "";
int ID = 0;
boolean[]pressed = new boolean[26];
void keyPressed(){
  if(ID<typing.length()&&key==typing.charAt(ID) ){
    if(key>='a'&&key<='z'){
    pressed[key-'a']= true;
    typed += key;
    ID++;
    }else if(key==' '){
       typed += key;
       ID++;
    }else{
      background(255,0,0);
    }
  }
}
void keyReleased(){
  if(key>='a'&&key<='z')pressed[key-'a']=false;
}
void mousePressed(){
  println(mouseX,mouseY);
}




沒有留言:

張貼留言