12 กรกฎาคม 2556

:") Ap App Apple [ Love ] (":


~ แอปเปิ้ล อร่อย ~


This is an apple Processing.js code

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

int i = 0; //Global
void draw(){
  background(212,255,203);
  stroke(random(0,255),random(0,255),random(0,255),500);
  ellipse(150+150*cos(i),150+150*sin(i),30,30);
  i = i+1; //ใช้ cos,sin มาช่วยให้ภาพหมุนเป็นวงกลม
  drawApple(140,90,150,50);
}

void drawApple(int x, int y, int r, int q){
  strokeWeight(3);
  stroke(26,108,10);
  fill(45,203,14);
  curve(-200,-100,x,y,x+r*2/3,y-r/3,100,0);
  curve(100,300,x,y,x+r*2/3,y-r/3,400,150);
  strokeWeight(7);
  stroke(0);
  fill(124,62,11);
  triangle(x,y+r/10,x+r/10,y-r/5,x-r/10,y-r/5);
  fill(216,11,11);
  curve(900,500,x,y,x+r/10,y+r,900,0);
  curve(-500,500,x,y,x+r/10,y+r,-500,100);
  fill(255);
  ellipse(x-r/3,y+r/3,q/2,q);
  ellipse(x-r/5,y+r*2/3,q/4,q/4);
}


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

- curve - คำสั่งวาดเส้นโค้ง (s1,s2,x,y,x1,y1,e1,e2);
   ค่า x,y ตำแหน่งจุดเริ่มเส้นตามแนวแกน x และแกน y 
      x1,y1 ตำแหน่งจุดปลายเส้นมแนวแกน x และแกน y
   เส้นนี้ได้แบ่งค่าการโค้งเส้นเป็นสี่ส่วน (- , +) คือ
     s1 โค้งปลายของจุดเริ่มโค้งขยายในแนวแกน x
     s2 โค้งส่วนที่สองของจุดเริ่มโค้งขยายในแนวแกน y
     e1 โค้งส่วนที่สามปลายเส้นโค้งขยายในแนวแกน x
     e2 โค้งส่วนสุดท้ายอยู่ปลายเส้นโค้งขยายในแนวแกน y


- triangle - คำสั่งวาดสามเหลี่ยม (x,y,x1,y1,x2,y2)
   ค่า x,y   คือ ตำแหน่งมุมของรูปสามเหลี่ยมในแนวแกน x และแกน y ตามลำดับ
      x1,y1 คือ ตำแหน่งมุมของรูปสามเหลี่ยมในแนวแกน x และแกน y ตามลำดับ
      x2,y2 คือ ตำแหน่งมุมของรูปสามเหลี่ยมในแนวแกน x และแกน y ตามลำดับ

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

- Local - ประกาศตัวแปรที่อยู่ในฟังก์ชัน
   ตัวอย่าง  void draw(){
                     int x = 100;
                     ellipse(x,100,50,50);
                  }
          อาจเขียนเป็น
                  void drawCiecle(int x){
                     ellipse(x,100,50,50);
                  } //ต้องเขียนเรียกใช้ฟังก์ชัน    

- Global - เป็นตัวแปรที่กำหนดค่าอยู่นอกฟังก์ชัน จะทำให้ภาพเคลื่อนไหวได้เมื่อกำหนดให้ค่าเปลี่ยน
   ตัวอย่าง  int x = 0; //Global variable
                  void setup(){
                  ellipse(x,100,50,50);
                  x = x+1; //กำหนดให้เมื่อวาดรูปแล้วค่า x = x+1 ไปเรื่อยๆ
                  }
           
- random - คือคำสั่งที่ทำให้ค่าเลื่อนที่จากตัวหนึ่งไปอีกค่าหนึ่งอย่างเร็วๆกลับไปกลับมา
 เหมือนการสั่น เช่น 
     ellipse(90,90,random(9,20),10); //จะได้วงรีที่มีความยาวของเส้นผ่านศูนย์กลางในแนวแกน x  เปลี่ยนค่าไปมาระหว่าง 9-20 เกิดเป็นการสั่นในแนวแกน x
     fill(random(255,0)); //เป็นการกำหนดค่าให้สี่รูวาดเปลี่ยนไปมาอย่างรวดเร็ว ระหว่างสีขาวไปดำกลับไปกลับมา

- void - คำสั่งสร้างฟังก์ชัน เช่น
       void drawCircle(){
          ....
       } ต้องเขียนเรียกใช้
    
- void setup(){...} - คำสั่งสร้างฟังก์ชัน ที่เรียกใช้เองไม่ต้องเขียนเรียกใช้

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


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

- fill(R,G,B)- คำสั่งใส่สีรูปวาดตามค่าสี RGB

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

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

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

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