วันพฤหัสบดีที่ 18 กรกฎาคม พ.ศ. 2556

Mobile hanging





CODE
void setup(){
  size(235,250);
  background(0);
}
void draw(){
  drawMobile();
}
void drawMobile(){
  int x = 50;
  int y = 70;
  int x1 = 50;
  int x2 = 90;
  int w = 5;
  int spacex = 5;
  int spacey = 8;
  int n = 10;
  int n1 = 0;
  strokeWeight(5);
  stroke(250);
  line(width/2,0,width/2,52);
  while(n1<n){        //เมื่อตัวแปร n1<n เป็นจริงจะทำให้แสดงรูปสี่เหลี่ยม และทำซ้ำไปจนกว่า n1<n เป็นเท็จ
    strokeWeight(8);
         //blue
    stroke(35,215,245);
    line(x+39,y-12,x1+125,y-12);           //ตำแหน่งเส้นด้านบน เปลี่ยนตำแหน่งตามค่าตัวแปร x,y,x1,y
    line(x2,y+80,x2+15,y+80);           //ตำแหน่งเส้นด้านล่าง เปลี่ยนตำแหน่งตามค่าตัวแปร x2,y
          //green
    stroke(93,245,35);
    line(x+26,y-8,x+(x1/4)+41,y-8);           //ตำแหน่งเส้นด้านบน เปลี่ยนตำแหน่งตามค่าตัวแปร x,y
    line(x2+13,y+77,x2+(x/10)+28,y+77);           //ตำแหน่งเส้นด้านล่าง เปลี่ยนตำแหน่งตามค่าตัวแปร x2,y
         //yellow
    stroke(252,245,105);
    line(x+13,y-4,x+(x1/10)+28,y-4);           //ตำแหน่งเส้นด้านบน เปลี่ยนตำแหน่งตามค่าตัวแปร x,y,x1
    line(x2+26,y+74,x2+(x/4)+41,y+74);           //ตำแหน่งเส้นด้านล่าง เปลี่ยนตำแหน่งตามค่าตัวแปร x2,y,x
         //orange
    stroke(247,136,50);
    line(x,y,x+15,y);           //ตำแหน่งเส้นด้านบน เปลี่ยนตำแหน่งตามค่าตัวแปร x,y
    line(x2+39,y+71,x+92,y+71);           //ตำแหน่งเส้นด้านล่าง เปลี่ยนตำแหน่งตามค่าตัวแปร x2,y,x
    x1 = x1 - w;          //ช่วยให้เกิดระยะห่างในแนวนอน แต่ละครั้งของการทำซ้ำ
    x2 = x2 - w;          //ช่วยให้เกิดระยะห่างในแนวนอน แต่ละครั้งของการทำซ้ำ
    x = x + spacex;          //ช่วยให้เกิดระยะห่างในแนวนอน แต่ละครั้งของการทำซ้ำ
    y = y + spacey;          //ช่วยให้เกิดระยะห่างในแนวตั้ง แต่ละครั้งของการทำซ้ำ
    n1 = n1 + 1;           //เป็นการเพิ่มค่าของตัวแปร n1 ช่วยทำให้เกิดการทำซ้ำจนกว่าจะเป็นเท็จ
  }
}
    
ภาพต้นแบบ
จากโค้ด      ค่า n1 = 0 และ n = 10 เมื่อ while(n1<n){} จะทำให้เกิดเส้นสีต่างๆครั้งแรกและเกิดการทำซ้ำ 9 ครั้ง(เนื่องจาก n น้อยกว่า 10) รวมทั้งหมดจะมีเส้นสีต่างๆ สีละ 10 เส้น ซึ่งจะเริ่มทำตั้งแต่ 0 ถึง 9  
ตัวอย่าง ถ้าเปลี่ยนค่า n = 5 จะทำให้เกิดเส้นสีต่างๆด้านบนและล่าง ด้านละ 5 เส้น ดังรูป



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

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