วันศุกร์ที่ 26 กรกฎาคม พ.ศ. 2556
Some UFO
int xPos; //เป็นการประกาศตัวแปรชื่อ xPos ชนิดที่เป็น Local variables
int count;//เป็นการประกาศตัวแปรชื่อ Count ชนิดที่เป็น Local variables
int Difference=200; //เป็นการประกาศและกำหนดค่าของตัวแปร Difference โดยค่าที่เป็นจำนวนเต็มคือ 200 ทางขวาของ Assignment Operator ใส่ให้กับตัวแปร Difference ทางซ้าย
void setup() //เป็นการประกาศฟังก์ชั่น setup โดย void จะกระทำเฉพาะในฟังก์ชั่นเท่านั้น
{
size(500, 500); //เป็นการกำหนดขนาดของ Canvas โดยที่ size (ขนาดของแกนx, ขนาดของแกนy);
xPos=0; //เป็นการกำหนดค่าของตัวแปร xPos ชนิดที่เป็นจำนวนเต็ม
count=xPos; //เป็นการกำหนดค่าของตัวแปร count ให้เท่ากับค่าของตัวแปร xPos
}
void draw() //เป็นการประกาศฟังก์ชั่น draw โดย void จะกระทำเฉพาะในฟังก์ชั่นเท่านั้น
{
int yPos=100; //เป็นการประกาศและกำหนดค่าของตัวแปร yPos ชนิดที่เป็นจำนวนเต็ม ให้เท่ากับ 100
int[] A = {
1, 3, 2
}; //เป็นการประกาศและกำหนดค่าให้กับตัวแปรชุด A โดยนำค่าต่างๆ ที่เป็นจำนวนเต็ม ของจำนวน UFO ตามแต่ละแถวใส่ลงในวงเล็บปีกกา
background(051, 000, 153); //เป็นการเพิ่มสีให้กับพื้นหลัง โดย background(สีแดง, สีเขียว, สีน้ำเงิน); ค่าของสีแต่ละตัวมีได้สูงสุดไม่เกิน 255 และต่ำสุดที่ 000
int i=0; //เป็นการประกาศและกำหนดค่าของตัวแปร i ชนิดที่เป็นจำนวนเต็ม ให้เท่ากับ 0
while (i<A.length) //เป็นคำสั่ง while ซึ่งหลักการคือ ถ้าเงื่อนไขที่กำหนดเป็นจริงจะกระทำตามที่เราสั่งไว้ ไปเรื่อยๆ จนกว่าเงื่อนไขนั้นจะเป็นเท็จ รูปแบบการเขียนคือ while (เงื่อนไข){คำสั่ง} โดยในข้อนี้สามารถอธิบายได้ว่า ขณะที่ i น้อยกว่าความยาวของตัวแปรชุด A นั้น จะสั่งให้กระทำส่งนั้นๆไปเรื่อยๆ ถ้าอยากให้หยุดเราต้องทำให้สถานะการณ์นี้เป็นเท็จ โดยเพิ่มค่าให้กับตัวแปรในกรณีนี้คือ i นั่นเอง
{
drawSomeUFO(xPos, yPos, A[i]); //เป็นการเรียกใช้ฟังก์ชั่นชื่อ drawSomeUFO
yPos=yPos+150; //เป็นการปรับค่าให้กับตัวแปร yPos โดยเพิ่มขึ้นทีละหนึ่งร้อยห้าสิบ
i=i+1; //เป็นการปรับค่าให้กับตัวแปร i โดยเพิ่มขึ้นทีละหนึ่ง
}
if (count<=width) //เป็นการสร้างเงื่อนไข ให้กับการเคลื่อนที่ โดยที่ if คือการตั้งเงื่อนไขที่ว่าถ้าจริงให้ทำ ถ้าเท็จไม่ทำ จะได้ว่า if (กำหนดค่าที่เปลี่ยนแปลงไปภายใต้เงื่อนไข) { กำหนดค่าที่ต้องการให้เปลี่ยนเมื่อเงื่อนไขสมบรูณ์; }โดยในที่นี้หมายถึง ถ้าค่า count น้อยกว่าหรือเท่ากับค่า width เป็นจริง ให้ xPos เพิ่มขึ้นทีละหนึ่ง และ count เพิ่มขึ้นทีละหนึ่ง
{
xPos=xPos+1;
count=count+1;
}
if (count>width || xPos==width) //เป็นการสร้างเงื่อนไข ให้กับการเคลื่อนที่ โดยที่ if คือการตั้งเงื่อนไขที่ว่าถ้าจริงให้ทำ ถ้าเท็จไม่ทำ จะได้ว่า if (กำหนดค่าที่เปลี่ยนแปลงไปภายใต้เงื่อนไข) { กำหนดค่าที่ต้องการให้เปลี่ยนเมื่อเงื่อนไขสมบรูณ์; }โดยในที่นี้หมายถึง ถ้าค่า count มากกว่าค่า width หรือxPos เท่ากับ width เป็นจริง ให้ xPos ลดลงทีละหนึ่ง และ count เพิ่มขึ้นทีละหนึ่ง
{
xPos=xPos-1;
count=count+1;
}
if (count==width*2) { //เป็นการสร้างเงื่อนไข ให้กับการเคลื่อนที่ โดยที่ if คือการตั้งเงื่อนไขที่ว่าถ้าจริงให้ทำ ถ้าเท็จไม่ทำ จะได้ว่า if (กำหนดค่าที่เปลี่ยนแปลงไปภายใต้เงื่อนไข) { กำหนดค่าที่ต้องการให้เปลี่ยนเมื่อเงื่อนไขสมบรูณ์; }โดยในที่นี้หมายถึง ถ้าค่า count เท่ากับค่า width คูณสองเป็นจริง ให้ count เท่ากับศูนย์
count=0;
}
}
void drawSomeUFO(int xPos, int yPost, int A) //เป็นการประกาศฟังก์ชั่น drawSomeUFOและกำหนดตัวแปร xPos, yPost, A ที่เป็นจำนวนเต็มโดย void จะกระทำเฉพาะในฟังก์ชั่นเท่านั้น
{
int i=0; //เป็นการประกาศและกำหนดค่าของตัวแปร i ชนิดที่เป็นจำนวนเต็ม ให้เท่ากับ 0
while (i<A) //เป็นคำสั่ง while ซึ่งหลักการคือ ถ้าเงื่อนไขที่กำหนดเป็นจริงจะกระทำตามที่เราสั่งไว้ ไปเรื่อยๆ จะกว่าเงื่อนไขนั้นจะเป็นเท็จ รูปแบบการเขียนคือ while (เงื่อนไข){คำสั่ง} โดยในข้อนี้สามารถอธิบายได้ว่า ขณะที่ i น้อยกว่าความยาวของตัวแปรชุด A นั้น จะสั่งให้เข้าเงื่อนไขการวาดต่างๆไปเรื่อยๆ จนกว่าเงื่อนไขจะเป็นเท็จนั่นเอง
{
stroke(255, 255, 255); //คือคำสั่งเกี่ยวกับการเติมสีเส้น โดย stroke (ค่าของสีแดง, ค่าของสีเขียว, ค่าของสีน้ำเงิน);
fill(255, 255, 000); //เป็นการเติมสีให้กับรูปร่างที่เราสร้าง โดยfill(ค่าของสีแดง, ค่าของสีเขียว, ค่าของสีน้ำเงิน);
ellipse(xPos, yPost, 80, 100); //คือคำสั่งที่ใช้ในการวาดรูปทรงกลม หรือทรงรีก็ได้ โดย ellipse (ค่าxที่เป็นจุดศูนย์กลางวงกลม, ค่าyที่เป็นจุดศูนย์กลางวงกลม, ขนาดความยาวของวงกลมตามแกนx, ขนาดความยาวของวงกลมตามแกนy); ถ้าขนาดความยาวของวงกลมตามแกนx กับ ขนาดความยาวของวงกลมตามแกนy เท่ากันจะเป็นวงกลม แต่ถ้าไม่จะเป็นวงรี
fill(255, 051, 153);
ellipse(xPos, yPost, 140, 40);
xPos = xPos + Difference; //เป็นการเพิ่มค่าให้ xPos บวกกับค่าของ Difference
i=i+1;//เป็นการเพิ่มค่าให้ i ทีละหนึ่ง
}
} //ปีกกาปิด เพื่อจบฟังก์ชั่น
สมัครสมาชิก:
ส่งความคิดเห็น (Atom)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น