Week14
//week14_1_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;
}
}
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_draw_lines_loadPixes_updatePixels
void setup() {
size(500, 500);
background(255);
}
void draw() {
//pixels
}
void mouseDragged() {
if (mouseButton==LEFT) { //在左鍵dragged拖曳時
line(mouseX, mouseY, pmouseX, pmouseY);//本來的線,是灰黑色,不是白色
loadPixels();//取出畫面的像素
//println(pixels[0]);//白色是-1
for (int i=0; i<width*height; i++) { //全部的點都去巡一下色彩
if (pixels[i]!=-1) pixels[i] = color(random(255), random(255), random(255));
}
updatePixels();//若有修改,要再放回去
}
}
void setup() {
size(500, 500);
background(255);
}
void draw() {
//pixels
}
void mouseDragged() {
if (mouseButton==LEFT) { //在左鍵dragged拖曳時
line(mouseX, mouseY, pmouseX, pmouseY);//本來的線,是灰黑色,不是白色
loadPixels();//取出畫面的像素
//println(pixels[0]);//白色是-1
for (int i=0; i<width*height; i++) { //全部的點都去巡一下色彩
if (pixels[i]!=-1) pixels[i] = color(random(255), random(255), random(255));
}
updatePixels();//若有修改,要再放回去
}
}
//week14_03_draw_lines_rain_PImage_createImage_ing_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() {
background(img);
line(mouseX, mouseY, pmouseX, pmouseY);
loadPixels();
img.loadPixels();
for (int i=0; i<500*500; i++) img.pixels[i]=pixels[i]; //把畫面的色彩搬到img裡面
img.updatePixels();
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() {
background(img);
line(mouseX, mouseY, pmouseX, pmouseY);
loadPixels();
img.loadPixels();
for (int i=0; i<500*500; i++) img.pixels[i]=pixels[i]; //把畫面的色彩搬到img裡面
img.updatePixels();
updatePixels();
}
//week14_4_draw_lines_rain
PImage img;
void setup() {
size(500, 500);
img= createImage(500, 500, RGB);//用來畫圖的畫布
}//換黑背景
ArrayList<PVector>p=new ArrayList<PVector>();
void draw() {
background(img);
for(PVector pp :p){
ellipse(pp.x, pp.y, 20, 20);
}
}
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裡面
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_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_cute_cursor
void setup(){
size(500,500);
PImage img = loadImage("kitty.png");
cursor(img);
}
void draw(){
background(#FFFFF2);
}
//week14_7_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(#FFFFF2);
if(frameCount%120==0) cursor(imgCute);
if(frameCount%120==60) cursor(imgKitty);
}
沒有留言:
張貼留言