วันอาทิตย์ที่ 7 กรกฎาคม พ.ศ. 2556
-Flowers-
void setup(){
size(200,200);
}
int c=0;
float r=10;
void draw() {
background(255);
drawFlower1(r);
drawFlower2(r);
drawFlower3(r);
drawFlower4(r);
drawFlower5(r);
c=c+1; //เป็นการกำหนดให้ค่า c เพิ่มขึ้น 1 ทุกๆครั้งที่มีการ
เรียกใช้ฟังก์ชัน void draw( ){ }
if(c<=60){ //if( ){ }เป็นการกำหนดเงื่อนไข โดยกำหนดเงื่อนไขไว้ใน ( )
ถ้าเงื่อนไขเป็นจริง ให้ทำตามคำสั่งใน { }
r=r+0.3;
}
else{ //else{ } เป็นคำสั่งที่ใช้ต่อจาก if( ){ } โดยคำสั่งจะเริ่มพิจารณา
เงื่อนไขจาก if ก่อนถ้า if ไม่เป็นจริง จะทำตามคำสั่งของ else ใน { }
r=r-0.3;
}
if(c==120){
r=10;
c=0;
}
}
void drawFlower1(int r){
fill(250,15,180);
ellipse(30,50,r+20,r+20);//Corolla
ellipse(50,30,r+20,r+20);//Corolla
ellipse(70,50,r+20,r+20);//Corolla
ellipse(50,70,r+20,r+20);//Corolla
fill(250,200,0);
ellipse(50,50,r,r);
}
void drawFlower2(){
fill(255,0,0);
ellipse(130,50,r+20,r+20);//Corolla
ellipse(150,30,r+20,r+20);//Corolla
ellipse(170,50,r+20,r+20);//Corolla
ellipse(150,70,r+20,r+20);//Corolla
fill(250,200,0);
ellipse(150,50,r,r);
}
void drawFlower3(){
fill(0,230,38);
ellipse(30,150,r+20,r+20);//Corolla
ellipse(50,130,r+20,r+20);//Corolla
ellipse(70,150,r+20,r+20);//Corolla
ellipse(50,170,r+20,r+20);//Corolla
fill(250,200,0);
ellipse(50,150,r,r);
}
void drawFlower4(){
fill(250,15,180);
ellipse(130,150,r+20,r+20);//Corolla
ellipse(150,130,r+20,r+20);//Corolla
ellipse(170,150,r+20,r+20);//Corolla
ellipse(150,170,r+20,r+20);//Corolla
fill(250,200,0);
ellipse(150,150,r,r);
}
void drawFlower5(){
fill(0,255,225);
ellipse(80,100,r+20,r+20);//Corolla
ellipse(100,80,r+20,r+20);//Corolla
ellipse(120,100,r+20,r+20);//Corolla
ellipse(100,120,r+20,r+20);//Corolla
fill(250,200,0);
ellipse(100,100,r,r);
}
//ตัวแปล r ใช้ในการเก็บค่าเพื่อให้ดอกไม้ขยับไปใหญ่ขึ้นและเล็กลง เพราะค่า r อยู่ในคำสั่ง ellipse( );
ตรงตำแหน่งที่มีผลต่อรัศมี
//เพิ่มเติม ค่าcที่เพิ่มขึ้นเปรียบเสมือน เวลาที่เพิ่มขึ้นเรื่อยๆ จากเงื่อนไขถ้าc<=60 ค่าrจะบวก0.3เรื่อยๆ
ทำให้ดอกไม้ใหญ่ขึ่น แต่เมื่อเงื่อนไข c<=60 ไม่เป็นจริง
ค่าrจะลดลงมาเรื่อยๆ ทำให้ดอกไม้เล็กลง เมื่อc==120 จะตรงกับอีกเงื่อนไขนึง
ทำให้ค่า r=10 และ c=0 เป็นการรีเซ็ต ค่าr และ c ให้กลับมาเป็นค่าเริ่มต้น
//อ้างอิงคำสั่งพื้นฐานต่างๆจาก lab1 http://com5630043.blogspot.com/search/label/lab1
//อ้างอิงอธิบายฟังก์ชันจาก lab2 http://com5630043.blogspot.com/search/label/lab2
สมัครสมาชิก:
ส่งความคิดเห็น (Atom)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น