2019年9月26日 星期四

Week03_黃偉愷

1. 基本小畫家


Code:
void setup(){

  size(600, 400);

}



void draw(){

  if(mousePressed){

    // pmouseX, pmouseY 代表滑鼠上一個時間點的座標

    line(mouseX, mouseY, pmouseX, pmouseY);
  }
}


2. 用鍵盤調顏色和粗細的小畫家


Code:
void setup() {
  size(600, 400);
  background(#334455); //設定背景顏色
  stroke(255, 188, 0); //改筆觸的顏色
  strokeWeight(10); //改筆觸的粗細
}

void draw() {
  //透過鍵盤控制筆觸的顏色或粗細
  if (key=='1') stroke(255, 0, 0);
  if (key=='2') stroke(255, 100, 0);
  if (key=='3') strokeWeight(20);
  if (key=='4') strokeWeight(10);
  
  if (mousePressed) {
    // pmouseX, pmouseY 代表滑鼠上一個
    line(mouseX, mouseY, pmouseX, pmouseY);
  }
}

3. 用按鈕調顏色和粗細的小畫家


原始Code:
void setup() {
  size(600, 400);
  background(#FFFFFF); //設定背景顏色

  // 畫顏色選擇器
  fill(255, 0, 0); //紅色選擇鈕
  rect(0, 0, 50, 50);
  fill(0, 255, 0); //綠色選擇鈕
  rect(0, 50, 50, 50);
  fill(0, 0, 255); //藍色選擇鈕
  rect(0, 100, 50, 50);
  
  // 畫粗細選擇器
  fill(255, 255, 255);
  rect(0, 150, 50, 250);
  // 畫三角形的部分
  line(0, 400, 25, 150);
  line(25, 150, 50, 400);
}

void draw() {
  //顏色選擇和粗細調整的部分
  if (mousePressed && mouseX<50) {
    if (mouseY < 50) stroke(255, 0, 0); //改筆觸的顏色為紅色
    else if (mouseY < 100) stroke(0, 255, 0); //改筆觸的顏色為綠色
    else if (mouseY < 150) stroke(0, 0, 255); //改筆觸的顏色為藍色
    else {
      strokeWeight((mouseY-150)/10); //改筆觸的粗細
    }
  }

  //畫畫
  if (mousePressed && mouseX>50) {
    // pmouseX, pmouseY 代表滑鼠上一個
    line(mouseX, mouseY, pmouseX, pmouseY);
  }
}

乾淨Code:
void setup() {
  size(600, 400);
  background(#FFFFFF); //設定背景顏色

  // 畫顏色選擇器
  fill(255, 0, 0); //紅色選擇鈕
  rect(0, 0, 50, 50);
  fill(0, 255, 0); //綠色選擇鈕
  rect(0, 50, 50, 50);
  fill(0, 0, 255); //藍色選擇鈕
  rect(0, 100, 50, 50);

  // 畫粗細選擇器
  fill(255, 255, 255);
  rect(0, 150, 50, 250);
  // 畫三角形的部分
  line(0, 400, 25, 150);
  line(25, 150, 50, 400);
}

void draw() {
}

// 滑鼠按下
void mousePressed() {
  //顏色選擇和粗細調整的部分
  if (mouseX < 50) {
    if (mouseY < 50) stroke(255, 0, 0); //改筆觸的顏色為紅色
    else if (mouseY < 100) stroke(0, 255, 0); //改筆觸的顏色為綠色
    else if (mouseY < 150) stroke(0, 0, 255); //改筆觸的顏色為藍色
    else {
      strokeWeight((mouseY-150)/10); //改筆觸的粗細
    }
  }
}

// 滑鼠拖曳
void mouseDragged() {
  //畫畫
  if (mouseX > 50) {
    // pmouseX, pmouseY 代表滑鼠上一個
    line(mouseX, mouseY, pmouseX, pmouseY);
  }
}

// 鍵盤控制
void keyPressed() {
  if (keyCode == UP) {
    println("hello");
  }
}

4. 貼彩色程式碼的方法

(1) 先全選程式碼
(2)
(3) 在部落格貼上就會變彩色的了

沒有留言:

張貼留言

alanhc 互動技術-week17 [final]

回顧這學期的作品:  期中作業:LANDING:PLANET 賣點&特點: 炫麗的特效 物理(星球重力及降落)及粒子系統(噴射) 世界地圖可根據視角縮放 困難點: 重寫3次最終改寫成物件導向的CLASS寫法...