ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

ตัวอย่างการใช้งานโมดูล Turtle 32 เรื่องสุ่มสีที่ใช้ในการวาด

ตัวอย่างการทำงานที่ 32 เรื่องสุ่มสีที่ใช้ในการวาด เริ่มต้นจากติดตั้งโมดูลก่อนจากนั้นให้เราเรียกใช้งานโมดูล Turtle กับ Random เพื่อสามารถที่จะลากเส้นหรือวาดรูปและสุ่มค่าที่จะแสดง ต่อมาสร้างหน้าจอพร้อมกับกำหนดคำสั่งในการใช้งานส่วนของหน้าจอเพื่อกำหนดสีพื้นหลังตามด้วย ตัวแปรที่กำหนดสีและเงื่อนไขในการวาดภาพ ส่วนคำสั่งการทำงานสามารถอ่านรายละเอียดการทำงานของโค้ดตัวอย่างภาษา python ได้ด้านล่างนี้เลยครับ

 

ติดตั้งโมดูล Turtle ด้วยระบบปฏิบัติการ Windows

pip install turtle 

 

Input

import turtle
import random

# สร้างหน้าพร้อมกับกำหนดคำสั่งที่ใช้ในการเข้าถึงพื้นหลังโดยมีการกำหนดสีพื้นหลัง
gui = turtle.Turtle()
turtle.Screen().bgcolor("black")
# สร้างตัวแปรที่ใช้ในการเก็บสี
colors = ["red","yellow","orange","pink"]
# กำหนดให้เส้นของส่วนแรกวาดเป็นสีขาว
gui.color("white")
# กำหนดเงื่อนไขในการวาดภาพ
for i in range(10):
    for i in range(2):
        # วาดเส้นไปด้านหน้า 100
        gui.forward(100)
        # เมื่อวาดเส้นไปด้านหน้าเสร็จทำมุม 60 องศาแล้วกำหนดให้หัวปากกาวาดไปขวา
        gui.right(60)
        gui.forward(100)
        gui.right(120)
    # ทำมุม 36 องศาพร้อมกับกำหนดหัวปากกาวาดไปทางขวา
    gui.right(36)
    # เริ่มต้นโดยการวาดเส้นที่เป็นสีขาวพร้อมกับสุ่มสีที่อยู่ในตัวแปร colors
    gui.color(random.choice(colors))
# แสดงผลลัพธ์ค้างไว้
turtle.done()

Output

เราสามารถเพิ่มสีลงไปได้ในตัวแปร colors ส่วนคำสั่ง random เป็นคำสั่งที่สามารถใช้ในการกำหนดค่าให้แสดงแบบสุ่ม
ผลลัพธ์ที่แสดนั้นเส้นที่วาดเป็นการสุ่มสีที่ใช้แสดง

 

