week14-1
//week14_01_draw_lines_void_mouseDragged_mouseButton_LEFT_RIGHT void setup(){ size(500,500); } int x=-1,y=-1; void draw(){ if(x!=-1){ ellipse(x,y,1,1); y++; } } void mouseDragged(){ if(mouseButton==LEFT) line(mouseX,mouseY,pmouseX,pmouseY); if(mouseButton==RIGHT){ x=mouseX; y=mouseY; } }
week14-2
//week14_02_draw_lines_loadPixels_pixels_updaatePixels void setup(){ size(500,500); background(255); } void draw(){ //pixels } void mouseDragged(){ if(mouseButton==LEFT){ line(mouseX,mouseY,pmouseX,pmouseY); loadPixels(); println(pixels[0]); for(int i=0;i<width*height;i++){ if(pixels[i]!=-1)pixels[i]=color(random(255),random(255),random(255)); } updatePixels(); } }
week14-3
//week14_03_draw_lines_rain_PImage_createImage_img_loadPixels_pixels_updatePixels PImage img; void setup(){ size(500,500); img=createImage(500,500,RGB); img.loadPixels(); for(int i=0;i<500*500;i++)img.pixels[i]=color(#FFFFF2); img.updatePixels(); } int x=250,y=0; void draw(){ background(img); ellipse(x,y,20,20); if(y<498&&img.pixels[x+y*500]==-14) y++; } void mouseDragged(){ line(mouseX,mouseY,pmouseX,pmouseY); loadPixels(); img.loadPixels(); for(int i=0;i<500*500;i++)img.pixels[i]=pixels[i]; img.updatePixels(); updatePixels(); }
week14-4
//week14_04_draw_lines_rain_ArrayList_PVector_p_pp
PImage img; void setup(){ size(500,500); img=createImage(500,500,RGB); } //int x=250,y=0; ArrayList<PVector>p=new ArrayList<PVector>(); void draw(){ background(img); for(PVector pp:p){ ellipse(pp.x,pp.y,20,20); if(pp.y<498 && img.pixels[int(pp.x)+int(pp.y)*500]==-16777216) pp.y++; } } void mouseDragged(){ background(img); stroke(random(255),random(255),random(255)); line (mouseX,mouseY,pmouseX,pmouseY); loadPixels(); img.loadPixels(); for(int i=0;i<500*500;i++) img.pixels[i]=pixels[i]; img.updatePixels(); updatePixels(); for(PVector pp:p){ ellipse(pp.x,pp.y,20,20); } }void mousePressed(){ if(mouseButton==RIGHT){ p.add(new PVector(mouseX,mouseY)); } }
week14-5
//week14_05_draw_lines_myFloodFill_x_y_c1_c2_pixels_isOK void setup(){ size(500,500); background(#FFFFF2); } void draw(){ if(mousePressed && mouseButton==LEFT) line(mouseX,mouseY,pmouseX,pmouseY); if(mousePressed && mouseButton==RIGHT){ loadPixels(); color c1=pixels[mouseX+mouseY*500]; color c2=color(random(255),random(255),random(255)); if(c1!=c2) myFloodFill(mouseX,mouseY,c1,c2); updatePixels(); } } boolean isOK(int x,int y,color c1){ if(x<0 || y<0 || x>=500 || y>=500) return false; if(pixels[x+y*500]!=c1) return false; return true; } void myFloodFill(int x,int y,color c1,color c2){ pixels[x+y*500]=c2; if(isOK(x+1,y,c1)) myFloodFill(x+1,y,c1,c2); if(isOK(x-1,y,c1)) myFloodFill(x-1,y,c1,c2); if(isOK(x,y+1,c1)) myFloodFill(x,y+1,c1,c2); if(isOK(x,y-1,c1)) myFloodFill(x,y-1,c1,c2); }
week14-6
//week14_06_cute_cursor void setup(){ size(500,500); PImage img=loadImage("cute.png"); cursor(img); } void draw(){ background(255); }
week14-7
//week14_07_cute_cursor_kitty_cursor PImage imgCute,imgKitty; void setup(){ size(500,500); imgCute=loadImage("cute.png"); imgKitty=loadImage("kitty.png"); cursor(imgKitty); } void draw(){ background(255); if(frameCount%120==0) cursor(imgCute); if(frameCount%120==60) cursor(imgKitty); }
week14-8
//week14_08_big_cursor_imageMode_image_imageMode PImage imgBigCute,imgBigKitty,imgCursor; void setup(){ size(500,500); imgBigCute=loadImage("bigcute.png"); imgBigKitty=loadImage("bigkitty.png"); imgCursor(imgBigKitty); } void draw(){ background(#FFFFF2); imageMode(CENTER); image(imgCursor,mouseX,mouseY); imageMode(CORNER); if(frameCount%120==0) cursor(imgBigCute); if(frameCount%120==60) cursor(imgBigKitty); }
沒有留言:
張貼留言