วันจันทร์ที่ 8 กรกฎาคม พ.ศ. 2556

DONUT[love]


ต่อไปนี้ จะป็นการวาดรูปแบบใช้ function แต่มีการนำ condition เข้ามาเพิ่มเพื่อให้ ภาพสามารถเคลื่อนไหวได้ ในครั้งนี้เราจะใช้ เงื่อนไขในการทำให้โดนัท เคลื่อนที่ได้ และมีการสั่นด้วย
// ส่วนนี้เป็นการประกาศ ตัวแปรแบบ Global
int x=250,y=50;
int speed=3;
int i=0;
void setup(){
size(500,400);
} //ส่วนนี้ก็จะเป็นฟังก์ชัน setup เป็นแรกของการทำงาน จะประกาศ กำหนด แต่ไม่ต้องเรียกใช้ เพราะจะเรียกใช้เองอัตโนมัติ
void draw(){
background(2);//เป็นการกำหนดสีของพื้นหลัง โดยการกำหนดค่าจะเป็น background(R,G,B); โดยมีค่าอยู่ในช่วง 0-255
drawDonut(x,y,i,speed);เป็นส่วนที่เรียกใช้void drawDonut()โดยรับค่าx,y,i,speedมาใช้ใน function (แบบ parameter)
i=i+1;
y=y+speed; // ค่า y+speed ก็จะทำให้ โดนัทเพิ่มความเร็วขึ้น
x=x+speed;
if (i==260){
i=0;
}
if(y>200){
speed=speed*(-1);
}
if(y>40){
speed=speed*(-1);
} //ส่วนนี้เป็นเงื่อนไขที่ทำให้โดนัทเคลื่อนที่ลงมาแล้วกลับขึ้นไปเริ่มใหม่อีก
}//ต่อไปเป็นส่วนของ function void draw() ฟังก์ชั่นนี้ ก็มีการประกาศ กำหนด แต่ไม่ต้องเรียกใช้ เพราะมันจะเรียกใช้เองโดยอัตโนมัติ
void drawDonut(int x,int i,int y,int speed){
stroke(249,252,69);
fill(240,198,82);
ellipse(x,y+i,90,80);
fill(2);
ellipse(x,y+i,40,40);
strokeWeight(3);
fill(240,198,82);
ellipse(x-200,(y-100)+i,80,80);
fill(2);
ellipse(x-200,(y-100)+i,40,40);
fill(172,252,61);
rect(mouseX,350,100,20);//คำสั่งที่ใช้วาดสี่เหลี่ยม rect(x,y,w,h);
fill(252,61,122);
rect(x+140,(y-14)+i,40,40);
rect(x-100,(y+9)+i,20,20);
}//นี้จะเป็นการประกาศและกำหนด user defined function drawPaint()ฟังก์ชันที่ใช้วาดโดนัท

ไม่มีความคิดเห็น:

แสดงความคิดเห็น