week02_1_fill_noStroke_rect
size(400,400); //視窗大小 400*400
background(255); //白色背景
fill(238); //填充的色彩
noStroke(); //不要畫框線
rect(0,0,20,20); //四邊形 x,y,w,h
rect(0,40,20,20);
rect(0,80,20,20);
week02_2_for_if_rect
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座標
//rect(0,i*s*2,s,s); //先試位置
if((i+j)%2==0) rect(j*s,i*s,s,s);
} //下面才是真程式碼.完成畫格子
}
week02_3_void_setup_void_draw
void setup(){ //一開始設定一次(貼上剛剛week02-2程式)
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座標
//rect(0,i*s*2,s,s); //先試位置
if((i+j)%2==0) rect(j*s,i*s,s,s);
} //下面才是真程式碼.完成畫格子
}
}
void draw(){ //每秒畫60次)
stroke(255,0,0); //紅色的線
if(mousePressed) line(mouseX,mouseY,pmouseX,pmouseY);
}//如果mouse按下去,就畫線,給兩個座標: 現在mouse和之前的mouse
week02_4_PImage_loadImage_background_fill_println
//新的開始,要描圖
PImage img;
void setup(){
size(400,400);
img = loadImage("cute.png");
}//記得把圖檔,(像上週一樣)拉到程式碼裡
void draw(){
background(img);
fill(255,mouseX);//半透明的色彩 白色,alpha值是128
println(mouseX);//把mouseX的值,在下面「小黑」印出來
rect(0,0,400,400);//畫超大的四邊形,全部蓋住
}
week02_5a_combine_02_4_and_02_3_bad
//要利用資料結構,把歷史軌跡記起來
ArrayList<Integer> x = new ArrayList<Integer>();
ArrayList<Integer> y = new ArrayList<Integer>();
PImage img;
void setup(){
size(400,400);
img = loadImage("cute.png");
}//記得把圖檔,(像上週一樣)拉到程式碼裡
void draw(){
background(img);
fill(255,200);//半透明的色彩 白色,alpha值是128
rect(0,0,400,400);//畫超大的四邊形,全部蓋住
//上面是week02-4,下面用迴圈,從資料結構取出來
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);
}
week02_5_ArrayList_Integer_new_for_size_get_add_mouseDragged
//要描圖,卻出錯
PImage img;
void setup(){
size(400,400);
img = loadImage("cute.png");
}//記得把圖檔,(像上週一樣)拉到程式碼裡
void draw(){
background(img);
fill(255,200);//半透明的色彩 白色,alpha值是128
rect(0,0,400,400);//畫超大的四邊形,全部蓋住
stroke(255,0,0);//紅色的線
if(mousePressed) line(mouseX,mouseY,pmouseX,pmouseY);
}
week02_6
//想要有很多段,不要「一筆畫」一直接著畫
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("cute.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 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
//想要把畫出來的座標,變成我們的程式碼!!!
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("cute.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();");
for(int i=1;i<x.size();i++){//小的,再照舊畫
println("vertex("+x.get(i)+","+y.get(i)+");)");
}//改再keyPressed()按下s或S時,再全部印!
println("endShape();");
}
}
}
void mouseDragged(){
//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("cute.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));
}
}
noFill();
strokeWeight(3);
draw1();
draw2();
}
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();");
for(int i=1;i<x.size();i++){//小的,再照舊畫
println("vertex("+x.get(i)+","+y.get(i)+");)");
}//改再keyPressed()按下s或S時,再全部印!
println("endShape();");
}
}
}
void mouseDragged(){
//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();
vertex(165,159);
vertex(164,159);
vertex(164,158);
vertex(162,158);
vertex(160,158);
vertex(159,158);
vertex(157,160);
vertex(156,160);
vertex(155,160);
vertex(155,161);
vertex(153,162);
vertex(152,162);
vertex(151,162);
vertex(150,163);
vertex(148,163);
vertex(147,163);
vertex(145,164);
vertex(144,165);
vertex(142,168);
endShape();
beginShape();
vertex(256,150);
vertex(257,150);
vertex(259,150);
vertex(260,150);
vertex(261,150);
vertex(263,150);
vertex(264,150);
vertex(265,150);
vertex(266,150);
vertex(267,150);
vertex(269,150);
vertex(269,151);
vertex(270,151);
vertex(271,151);
vertex(273,152);
vertex(274,153);
vertex(275,153);
vertex(276,153);
vertex(276,154);
vertex(277,154);
vertex(279,154);
vertex(281,155);
vertex(283,156);
vertex(284,156);
vertex(285,156);
vertex(287,158);
endShape();
}
沒有留言:
張貼留言