一.
利用processing 制作小画家系统
void setup(){
size(600,600);//window size
line(mouseX,mouseY,pmouseX,pmouseY);//drawing line
-滑鼠點擊畫線
if(mousePressed) line(mouseX,mouseY,pmouseX,pmouseY);//偵測滑鼠點擊才畫線
-鍵盤控制換顏色
void keyPressed(){//開啟鍵盤宣告
if(key=='1') stroke(#6756CB);//偵測key,切換顏色
if(key=='2') stroke(#22CFD3);
if(key=='3') stroke(#A925CE);
if(key=='4') stroke(#8B4A14);
if(key=='5') stroke(#FF080C);
-利用滑鼠滾輪控制字體大小
int now=1;//宣告變數
void mouseWheel(MouseEvent event) { //滾輪
float e = event.getCount();
//println(e);
now+=e;//+1
if(now<1)now=1;//讓e不變成負數(解bug)
strokeWeight(now);
println(now);
-存檔/讀檔
void keyPressed(){
if(key=='1') stroke(#6756CB);
if(key=='2') stroke(#22CFD3);
if(key=='3') stroke(#A925CE);
if(key=='4') stroke(#8B4A14);
if(key=='5') stroke(#FF080C);
if(key=='s') save("now.png"); //存檔
if(key=='r'){
PImage img=loadImage("now.png"); //讀檔
if(img!=null) image(img,0,0); //增加防護偵測如空值返回0不會出現檔機
}
}
-開啟彩色盤
boolean bColorSelect=false;//判斷偵測
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);
}
-吸假彩色盤顏色
void draw(){
if(bColorSelect)
{
loadPixels();
stroke(pixels[mouseX+mouseY*width]);
}
else if(mousePressed) line(mouseX,mouseY,pmouseX,pmouseY);
}
沒有留言:
張貼留言