18 กรกฎาคม 2556

.O. Curve Sticking .O.

~ ~ รั้วรอบขอบชิด  ~


Curve Sticking Processing.js code

void setup(){
  size(400,400);
}

void draw(){
  background(255,152,229);
  strokeWeight(3);
  stroke(0,0,random(41,100));
  drawCurve(0,40,0,400);  //เรียกใช้ฟังก์ชัน drawCurve
  strokeWeight(0);
  fill(0);
  ellipse(200,200,200,200);
  fill(255);
  ellipse(200,240,80,80);
}

void drawCurve(int x,  int n, int a, int l){ //สร้างฟังก์ชัน drawCurve
  int count = 0;
  while(count < n){  //คำสั่งวน loop โดยการกำหนดค่า count<n แล้วจะวาด
    line(x+a,0,x,l-a);
    line(x+a,l,x+l,y+l-a);
    a = a+15;  //เพิ่มค่า a = a+!5
    count = count+1;  //เพิ่มค่า count

/*การทำงานของลำดับคำสั่งวน loop เป็นดังนี้
while(count < n) กำหนดให้ค่า count น้อยกว่าค่า n ถ้าเป็นจริงตามเงื่อนไขจะทำคำสั่งต่อไปถ้าไม่ใช่จะหยุดไม่ทำต่อ ---> วาดเส้น ---> กำหนดให้ค่า a เพิ่มขึ้น a = a+10 ---> เพิ่มค่า count = count+1 จากนั้นจะกลับไปพิจารณาเงื่อนไขอีกครั้ง */

  }
}



>.คำสั่งที่ใช้ในการวาดรูป ประกอบด้วย.<


- line - คำสั่งวาดเส้น (x,y,x1,y1)
ค่า x,y คือ จุดเริ่มต้น
x1,y1 คือ จุดปลาย

- ellipse- คำสั่งวาดวงรี (x,y,r,p)
ค่า x,y คือ ค่ากำหนดจุดศูนย์กลางวงกลมในแนวแกน x และแกน y ตามลำดับ
r คือ ค่าเส้นผ่านศูนย์กลางในแนวแกน x
p คือ ค่าเส้นผ่านศูนย์กลางในแนวแกน y

- random - คือคำสั่งที่ทำให้ค่าเลื่อนที่จากตัวหนึ่งไปอีกค่าหนึ่งอย่างเร็วๆกลับไปกลับมา
เหมือนการสั่น เช่น
   fill(random(0,255)); //เป็นการกำหนดค่าให้สี่รูวาดเปลี่ยนไปมาอย่างรวดเร็ว ระหว่างสีดำไปขาวกลับไปกลับมา
 
- void - คำสั่งสร้างฟังก์ชัน เช่น
    void drawCircle(){
      ....
    } ต้องเขียนเรียกใช้
- void setup(){...} - คำสั่งสร้างฟังก์ชัน ที่เรียกใช้เองไม่ต้องเขียนเรียกใช้

- void draw(){...} - คำสั่งสร้างฟังก์ชัน ที่เรียกใช้อัตโนมัติหลัง setup

- Global - เป็นตัวแปรที่กำหนดค่าอยู่นอกฟังก์ชัน จะทำให้ภาพเคลื่อนไหวได้เมื่อกำหนดให้ค่าเปลี่ยน
ตัวอย่าง int x = 0; //Global variable
              void setup(){
                 ellipse(x,100,50,50);
                 x = x+1; //กำหนดให้เมื่อวาดรูปแล้วค่า x = x+1 ไปเรื่อยๆ


 
- while - คือคำสั่งทำซ้ำๆ โดยกำหนดค่าตัวแปร
เช่น  ตัวอย่าง กำหนดค่า ตัวแปร count และ n กำหนดให้ค่า count<n จะวนทำซ้ำๆใน loop  จนกระทั่งค่า count >= n จึงจะออกจาก loop
 
แต่!!! ถ้าเราไม่กำหนดค่า n โปรแกรมก็จะวน loop ไปเรื่อยๆ เราเรียกการทำซ้ำไปเรื่อยๆไม่หยุดว่า
ติด infinite loop

- background(R,G,B) - กำหนดสีพื้นหลัง ตามค่าสี RGB
 
- fill(R,G,B)- คำสั่งใส่สีรูปวาดตามค่าสี RGB

- stroke(R,G,B) - วาดเส้นขอบโดยกำหนดสีเส้นตามค่าสี RGB


 
- strokeWeight(x)- วาดเส้นหนาโดยใส่ค่าลงไปแทนค่า x

 

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

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