10.ภูเขาดวงอาทิตย์

from turtle import *  # นำเข้าโมดูล turtle เพื่อใช้สำหรับการวาดรูปกราฟิก
def mountain(x,y,s):  # กำหนดฟังก์ชัน mountain ที่รับพารามิเตอร์ x, y, และ s เพื่อวาดภูเขา
    pu()  # ยกปากกาขึ้น (ไม่วาดขณะเคลื่อนที่)
    goto(x,y)  # เคลื่อนที่ไปยังตำแหน่ง (x, y) ที่กำหนด
    pd()  # วางปากกาลง (เริ่มวาดขณะเคลื่อนที่)
    color('green')  # ตั้งค่าสีของปากกาและการเติมเป็นสีเขียว
    begin_fill()  # เริ่มการเติมสีภายในรูปทรง
    for i in range(3):  # เริ่มลูปเพื่อวาดรูปสามเหลี่ยม (ลูป 3 ครั้งสำหรับ 3 ด้านของสามเหลี่ยม)
        fd(100*s)  # เคลื่อนที่ไปข้างหน้าตามระยะทาง 100 หน่วย คูณด้วยสเกล s
        lt(120)  # หมุนกระดองเต่าไปทางซ้าย 120 องศา เพื่อสร้างมุมของสามเหลี่ยม
    end_fill()  # สิ้นสุดการเติมสีภายในรูปทรง
    
def sun(x,y,s):  # กำหนดฟังก์ชัน sun ที่รับพารามิเตอร์ x, y, และ s เพื่อวาดดวงอาทิตย์
    pu()  # ยกปากกาขึ้น (ไม่วาดขณะเคลื่อนที่)
    goto(x,y)  # เคลื่อนที่ไปยังตำแหน่ง (x, y) ที่กำหนด
    pd()  # วางปากกาลง (เริ่มวาดขณะเคลื่อนที่)
    color('red')  # ตั้งค่าสีของปากกาและการเติมเป็นสีแดง
    begin_fill()  # เริ่มการเติมสีภายในรูปทรง
    circle(s*20)  # วาดวงกลมโดยมีรัศมีเป็น 20 หน่วย คูณด้วยสเกล s
    end_fill()  # สิ้นสุดการเติมสีภายในรูปทรง
mountain(-400,-200,4)  # เรียกใช้ฟังก์ชัน mountain เพื่อวาดภูเขาแรกที่ตำแหน่ง (-400, -200) ด้วยสเกล 4
mountain(-200,-200,5)  # เรียกใช้ฟังก์ชัน mountain เพื่อวาดภูเขาที่สองที่ตำแหน่ง (-200, -200) ด้วยสเกล 5
mountain(100,-200,3)  # เรียกใช้ฟังก์ชัน mountain เพื่อวาดภูเขาที่สามที่ตำแหน่ง (100, -200) ด้วยสเกล 3
sun(-100,250,3)  # เรียกใช้ฟังก์ชัน sun เพื่อวาดดวงอาทิตย์ที่ตำแหน่ง (-100, 250) ด้วยสเกล 3
mainloop()  # เริ่มลูปหลักเพื่อรักษาหน้าจอให้แสดงผลจนกว่าผู้ใช้จะปิดหน้าจอ

Last updated