วันอังคารที่ 16 กรกฎาคม พ.ศ. 2556

-Railway-



void setup() {
  size(200, 200);
  background(0, 214, 214);
}
void draw() {
  view();
  way();
  railway();
}
void view() {                         //เป็นการสร้างฟังก์ชันขึ้นมาเอง จะตั้งชื่อว่าอะไรก็ได้ 
                                             แต่ต้องมี void  ....(){  }อยู่เสมอ 
                                               โดยใส่คำสั่งที่ต้องการเข้าไปใน { }
                                           ในที่นี้กำหนดให้เป็นฟังก์ขันที่วาด View ทั้งหมดในรูป
  //draw Sun
  fill(255, 0, 0);
  ellipse(100, 20, 25, 25);
  //draw Mountain
  fill(50, 214, 100);
  ellipse(150, 50, 130, 80);
  ellipse(50, 50, 150, 80);
  //draw Land
  fill(240, 193, 113);
  rect(-5, 50, 210, 200);
  //draw tree
  fill(204, 102, 0);
  rect(20, 100, 10, 50);
  rect(150, 60, 5, 30);
  fill(73,255,47);
  ellipse(25,100,40,40);
  ellipse(152,60,20,20);
}
void way() {                              //เป็นการสร้างฟังก์ชันขึ้นมาเอง จะตั้งชื่อว่าอะไรก็ได้ 
                                               แต่ต้องมี void  ....(){  }อยู่เสมอ 
                                               โดยใส่คำสั่งที่ต้องการเข้าไปใน { }
                                               ในทีนี้กำหนดให้เป็นฟังก์ชันที่วาด ทางรถไฟ
  strokeWeight(6);                    //เป็นคำสั่งที่กำหนดความหนาของเส้น กำหนดความหนาใน ( )
  line(95, 50, 30, 200);
  line(105, 50, 170, 200);
  strokeWeight(2);                   //เป็นคำสั่งที่กำหนดความหนาของเส้น กำหนดความหนาใน ( )
                                              //บรรทัดนี้กำหนดความหนาของเส้นเป็นให้เล็กลงเพราะ 
                                              ถ้าหากไม่มีบรรทัดนี้ เส้นของคำสั่งต่อๆไปก็จะมีความหนาเป็น 6
}
void railway() {                        //เป็นการสร้างฟังก์ชันขึ้นมาเอง จะตั้งชื่อว่าอะไรก็ได้ 
                                               แต่ต้องมี void  ....(){  }อยู่เสมอ 
                                               โดยใส่คำสั่งที่ต้องการเข้าไปใน { }
                                               ในทีนี้กำหนดให้เป็นฟังก์ชันที่วาด หมอนรองรางรถไฟ
                                               
  int x=95;
  int y=50;
  int s=10;
  int c=0;
  int n=8;
  fill(100);
  while (c<n) {              //while( ){} คือคำสั่งที่ใช่ในการวนลูป หรือทำงานซ้ำๆเมื่อเงื่อนไขเป็นจริง
                                           และเลิกทำเมื่อเงื่อนไขไม่เป็นจริง
                                           โดยกำหนดเงื่อนไขใน ( ) และกำหนดคำสั่งใน { }
                                           ในที่นี้เงื่อนไขคือ c<n
    rect(x, y, s, 5);
    x=x-9;                           //x=x-9 คือ x จะมีค่าลดลง9  ทุกๆครั้งที่มีการวนลูป
    y=y+20;                       //y=y+20 คือ y จะมีค่าเพิ่มขึ้น20  ทุกๆครั้งที่มีการวนลูป
    s=s+18;                        // s=s+18คือ s จะมีค่าเพิ่มขึ้น18  ทุกๆครั้งที่มีการวนลูป
    c=c+1;                         //c=c+1 คือ x จะมีค่าเพิ่มขึ้น1  ทุกๆครั้งที่มีการวนลูป
  }          
}
//เพิ่มเติม  ตรวจสอบเงื่อนไขที่ while ในที่นี้คือ c<n ว่าเป็นจริงหรือไม่ เนื่องจากเริ่มต้น c =0
จะได้ว่าเงื่อนไขเป็นจริง ให้ทำตามคำสั่งข้างใน คือ วาดสี่เหลี่ยม ,ค่าx ลดลง9,ค่าy เพิ่ม20,
ค่าsเพิ่มขึ้น18 และค่าcเพิ่มขึ้น1 ทุกๆครั้งที่มีการวนลูป และจะทำซ้ำอย่างนี้ไปเรื่อยๆจนเงื่อนไขเป็นเท็จ (c<n) จึงทำการออกจากลูปหรือหยุดการทำงาน
//ค่าxและyมีผลต่อตำแหน่งของสี่เหลี่ยม และค่าsมีผลต่อความกว้างของสี่เหลี่ยม

//อ้างอิงคำสั่งพื้นฐานต่างๆจากlab1 http://com5630043.blogspot.com/search/label/lab1
//อ้างอิงอธิบายฟังก์ชันจากlab2 http://com5630043.blogspot.com/search/label/lab2

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

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