คำสั่งในการทำงานเรื่องวาดเส้นวนจากด้านนอกมาด้านในเป็นภาพสี่เหลี่ยม เริ่มจากเรียกใช้งานโมดูล Turtle กับ Random เพื่อสามารถที่จะลากเส้นหรือวาดรูปและสุ่มค่าที่จะแสดง ต่อมาสร้างหน้าจอตามด้วยคำสั่งในการใช้งานหน้าจอโดยมีการกำหนดสีพื้นหลัง ถัดมาสร้างตัวแปรที่ใช้ในการเก็บสีโดยส่วนนี้จะนำไปใช้กับคำสั่ง random ส่วนคำสั่งภายใน loop for in จะมีการกำหนดจำนวนเส้นที่วาด ความยาวของเส้น ทิศทางและองศาแล้วในยังมีการลูปเพิ่มอีกชั้นเพื่อที่จะวาดสี่เหลี่ยมจัตุรัสให้ครบ 10 โดยที่แต่ละเส้นที่ใช่วาดสี่เหลี่ยมจัตุรัวจะมีการแบ่งส่วนที่จะวาดออกเป็น 2 ฝั่งรวมทั้งยังกำหนดตัวแปรที่ใช้สุ่มสีที่ใช้แสดงโดยไปดึงค่าจากตัวแปร colorsและสุดท้ายเปิดโชว์ภาพขึ้นมาแสดงสีของเส้นที่แสดงอยู่นั้นจะมีสีตามตัสแปร colors โดยบางทีที่เราสุ่มนั้นอาจจะไม่มีบางสีเพราะค่าที่ได้เกิดจากการสุ่ม

 

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : ตัวอย่างการใช้งานโมดูล Turtle 32 เรื่องสุ่มสีที่ใช้ในการวาด

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
มารู้จัก ฟังก์ชัน copy() ของตัวแปรชนิด set
โดย jirawoot พฤ 18 ก.ค. 2019 7:09 pm บอร์ด Python Knowledge
0
7
พฤ 18 ก.ค. 2019 7:09 pm โดย jirawoot
เปลี่ยนธีมสี Windows 10 ให้เป็นสีดำ (Dark Mode) สุดเท่กันเถอะ
โดย chatee supasand พฤ 18 ก.ค. 2019 6:42 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
5
พฤ 18 ก.ค. 2019 6:42 pm โดย chatee supasand
การ Reconcile คืออะไร - การกระทบยอด
โดย EyePornnipa พฤ 18 ก.ค. 2019 6:21 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
13
พฤ 18 ก.ค. 2019 6:21 pm โดย EyePornnipa
สรุปความเข้าใจ OpenERP -Purchase Requisitions
โดย chatee supasand พฤ 18 ก.ค. 2019 6:11 pm บอร์ด MT33 - นายชาตรี สุภาแสน
0
2
พฤ 18 ก.ค. 2019 6:11 pm โดย chatee supasand
ฟังก์ชัน array_chunk() - ใช้แบ่ง element ให้กลายเป็นหลาย array
โดย Patipat พฤ 18 ก.ค. 2019 5:58 pm บอร์ด PHP Knowledge
0
5
พฤ 18 ก.ค. 2019 5:58 pm โดย Patipat
มารู้จักกับ ฟังก์ชั่น built in ที่มีชื่อว่า getattr ของ python ไว้ใช้ ใช้แสดงค่าของ object
โดย jirawoot พฤ 18 ก.ค. 2019 4:45 pm บอร์ด Python Knowledge
0
12
พฤ 18 ก.ค. 2019 4:45 pm โดย jirawoot
VDO - แนะนำ Feature การใช้งาน โปรแกรมคำนวณภาษีมูลต่าเพิ่มหลังรวม VAT
โดย Patipat พฤ 18 ก.ค. 2019 4:21 pm บอร์ด M088 - ปฏิภัทร สารธรรม
4
19
พฤ 18 ก.ค. 2019 8:37 pm โดย mindphp
รู้จักกับ ฟังก์ชัน uksort() - ใช้เรียงตัวอักษรอาเรย์ตามที่เรากำหนด
โดย Patipat พฤ 18 ก.ค. 2019 3:42 pm บอร์ด PHP Knowledge
0
9
พฤ 18 ก.ค. 2019 3:42 pm โดย Patipat
เล่นเกม XO ในหน้าค้นหาของ google
โดย jamepiyawat พฤ 18 ก.ค. 2019 3:37 pm บอร์ด Share Knowledge
0
10
พฤ 18 ก.ค. 2019 3:37 pm โดย jamepiyawat
สอบถาม หน่อยครับ ผมจะเขียน python เพื่อเรียกใช้ web service
โดย jirawoot พฤ 18 ก.ค. 2019 3:14 pm บอร์ด Programming - C/C++ & java & Python
0
17
พฤ 18 ก.ค. 2019 3:14 pm โดย jirawoot
งานประจำวันที่ 18 กรกฎาคม 2562
โดย EyePornnipa พฤ 18 ก.ค. 2019 3:11 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
3
15
พฤ 18 ก.ค. 2019 7:45 pm โดย EyePornnipa
R - In Process ปรับข้อความบางส่วนในหน้า Leeds [2019-07][004]
โดย thatsawan พฤ 18 ก.ค. 2019 2:03 pm บอร์ด MD-CRM - Tester
3
10
พฤ 18 ก.ค. 2019 5:54 pm โดย thatsawan
B - แจ้งปัญหา ship to จากแอดมินเข้าระบบไปแก้ไข order [2019-07][005]
โดย tsukasaz พฤ 18 ก.ค. 2019 11:03 am บอร์ด Diageo - Web Ordering - Tester
1
3
พฤ 18 ก.ค. 2019 3:15 pm โดย tsukasaz
B - ลูกค้าสั่งของมาตรงรอบสั่งและเกินจำนวนขั้นต่ำ [2019-07][004]
โดย tsukasaz พฤ 18 ก.ค. 2019 11:01 am บอร์ด Diageo - Web Ordering - Tester
1
2
พฤ 18 ก.ค. 2019 3:15 pm โดย tsukasaz
สอบถามครับ-เรียกฐานข้อมูลมาแสดง เป็นภาษาไทยไม่ได้อะครับ ขึ้น error Ascii
โดย chatee supasand จ 15 ก.ค. 2019 4:17 pm บอร์ด Programming - C/C++ & java & Python
4
63
พฤ 18 ก.ค. 2019 2:36 pm โดย chatee supasand
งานประจำวันที่ 18 กรกฎาคม 2562
โดย Patipat พฤ 18 ก.ค. 2019 10:26 am บอร์ด M088 - ปฏิภัทร สารธรรม
2
13
พฤ 18 ก.ค. 2019 8:09 pm โดย Patipat
งานประจำวันที่ 18 กรกฏาคม 2562
โดย jamepiyawat พฤ 18 ก.ค. 2019 10:16 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
3
18
พฤ 18 ก.ค. 2019 8:35 pm โดย mindphp
งานประจำวันที่ 18 กรกฏาคม 2562
โดย chatee supasand พฤ 18 ก.ค. 2019 10:02 am บอร์ด MT33 - นายชาตรี สุภาแสน
3
12
พฤ 18 ก.ค. 2019 7:36 pm โดย chatee supasand
งานประจำวันที่ 18 กรกฎาคม 2562
โดย jirawoot พฤ 18 ก.ค. 2019 9:56 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
10
พฤ 18 ก.ค. 2019 3:20 pm โดย jirawoot
มี Extension ตัวไหน ดึงข้อมูลจากเว็บอื่นมาแสดงได้ครับ
โดย toonytoony2004 อ 16 ก.ค. 2019 12:55 pm บอร์ด Joomla Development
0
66
อ 16 ก.ค. 2019 12:55 pm โดย toonytoony2004