2019年9月26日 星期四

week03

1.用滑鼠畫圖

 (無法中斷,滑鼠移到哪就畫到哪)


void setup(){
  size (600,400);
}
void draw(){
  line(mouseX,mouseY,pmouseX,pmouseY);
}

2.改畫筆顏色粗細


可以讓排版自動對齊

.



會跑出用法                                                                            下面會有相關用法


void setup(){
  size (600,400);
}

void draw(){
  if(key=='1') stroke(55, 102, 0);//stroke筆刷顏色
  if(key=='2') stroke(10, 55, 255);
  if(key=='3') stroke(255, 0, 50);
  if(key=='4') strokeWeight(4);//strokeWeight筆刷粗細
  if(key=='5') strokeWeight(10);
  if(mousePressed){//按下滑鼠才畫
    line(mouseX,mouseY,pmouseX,pmouseY);
  }
}

3.簡易小畫家

右邊可選顏色下面選粗細


void setup() {
  size (600, 400);
  fill(255,0,0);rect(0,0,50,50);
  fill(255,255,0);rect(0,50,50,50);
  fill(0,255,0);rect(0,100,50,50);
  fill(0,255,255);rect(0,150,50,50);
  fill(0,0,255);rect(0,200,50,50);
  line(25,250,25-7,400);
  line(25,250,25+7,400);
}



void draw() {

  if(mouseX<50 && mousePressed){
    if(mouseY<50)stroke(255,0,0);
    else if(mouseY<100) stroke(255,255,0);
    else if(mouseY<150) stroke(0,255,0);
    else if(mouseY<100) stroke(0,255,255);
    else if(mouseY<250) stroke(0,0,255);
    else{
      strokeWeight((mouseY-250)/10);
    }
  }

    if(mouseX>50 && mousePressed){
      line(pmouseX, pmouseY, mouseX, mouseY);
    }
}


4.按特殊建畫線



void setup() {

  size (600, 400);
  fill(255,0,0);rect(0,0,50,50);
  fill(255,255,0);rect(0,50,50,50);
  fill(0,255,0);rect(0,100,50,50);
  fill(0,255,255);rect(0,150,50,50);
  fill(0,0,255);rect(0,200,50,50);
  line(25,250,25-7,400);
   line(25,250,25+7,400);
  
}

void draw() {
  
    
}
void mousePressed(){//一個涵式做一個事情
  if(mouseX<50 && mousePressed){
    if(mouseY<50)stroke(255,0,0);
    else if(mouseY<100) stroke(255,255,0);
    else if(mouseY<150) stroke(0,255,0);
    else if(mouseY<100) stroke(0,255,255);
    else if(mouseY<250) stroke(0,0,255);
    else{
      strokeWeight((mouseY-250)/10);
    }
  } 
}
void mouseDragged(){//一個涵式做一個事情

  if(mouseX>50){
    line(pmouseX, pmouseY, mouseX, mouseY);
  }
}
void keyPressed(){//一個涵式做一個事情

  if(key=='1')stroke(255,0,0);
  if(keyCode==UP)line(300,200,300,0);//特殊建用keyCode
  if(keyCode==DOWN)line(300,200,300,400);
  if(keyCode==LEFT)line(300,200,0,200);
  if(keyCode==RIGHT)line(300,200,600,200);
  
}







沒有留言:

張貼留言

alanhc 互動技術-week17 [final]

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