2025年2月27日 星期四

12750236

 week02_1,week02_2

///week02_1
size(400,400);
background(255);
fill(238);
noStroke();
rect(0,0,20,20);
rect(0,40,20,20);
rect(0,80,20,20);

///week02_2
size(400,400);
background(255);
fill(238);
noStroke();
float s=400/14;
for(int i=0;i<14;i++){
  for(int j=0;j<14;j++){
    if((i+j)%2==0) rect(j*s,i*s,s,s);
    ///rect(j*s*2,i*s*2,s,s);
    ///rect(0,i*s*2,s,s);
  }
}


week02_3

void setup(){
    size(400,400);
    background(255);
    fill(238);
    noStroke();
    float s=400/14;//計算格子的大小
    for(int i=0;i<14;i++){///左手I對應Y座標
      for(int j=0;j<14;j++){///右手J對應X座標
        if((i+j)%2==0) rect(j*s,i*s,s,s);
        ///rect(j*s*2,i*s*2,s,s);///先試一下位置
        ///rect(0,i*s*2,s,s);
      }
    }
}
void draw(){
  stroke(255,0,0);
  if(mousePressed) line(mouseX,mouseY,pmouseX,pmouseY);
}///if mouse be pressed after draw line give two location,now and few seconds mouse before
week02_4
//week02_4
//新的開始要描圖
PImage img;
void setup(){
  size(400,400);
  img=loadImage("c.png");
}
void draw(){
   background(img);
   fill(255,mouseX);
   println(mouseX);//半透明的色彩白色Alpha值是128
   rect(0,0,400,400);
}
                                                    
week02_5
//week02_5_1A COMBINE
//新的開始要描圖
PImage img;
void setup(){
  size(400,400);
  img=loadImage("c.png");
}
void draw(){
   background(img);
   fill(255,mouseX);
   println(mouseX);//半透明的色彩白色Alpha值是128
   rect(0,0,400,400);
   stroke(255,0,0);
   if(mousePressed) line(mouseX,mouseY,pmouseX,pmouseY);
}///if mouse be pressed after draw line give two location,now and few seconds mouse before

//week02_5_1A COMBINE
//新的開始要描圖
ArrayList<Integer> x=new ArrayList<Integer>();
ArrayList<Integer> y=new ArrayList<Integer>();
PImage img;
void setup(){
  size(400,400);
  img=loadImage("c.png");
}
void draw(){
   background(img);
   fill(255,mouseX);
   println(mouseX);//半透明的色彩白色Alpha值是128
   rect(0,0,400,400);
   for(int i=1;i<x.size();i++){
     line(x.get(i),y.get(i),x.get(i-1),y.get(i-1));
}
}
 void mouseDragged(){
    x.add(mouseX);
    y.add(mouseY);
}///if mouse be pressed after draw line give two location,now and few seconds mouse before
week02_6
//week02_6
//新的開始要描圖
ArrayList<Integer> x,y;
ArrayList<ArrayList<Integer>>xx=new ArrayList<ArrayList<Integer> >();
ArrayList<ArrayList<Integer>>yy=new ArrayList<ArrayList<Integer> >();
PImage img;
void setup(){
  size(400,400);
  img=loadImage("c.png");
}
void draw(){
   background(img);
   fill(255,mouseX);
   println(mouseX);//半透明的色彩白色Alpha值是128
   rect(0,0,400,400);
   for(int I=0;I<xx.size();I++){
     ArrayList<Integer> x=xx.get(I);
     ArrayList<Integer> y=yy.get(I);
     for(int i=1;i<x.size();i++){
       line(x.get(i),y.get(i),x.get(i-1),y.get(i-1));
     }
   }
}
void mouseDragged(){
    x.add(mouseX);
    y.add(mouseY);
 }
void mousePressed(){
  x=new ArrayList<Integer>();xx.add(x);
  y=new ArrayList<Integer>();yy.add(y);
}
  

