2016年9月12日 星期一

/Noshiro/ 小畫家 - 線 - 顏色

簡易小畫家
=======================================
1.線


---------

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

這樣只會一直畫  線不會斷
-----------

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

這行表示''如果''滑鼠按下就畫
===========================
2.顏色

---------------------------------
void setup(){
  size(600,600);
  background(255);
}
void draw(){
  if(mousePressed)line(mouseX,mouseY,pmouseX,pmouseY);
}
void keyPressed(){///按鍵轉換顏色
  if(key=='1')stroke(#FF0808);
  if(key=='2')stroke(#FF5E00);
  if(key=='3')stroke(#FFF700);
  if(key=='4')stroke(#1CFF00);
  if(key=='5')stroke(#00F4FF);
  if(key=='6')stroke(#0053DE);
  if(key=='7')stroke(#B300F5);
}

利用鍵盤的按鍵來切換線的顏色
---------------------------
粗細

----------------------
void setup(){
  size(600,600);
  background(255);
}
void draw(){
  if(mousePressed)line(mouseX,mouseY,pmouseX,pmouseY);
}

void keyPressed(){
  if(key=='1')stroke(#FF0808);
  if(key=='2')stroke(#FF5E00);
  if(key=='3')stroke(#FFF700);
  if(key=='4')stroke(#1CFF00);
  if(key=='5')stroke(#00F4FF);
  if(key=='6')stroke(#0053DE);
  if(key=='7')stroke(#B300F5);
}

int now=1;

void mouseWheel(MouseEvent event){
  float f = event.getCount();

  now +=f;
  if(now<1) now=1;
  strokeWeight(now);///改變粗細
  println(now); ///下方資訊PO出
}

也就是說使用滾輪讓他在上下滾動能夠去更改  now 值
然後用now的值來(strokeWeight)粗細
-----------------------------------
存取

樹??
-----------------------
void setup(){
  size(600,600);
  background(255);
}
void draw(){
  if(mousePressed)line(mouseX,mouseY,pmouseX,pmouseY);
}

void keyPressed(){
  if(key=='1')stroke(#FF0808);
  if(key=='2')stroke(#FF5E00);
  if(key=='3')stroke(#FFF700);
  if(key=='4')stroke(#1CFF00);
  if(key=='5')stroke(#00F4FF);
  if(key=='6')stroke(#0053DE);
  if(key=='7')stroke(#B300F5);
  ///-------
  if(key=='s')save("img.png");
  if(key=='l'){
    PImage img=loadImage("img.png");
  if(img!=null) image(img,0,0);///若圖片沒存那就不放
  }
}
int now=1;
void mouseWheel(MouseEvent event){
  float f = event.getCount();
  //println(f);
  now +=f;
  if(now<1) now=1;
  strokeWeight(now);
  println(now);
}

儲存或載入圖片
---------------------------------
調色盤  空


----------------------
void setup(){
  size(600,600);
  background(255);
}
void draw(){
  if(mousePressed)line(mouseX,mouseY,pmouseX,pmouseY);
}

boolean bColorSelect = false;///另一布林函數 bColorSelect為否定

void keyPressed(){
  if(key=='1')stroke(#FF0808);
  if(key=='2')stroke(#FF5E00);
  if(key=='3')stroke(#FFF700);
  if(key=='4')stroke(#1CFF00);
  if(key=='5')stroke(#00F4FF);
  if(key=='6')stroke(#0053DE);
  if(key=='7')stroke(#B300F5);
  ///-------

  if(key=='c' && bColorSelect == false){///若按C且函數為false
    bColorSelect = true;///函數改為真(更改)
    save("beforeColor.png");///先存之前畫的
    PImage img=loadImage("colormap.png");///載入那張colormap的圖片
    image(img,0,0);
  }
  else if(key=='c'&&bColorSelect == true){///若按C且函數為ture
    bColorSelect = false;///函數改為否定(更改)
    PImage img=loadImage("beforeColor.png");///載入之前畫的
    if(img!=null)image(img,0,0);
  }


  ///-------
  if(key=='s')save("img.png");
  if(key=='l'){
    PImage img=loadImage("img.png");
  if(img!=null) image(img,0,0);
  }
}
int now=1;
void mouseWheel(MouseEvent event){
  float f = event.getCount();
  //println(f);
  now +=f;
  if(now<1) now=1;
  strokeWeight(now);
  println(now);
}


比較可惜是還是圖片 =  =
------------------------------
讓調色盤作用


--------------------------
void setup(){
  size(600,600);
  background(255);
}
void draw(){
  if(bColorSelect){
    loadPixels();///讀當下點擊的像素
    stroke(pixels[mouseX+mouseY*width]);///然後換成畫筆顏色
  } 
  else if(mousePressed)line(mouseX,mouseY,pmouseX,pmouseY);///畫筆
}

boolean bColorSelect = false;
void keyPressed(){
  if(key=='1')stroke(#FF0808);
  if(key=='2')stroke(#FF5E00);
  if(key=='3')stroke(#FFF700);
  if(key=='4')stroke(#1CFF00);
  if(key=='5')stroke(#00F4FF);
  if(key=='6')stroke(#0053DE);
  if(key=='7')stroke(#B300F5);
  ///-------

  if(key=='c' && bColorSelect == false){
    bColorSelect = true;
    save("beforeColor.png");
    PImage img=loadImage("colormap.png");
    image(img,0,0);
  }
  else if(key=='c'&&bColorSelect == true){
    bColorSelect = false;
    PImage img=loadImage("beforeColor.png");
    if(img!=null)image(img,0,0);
  }


  ///-------
  if(key=='s')save("img.png");
  if(key=='l'){
    PImage img=loadImage("img.png");
  if(img!=null) image(img,0,0);
  }
}
int now=1;
void mouseWheel(MouseEvent event){
  float f = event.getCount();
  //println(f);
  now +=f;
  if(now<1) now=1;
  strokeWeight(now);
  println(now);
}

就是利用單位像素來決定其顏色~~~
-----------------


沒有留言:

張貼留言