2013年9月29日 星期日

Week04

1. 利用mosueDragged 來畫線

void setup (){
 size(400,400);
background(255);    //一定要寫在這裡寫在draw()裡面會重劃畫面
}
void draw(){

}
void mouseDragged(){
  strokeWeight(5);
  stroke(128,0,0);
  line (mouseX,mouseY,pmouseX,pmouseY);      //pmouseX與pmouseY為前一個mouse的座標點
 }




2. 加上調色盤做變化

int b = 0;
int g = 0;
int r = 0;
void setup () {
  size(400, 400);
  background(255);
  colorMode(RGB, 100);
  for (int i = 0 ; i < 100 ; i++){
     noStroke();
     fill(0,0,i);
     rect(0,100+i,100,1);
  }
    for (int i = 0 ; i < 100 ; i++){
     noStroke();
     fill(0,i,0);
     rect(0,200+i,100,1);
  }
      for (int i = 0 ; i < 100 ; i++){
     noStroke();
     fill(i,0,0);
     rect(0,300+i,100,1);
  }
}
void draw() {
  fill(r,g,b);
  rect(0,0,100,100);
}
void mouseClicked() {
  if (mouseX<100&&mouseY<100) stroke(r,g,b);
}
void mouseDragged() {
  if ( mouseX<=100 ) ;
  else line (mouseX, mouseY, pmouseX, pmouseY);
  if (mouseX<100&&mouseY<100) stroke(r,g,b);
  else if (mouseX<100 && mouseY<200) b = mouseY - 100;
  else if (mouseX<100 && mouseY<300) g = mouseY - 200;
  else if (mouseX<100 && mouseY<400) r = mouseY - 300;
}














註明:可以利用拖曳滑鼠的方式,在紅色,藍色,綠色方塊調整深度,顯示在最上面的方塊,可以點選使用。


3.加上點的大小變化

int b = 0;
int g = 0;
int r = 0;
int Point = 1;
void setup () {
  size(500, 400);
  background(255);
  colorMode(RGB, 100);
  for (int i = 0 ; i < 100 ; i++) {
    noStroke();
    fill(0, 0, i);
    rect(0, 100+i, 100, 1);
  }
  for (int i = 0 ; i < 100 ; i++) {
    noStroke();
    fill(0, i, 0);
    rect(0, 200+i, 100, 1);
  }
  for (int i = 0 ; i < 100 ; i++) {
    noStroke();
    fill(i, 0, 0);
    rect(0, 300+i, 100, 1);
  }
  fill(0);
  rect (420, 145, 60, 10);
  rect (445, 120, 10, 60);
  rect (420, 245, 60, 10);
}
void draw() {
  strokeWeight(1);
  fill(r, g, b);
  rect(0, 0, 100, 100);
  fill(255);
  strokeWeight(1);
  rect(400, 0, 100, 100);
  fill(255, 255, 255);
  rect(400, 0, 100, 100);
  strokeWeight(Point);
  point(450, 50);
}
void mouseClicked() {
  if (mouseX<100&&mouseY<100) stroke(r, g, b);
  if (mouseX>400&&mouseY<=200&&mouseY>100) {
    Point = Point+1;
    if (Point <= 1 )Point = 1;
  }
  if (mouseX>400&&mouseY<=300&&mouseY>200) Point--;
}
void mouseDragged() {
  if ( mouseX<=100 ) ;
  else if (mouseX > 400 && mouseY < 300 ) ;
  else {
    strokeWeight(Point);
    line (mouseX, mouseY, pmouseX, pmouseY);
  }
  if (mouseX<100&&mouseY<100) stroke(r, g, b);
  else if (mouseX<100 && mouseY<200) b = mouseY - 100;
  else if (mouseX<100 && mouseY<300) g = mouseY - 200;
  else if (mouseX<100 && mouseY<400) r = mouseY - 300;
}

















心得:現在練習processing的程式當中,主要還是要繪圖之類的,所以總覺得自己畫的爛爛的,很沒有美感,讓人有點傷心,對於程式碼上面沒有太大的問題,只是要自己查的需要研究一下。

沒有留言:

張貼留言