Light Windmill
จากที่เห็นภาพนี้เป็นภาพกังหันลมที่สามารถหมุนได้ทุกด้าน ในการวาดนั้น อันดับแรกผมใช้ฟังก์ชั่นหลัก void setup() ในการกำหนดขนาดของพื้นที่ จากนั้นจึงกำหนดตัวแปรที่จะใช้ ซึ่งยังคงเป็น Global variables หลังจากนั้น ผมจึงใช้ฟังก์ชั่นหลัก void draw() ในการวาด ผมเริ่มใช้ฟังก์ชั่น background() ในการกำหนดสีให้เป็นไปตามเมาส์ที่ขยับไปในแกน X และ Y หลังจากนั้นผมใช้ฟังก์ชั่นในการวาดวงรีทั้งหมด 5 รูป โดยมี 4 รูปที่มีการกำหนดเงื่อนไขให้เคลื่อนไหวเป็น animation โดยใช้ฟังก์ชั่น if() วงสุดท้ายที่เป็นวงที่ห้าให้เป็นแกนกลางซึ่งสอดไว้ตรงกลางที่หยุดนิ่ง ในการวาดรูปนี้ไม่ยากเท่าไร เชิญลองทำกันได้นะครับ
Processing Code
void setup() { //ฟังก์ชั่นหลักซึ่งใช้ในการกำหนดขนาด หรือสิ่งต่างๆ มีได้แค่ชุดเดียว
size(300, 300); //ฟังก์ชั่นที่ใช้ในการกำหนดพื้นที่ หรือ size(width, height)
}
int k=150;
int g=0;
int m=0; //ตัวแปรเหล่านี้เป็น Global variables ที่ใช้แทนค่าได้ทุกฟังก์ชั่นในภาพนี้
int b=0; //int ใช้กับตัวแปรที่เป็นจำนวนเต็ม
void draw() { //ฟังก์ชั่นหลักที่ใช้ในการวาด มีได้เพียงชุดเดียวเช่นกัน
background(mouseX, mouseX, mouseY); //ฟังก์ชั่นที่ใช้ในการกำหนดพื้นหลัง
fill(#21C6FF); //ฟังก์ชั่นที่ใช้ในการเติมสีตามเครื่องหมาย # หรือค่าของแม่สี
ellipse(k, k, k+50, k+50); //ฟังก์ชั่นที่ใช้ในการวาดวงรี หรือ ellipse(x, y, width, height)
ellipse(k, k, b+50, b+50);
fill(#D6E817);
ellipse(k, k, g, g-184);
fill(#32E817);
ellipse(k, k, m-180, m+10);
fill(#FF5221);
ellipse(k, k, 30, 30);
m=m+2;
g=g+2;
b=b+4; //กำหนดความเร็วของตัวแปรตามตัวเลขที่ตามหลัง
if(g>200) {
g=0;
} else
if(m>192) {
m=0;
}
if(b>150) {
b=0;
} //if() เป็นฟังก์ชั่นที่ใช้ในการกำหนดเงื่อนไขของตัวแปรต่างๆ ที่นำไปแทนค่า
} //else คือฟังก์ชั่นที่ขยายโครงสร้างของฟังก์ชั่น if() ตามด้วยโปรแกรมที่จะให้เลือกระหว่างคำสั่ง 2 ชุดหรือมากกว่านั้น และจะระบุคำสั่งที่ปฏิบัติ เมื่อประโยคในฟังก์ชั่น if() ผิดพลาด
หมายเหตุ สังเกตได้ว่า เครื่องหมาย // เป็นการบอกว่า ฟังก์ชั่นชุดนี้ไม่่ใช้งาน และฟังก์ชั่นหลักที่ใข้ยังเป็น function without parameter
size(300, 300); //ฟังก์ชั่นที่ใช้ในการกำหนดพื้นที่ หรือ size(width, height)
}
int k=150;
int g=0;
int m=0; //ตัวแปรเหล่านี้เป็น Global variables ที่ใช้แทนค่าได้ทุกฟังก์ชั่นในภาพนี้
int b=0; //int ใช้กับตัวแปรที่เป็นจำนวนเต็ม
void draw() { //ฟังก์ชั่นหลักที่ใช้ในการวาด มีได้เพียงชุดเดียวเช่นกัน
background(mouseX, mouseX, mouseY); //ฟังก์ชั่นที่ใช้ในการกำหนดพื้นหลัง
fill(#21C6FF); //ฟังก์ชั่นที่ใช้ในการเติมสีตามเครื่องหมาย # หรือค่าของแม่สี
ellipse(k, k, k+50, k+50); //ฟังก์ชั่นที่ใช้ในการวาดวงรี หรือ ellipse(x, y, width, height)
ellipse(k, k, b+50, b+50);
fill(#D6E817);
ellipse(k, k, g, g-184);
fill(#32E817);
ellipse(k, k, m-180, m+10);
fill(#FF5221);
ellipse(k, k, 30, 30);
m=m+2;
g=g+2;
b=b+4; //กำหนดความเร็วของตัวแปรตามตัวเลขที่ตามหลัง
if(g>200) {
g=0;
} else
if(m>192) {
m=0;
}
if(b>150) {
b=0;
} //if() เป็นฟังก์ชั่นที่ใช้ในการกำหนดเงื่อนไขของตัวแปรต่างๆ ที่นำไปแทนค่า
} //else คือฟังก์ชั่นที่ขยายโครงสร้างของฟังก์ชั่น if() ตามด้วยโปรแกรมที่จะให้เลือกระหว่างคำสั่ง 2 ชุดหรือมากกว่านั้น และจะระบุคำสั่งที่ปฏิบัติ เมื่อประโยคในฟังก์ชั่น if() ผิดพลาด
หมายเหตุ สังเกตได้ว่า เครื่องหมาย // เป็นการบอกว่า ฟังก์ชั่นชุดนี้ไม่่ใช้งาน และฟังก์ชั่นหลักที่ใข้ยังเป็น function without parameter
ไม่มีความคิดเห็น:
แสดงความคิดเห็น