week02_7
//week02-7_
ArrayList<Integer> x, y; // 先有2個(還沒準備好)的(小的)資造結構,等mousePressed再新增準備
ArrayList<ArrayList<Integer>> xx = new ArrayList<ArrayList<Integer>>();//大的資料結構
ArrayList<ArrayList<Integer>> yy = new ArrayList<ArrayList<Integer>>();
PImage img;
void setup(){
  size(400,400);
  img = loadImage("c.png");//每次新的檔案,要再把圖片(拉進來)
}//記得把圖片檔,(像上周一樣)拉到程式裡
void draw(){
  background(img);
  fill(255,200);//半透明的色彩 白色,alpha值是128
  rect(0,0,400,400);//畫超大的四邊形,全部蓋住
  //上面是week02-4, 下面用迴圈,從資料結構取出來
  for(int I=0; I<xx.size(); I++){//大寫I對應大的資料結構
    ArrayList<Integer> x = xx.get(I);//取出裡面的小的資料結構
    ArrayList<Integer> y = yy.get(I);
    for(int i=1; i<x.size(); i++){//小的,在照舊畫
      line(x.get(i), y.get(i), x.get(i-1), y.get(i-1));
    }
  }
}
void keyPressed(){//小心,注音輸入法,會卡住按鍵,要換成英文輸入
  if(key=='s'||key=='S'){//如果按下英文的小寫or大寫s想save存檔的話
    for(int I=0; I<xx.size(); I++){//大寫I對應大的資料結構
    ArrayList<Integer> x = xx.get(I);//取出裡面的小的資料結構
    ArrayList<Integer> y = yy.get(I);
    println("beginShape();"); //beginShape();
    for(int i=1; i<x.size(); i++){//小的,在照舊畫
     println("vertex("+ x.get(i) +", " + y.get(i) +");");
      }//改在keyPressed()按下s或S時,再全部印!
      println("endShape();"); //endShape();
    }
  }
}
void mouseDragged(){
  //println("vertex(mouseX, mouseY);");
  println("vertex("+ mouseX +", " + mouseY +");");
  x.add(mouseX);
  y.add(mouseY);
}
void mousePressed(){//滑鼠按下去時,建(新的)資料結構
  x = new ArrayList<Integer>(); xx.add(x);
  y = new ArrayList<Integer>(); yy.add(y);
}




作業
//week02-8_
ArrayList<Integer> x, y; // 先有2個(還沒準備好)的(小的)資造結構,等mousePressed再新增準備
ArrayList<ArrayList<Integer>> xx = new ArrayList<ArrayList<Integer>>();//大的資料結構
ArrayList<ArrayList<Integer>> yy = new ArrayList<ArrayList<Integer>>();
PImage img;
void setup(){
  size(400,400);
  img = loadImage("c.png");//每次新的檔案,要再把圖片(拉進來)
}//記得把圖片檔,(像上周一樣)拉到程式裡
void draw(){
  background(img);
  fill(255,200);//半透明的色彩 白色,alpha值是128
  rect(0,0,400,400);//畫超大的四邊形,全部蓋住
  //上面是week02-4, 下面用迴圈,從資料結構取出來
  for(int I=0; I<xx.size(); I++){//大寫I對應大的資料結構
    ArrayList<Integer> x = xx.get(I);//取出裡面的小的資料結構
    ArrayList<Integer> y = yy.get(I);
    for(int i=1; i<x.size(); i++){//小的,在照舊畫
      line(x.get(i), y.get(i), x.get(i-1), y.get(i-1));
    }
  }
}
void keyPressed(){//小心,注音輸入法,會卡住按鍵,要換成英文輸入
  if(key=='s'||key=='S'){//如果按下英文的小寫or大寫s想save存檔的話
    for(int I=0; I<xx.size(); I++){//大寫I對應大的資料結構
    ArrayList<Integer> x = xx.get(I);//取出裡面的小的資料結構
    ArrayList<Integer> y = yy.get(I);
    println("beginShape();"); //beginShape();
    for(int i=1; i<x.size(); i++){//小的,在照舊畫
     println("vertex("+ x.get(i) +", " + y.get(i) +");");
      }//改在keyPressed()按下s或S時,再全部印!
      println("endShape();"); //endShape();
    }
  }
  noFill();
  strokeWeight(5);
  draw1();
}
void mouseDragged(){
  //println("vertex(mouseX, mouseY);");
  println("vertex("+ mouseX +", " + mouseY +");");
  x.add(mouseX);
  y.add(mouseY);
}
void mousePressed(){//滑鼠按下去時,建(新的)資料結構
  x = new ArrayList<Integer>(); xx.add(x);
  y = new ArrayList<Integer>(); yy.add(y);
}
void draw1(){
beginShape();
}






沒有留言:

張貼留言