วาดรูปด้วยภาษาโลโก้ : ตอนที่ 13 – หมุนหมุน
ในตอนนี้เราจะมาเรียนรู้เทคนิคการวาดรูปแบบหนึ่ง นั่นคือ การหมุน โดยเราจะวาดรูปเรขาคณิตพื้นฐาน จากนั้นหมุนเต่าโลโก้ แล้ววาดรูปนั้นอีกครั้ง ทำเช่นนี้ไปเรื่อยๆ เราจะได้รูปภาพใหม่ที่น่าสนใจครับ
คำสั่งที่น้องๆ จะเจอในบทนี้
คำสั่ง | ความสามารถ | ตัวอย่าง |
fd ระยะทาง bk ระยะทาง |
forward = เดินหน้า backward = ถอยหลัง |
fd 100 = เดินหน้า 100 pixel bk 50 = ถอยหลัง 50 pixel |
rt องศา lt องศา |
right turn = หมุนขวา left turn = หมุนซ้าย |
rt 90 = หมุนไปทางขวา 90 องศา lt 45 = หมุนไปทางซ้าย 45 องศา |
repeat จำนวนครั้ง [ คำสั่ง ] | repeat = ทำคำสั่งต่อไปนี้ ซ้ำ n ครั้ง | repeat 3 [ fd 100 rt 120 ] repeat 4 [ fd 100 rt 90 ] repeat 6 [ fd 100 rt 60 ] |
TO ชื่อฟังก์ชัน :ตัวแปร คำสั่ง END |
function = สร้างชุดคำสั่ง | TO square :size repeat 4 [ fd :size rt 90 ] END |
cs clean |
clear screen = ล้างหน้าจอ clean = ล้างหน้าจอ |
|
pu pd |
pen up = ยกปากกา pen down = วางปากกา |
|
ht st |
hide turtle = ซ่อนเต่าโลโก้ show turtle = แสดงเต่าโลโก้ |
|
setxy พิกัดx พิกัดy | set (x,y) = กำหนดตำแหน่งเต่าโลโก้ | setxy 200 100 |
setpensize ขนาด setpencolor รหัสสี fill setscreencolor รหัสสี |
set pen size = กำหนดขนาดปากกา set pen color = กำหนดสีปากกา fill = ระบายสี set screen color = กำหนดสีพื้นหลัง |
setpensize 5 setpencolor 10 fill setscreencolor 10 |
เริ่มต้นด้วยการหมุนเส้นตรงรูปแบบต่างๆ เราจะได้รูปดอกไม้ไฟที่น่าสนใจครับ
โปรแกรมที่ 13-1
TO setup cs ht setscreencolor “#212121 setpencolor “#EF9A9A setpensize 5 END TO line_1 setup |
อธิบายการทำงานของโปรแกรม
- ฟังก์ชัน setup ใช้สำหรับกำหนดสีของพื้นหลัง สีของปากกา และขนาดของปากกา
- ฟังก์ชัน line_1 ใช้สำหรับวาดเส้นตรง
- repeat 18 [ line_1 rt 20 ] คือ การวาดเส้น แล้วหมุนขวา 20 องศา ทำแบบนี้ทั้งหมด 18 ครั้ง
โปรแกรมที่ 13-2
TO setup cs ht setscreencolor “#212121 setpencolor “#CE93D8 setpensize 5 END TO line_2 setup |
อธิบายการทำงานของโปรแกรม
- ฟังก์ชัน setup ใช้สำหรับกำหนดสีของพื้นหลัง สีของปากกา และขนาดของปากกา
- ฟังก์ชัน line_2 ใช้สำหรับวาดเส้นตรง
- repeat 36 [ line_2 rt 10 ] คือ การวาดเส้น แล้วหมุนขวา 10 องศา ทำแบบนี้ทั้งหมด 36 ครั้ง
โปรแกรมที่ 13-3
TO setup cs ht setscreencolor “#212121 setpencolor “#9FA8DA setpensize 5 END TO line_3 setup |
อธิบายการทำงานของโปรแกรม
- ฟังก์ชัน setup ใช้สำหรับกำหนดสีของพื้นหลัง สีของปากกา และขนาดของปากกา
- ฟังก์ชัน line_3 ใช้สำหรับวาดเส้นตรง
- repeat 72 [ line_3 rt 5 ] คือ การวาดเส้น แล้วหมุนขวา 5 องศา ทำแบบนี้ทั้งหมด 72 ครั้ง
ถ้าเราสังเกตคำสั่งดังต่อไปนี้ให้ดี
- repeat 18 [ line_1 rt 20 ]
- repeat 36 [ line_2 rt 10 ]
- repeat 72 [ line_3 rt 5 ]
เราจะพบว่าการหมุนให้ครบ 1 รอบ มีหลักการง่ายๆ คือ จำนวนครั้ง x องศาที่หมุน = 360 องศา
- 18 x 20 = 360
- 36 x 10 = 360
- 72 x 5 = 360
จากนั้นเรามาลองหมุนภาพเรขาคณิต เราจะได้รูปทรงที่น่าสนใจครับ
โปรแกรมที่ 13-5
TO setup cs ht setscreencolor “#F5F5F5 setpencolor “#009688 setpensize 5 END TO square setup |
อธิบายการทำงานของโปรแกรม
- ฟังก์ชัน setup ใช้สำหรับกำหนดสีของพื้นหลัง สีของปากกา และขนาดของปากกา
- ฟังก์ชัน square ใช้สำหรับวาดสี่เหลี่ยมจัตุรัส
- repeat 18 [ square rt 20 ] คือ วาดสี่เหลี่ยมจัตุรัส แล้วหมุนขวา 20 องศา ทำแบบนี้ทั้งหมด 18 ครั้ง
โปรแกรมที่ 13-6
TO setup cs ht setscreencolor “#F5F5F5 setpencolor “#8BC34A setpensize 5 END TO hexagon setup |
อธิบายการทำงานของโปรแกรม
- ฟังก์ชัน setup ใช้สำหรับกำหนดสีของพื้นหลัง สีของปากกา และขนาดของปากกา
- ฟังก์ชัน hexagon ใช้สำหรับวาดหกเหลี่ยม
- repeat 18 [ hexagon rt 20 ] คือ วาดหกเหลี่ยม แล้วหมุนขวา 20 องศา ทำแบบนี้ทั้งหมด 18 ครั้ง
โปรแกรมที่ 13-7
TO setup cs ht setscreencolor “#F5F5F5 setpencolor “#FFEB3B setpensize 5 END TO octagon setup |
อธิบายการทำงานของโปรแกรม
- ฟังก์ชัน setup ใช้สำหรับกำหนดสีของพื้นหลัง สีของปากกา และขนาดของปากกา
- ฟังก์ชัน octagon ใช้สำหรับวาดแปดเหลี่ยม
- repeat 18 [ octagon rt 20 ] คือ วาดแปดเหลี่ยม แล้วหมุนขวา 20 องศา ทำแบบนี้ทั้งหมด 18 ครั้ง
โปรแกรมที่ 13-8
TO setup cs ht setscreencolor “#F5F5F5 setpencolor “#FF9800 setpensize 5 END TO polygon setup |
อธิบายการทำงานของโปรแกรม
- ฟังก์ชัน setup ใช้สำหรับกำหนดสีของพื้นหลัง สีของปากกา และขนาดของปากกา
- ฟังก์ชัน polygon ใช้สำหรับวาดสิบสองเหลี่ยม
- repeat 18 [ polygon rt 20 ] คือ วาดสิบสองเหลี่ยม แล้วหมุนขวา 20 องศา ทำแบบนี้ทั้งหมด 18 ครั้ง
โปรแกรมที่ 13-9
TO setup cs ht setscreencolor “#F5F5F5 setpencolor “#795548 setpensize 5 END TO circle setup |
อธิบายการทำงานของโปรแกรม
- ฟังก์ชัน setup ใช้สำหรับกำหนดสีของพื้นหลัง สีของปากกา และขนาดของปากกา
- ฟังก์ชัน circle ใช้สำหรับวาดวงกลม
- repeat 18 [ circle rt 20 ] คือ วาดวงกลม แล้วหมุนขวา 20 องศา ทำแบบนี้ทั้งหมด 18 ครั้ง
และนี่คือเรื่องราวของเทคนิคการวาดรูปจากหมุนที่นำมาฝากกันในวันนี้ครับ สามารถติดตามตอนต่อไปได้ที่นี่ครับ https://karnlab.com/tag/ภาษาโลโก้