2015年9月21日 星期一

02160270_周冠羽(Takashi),Week02

Part1.作簡易小畫家





Part2.

(3). 加入 顏色色塊選擇

void setup(){
  size(800,600);
  background(#FAC30D);
  stroke(#FF081C);   //預設  畫筆顏色為  紅色
}

void draw(){
  fill(0,255,0); rect(0,0,100,100);   //產生藍色區塊
  fill(0,0,255); rect(0,100,100,100);  //產生綠色區塊
  fill(0,255,255); rect(0,200,100,100);   //產生青色區塊
}

void mouseDragged(){
  line(mouseX,mouseY,pmouseX,pmouseY);
}

void mousePressed(){            //判斷你點的區塊是
  if(mouseX<100 && mouseY<100)
  {stroke(0,255,0);}
  else if(mouseX<100 && mouseY<200)   
  {stroke(0,0,255);}
  else if(mouseX<100 && mouseY<300)   
  {stroke(0,255,255);}
}





Part3.加入粗細範圍


void setup(){
  size(800,600);
  background(#FAC30D);
  stroke(#FF081C);
}
float myTsuTsuDer = 1;   //控制粗細
color mystroke = color(0);  //預設起始筆刷為黑色

void draw(){
  stroke(0);   strokeWeight(1);   //固定選擇區塊邊框為  黑色
  fill(0,255,0); rect(0,0,100,100);
  fill(0,0,255); rect(0,100,100,100);
  fill(0,255,255); rect(0,200,100,100);
  stroke(mystroke);  strokeWeight(myTsuTsuDer);
}

void mouseDragged(){
  line(mouseX,mouseY,pmouseX,pmouseY);
}

void mousePressed(){
  if(mouseX<100 && mouseY<100)
  {mystroke=color(0,255,0);}
  else if(mouseX<100 && mouseY<200)
  {mystroke=color(0,0,255);}
  else if(mouseX<100 && mouseY<300)
  {mystroke=color(0,255,255);}
  if(mouseX>700) myTsuTsuDer = mouseY/80 ;  //粗細層次
}

Part4. 製作 "刮畫"  效果

part1.一點一點做畫


PImage imgBG;  // 存彩圖
PImage imgBlack;  //黑布幕
void setup(){
  size(800,600);
  imgBG = loadImage("colorBG.jpg");
  imgBlack = createImage(800,600,ARGB);   //使用createimage()函数创建一个新的空白图像
 //创建一个空白图像,800×600像素,ARGB颜色模式 ------> A : Alpha 
  imgBlack.loadPixels();
  for(int i=0;i<imgBlack.pixels.length;i++)
  {
    imgBlack.pixels[i] = color(0,0,0,255);
  }
  imgBlack.updatePixels();  
}

void draw(){
  image(imgBG,0,0,width,height);
  image(imgBlack,0,0,width,height);   //黑色覆蓋在彩圖之上
}

void mouseDragged(){
  imgBlack.loadPixels();
  imgBlack.pixels[mouseX+mouseY*width] = color(0,0,0,0); //一個點一個點產生畫的效果

  imgBlack.updatePixels();
}

part2.柔順線條板做畫

PImage imgBG;
PGraphics pgBlack;

void setup(){
  size(800,600);
  imgBG = loadImage("colorBG.jpg");
  imgBG.resize(800,600);
  pgBlack = createGraphics(800,600);
  pgBlack.beginDraw();
  pgBlack.background(0);
  pgBlack.strokeWeight(50);
  pgBlack.stroke(0,0,0,28);
  pgBlack.endDraw();
}
void draw(){
  background(0);
  imgBG.mask(pgBlack);
  image(imgBG,0,0,width,height);
}

void mouseDragged(){
  pgBlack.beginDraw();
  pgBlack.strokeWeight(5);
  pgBlack.stroke(255);
  pgBlack.line(mouseX,mouseY,pmouseX,pmouseY);
  pgBlack.endDraw();
}





















沒有留言:

張貼留言