<< Go Back

ไพทอนมีโมดูล turtle ซึ่งมีต้นฉบับมาจากภาษา Logo โดยจะมีในโปรแกรม Python เวอร์ชั่น Python 2.6 และ Python 3 เป็นต้นมา สำหรับใช้ฝึกเขียนโปรแกรมขั้นเริ่มต้น โดยใช้เต่าในการลากเส้นหรือวาดรูป ในที่นี้จะแนะนำให้ใช้โหมดสคริปต์

ตัวอย่าง ให้ทดลองเขียนคำสั่งดังต่อไปนี้

เมื่อรันโปรแกรม จะได้ผลลัพธ์คือ

บรรทัดบนสุดของโค้ดคำสั่ง จะต้องใช้คำสั่ง from turtle import * เพื่อเรียกใช้ตัวแปร ฟังก์ชัน หรือเมธอดทั้งหมดจากโมดูล turtle เพื่อใช้ในการวาดภาพได้

1. forward() / fd() ลากเส้นตรงไปข้างหน้ามีหน่วยเป็นพิกเซล โดยภายในวงเล็บใส่ตัวเลขที่เป็นชนิด integer หรือ float เช่น
forward(100) เต่าจะเดินหน้า 100 พิกเซล
forward(-100) เต่าจะเดินหน้า -100 พิกเซล หรือถอยหลัง 100 พิกเซลนั่นเอง (ทิศตรงข้าม)

2. back() / bk() / backward() ลากเส้นตรงไปข้างหลัง มีหน่วยเป็นพิกเซล เช่น
backward(100) เต่าจะเดินถอยหลัง 100 พิกเซล
backward(-100) เต่าจะเดินถอยหลัง -100 พิกเซล หรือเดินหน้า 100 พิกเซลนั่นเอง (ทิศตรงข้าม)

       


3. right() / rt() หันไปทางขวา ทำมุมตามองศาที่กำหนดจากมุมเดิม เช่น right(90) หันหัวเต่าไปทางขวา 90 องศาจากมุมเดิม

4. left() / lt() หันไปทางซ้าย ทำมุมตามองศาที่กำหนดจากมุมเดิม เช่น left(90) หันหัวเต่าไปทางซ้าย 90 องศาจากมุมเดิม

       


5. goto(x, y) / setpos(x, y) / setposition(x, y) ย้ายเต่าไปยังตำแหน่งที่แน่นอน โดยไม่เปลี่ยนทิศทางของเต่า ตัวอย่างเช่น

6. setx() ตั้งค่าพิกัดในแกน x ของเต่า โดยที่พิกัดในแกน y ไม่มีการเปลี่ยนแปลง

7. sety() ตั้งค่าพิกัดในแกน y ของเต่า โดยที่พิกัดในแกน x ไม่มีการเปลี่ยนแปลง

       


8. setheading() / seth() กำหนดหัวเต่าให้หันไปตามทิศที่ต้องการ ในวงเล็บให้ใส่ตัวเลของศาเข้าไป โดย 0 คือทิศตะวันออก, 90 คือ ทิศเหนือ, 180 คือ ทิศตะวันตก และ 270 คือ ทิศใต้

       

9. home() ย้ายเต่าไปยังจุดเริ่มต้น นั่นก็คือ พิกัด (0,0) และตั้งค่าหัวเต่าไว้ที่ทิศทางเริ่มต้น นั่นคือ 0 องศา หรือชี้ไปทางขวา

10. circle(รัศมี, องศา, จำนวนเหลี่ยม) ใช้วาดรูปวงกลม 
- circle(รัศมี) ใช้วาดรูปวงกลม เช่น circle(50) จะได้วงกลมที่มีรัศมีเท่ากับ 50
- circle(รัศมี, องศา) ใช้วาดรูปวงกลมไม่ครบวง ตามองศาที่กำหนด เช่น circle(50,180) จะได้ครึ่งวงกลมที่มีรัศมีเท่ากับ 50
- circle(รัศมี, องศา, จำนวนเหลี่ยม) ใช้วาดรูปหลายเหลี่ยม เช่น circle(100,360,5) จะได้วงกลมที่มีห้าเหลี่ยม

       


       

11. dot(ขนาดเส้นผ่านศูนย์กลาง, "สี") ใช้วาดจุดวงกลม โดยระบุเส้นผ่านศูนย์กลางและสี  

       

 

12. stamp() ปั๊มตัวเต่าให้อยู่ในตำแหน่งที่กำหนด เช่น เมื่อเดินเต่าเดินหน้าไป 100 พิกเซล ให้ทำการปั๊มรูปเต่าไว้ตำแหน่งนั้น ตัวอย่างเช่น

13. clearstamp() ลบตัวเต่าที่เราทำการปั๊มเอาไว้

       

       


14. undo() ยกเลิก (ซ้ำๆ) การกระทำของเต่าครั้งล่าสุด

15. speed() ใส่ความเร็วในการเดินของตัวเต่า มีค่าตั้งแต่ 0 - 10 โดย 0 = เร็วที่สุด, 10 = เร็ว, 6 = ปกติ, 3 = ช้า, 1= ช้าที่สุด เช่น speed(3)

1. position() / pos() ส่งกลับค่าตำแหน่งปัจจุบันของเต่า (x, y)
2. towards(x, y) ส่งกลับค่ามุมระหว่างเส้นจากตำแหน่งเต่าไปยังตำแหน่งที่ระบุ


3. xcor() ส่งกลับค่าพิกัดแกน x ของตัวเต่า
4. ycor() ส่งกลับค่าพิกัดแกน y ของตัวเต่า
5. heading() ส่งกลับค่าองศาของหัวเต่า
6. distance(x, y) ส่งกลับค่าระยะทางจากเต่าไปยังตำแหน่ง (x, y) ที่อ้างอิง

1. pendown() / pd() / down() เป็นคำสั่งวางปากกา
2. penup() / pu() / up() เป็นคำสั่งยกปากกา
3. pensize() เป็นคำสั่งสำหรับใช้กำหนดขนาดตัวเต่าและขนาดของเส้นเป็นหน่วยเป็นพิกเซล เช่น pensize(3)
4. pen() ตั้งค่าแอตทริบิวต์หลายๆ อย่างของปากกาในคำสั่งเดียว ซึ่งมีค่าดังต่อไปนี้ :
shown แสดงหรือซ่อนปากกา มี 2 ค่า คือ True/False
pendown วางปากกา มี 2 ค่า คือ True/False
pencolor ใส่สีปากกา โดยระบุชื่อสีลงไป เช่น pencolor = "red"
fillcolor เติมสีวัตถุแบบปิด โดยระบุชื่อสีลงไป เช่น fillcolor = "red"
pensize ใส่ขนาดปากกา
speed ใส่ความเร็วในการวาดของปากกา มีค่าตั้งแต่ 0 - 10
5. isdown() ส่งกลับค่า True ถ้าสถานะเป็นวางปากกา และส่งกลับค่า False ถ้าสถานะเป็นยกปากกา

1. pencolor() ส่งกลับค่าหรือตั้งค่าสีปากกา โดยมี 3 รูปแบบ คือ
- pencolor()  ส่งกลับค่า pencolor ปัจจุบัน ส่งค่ากลับมาเป็นสตริงระบุสี
- pencolor(ชื่อสี) ตั้งค่า pencolor เป็น colorstring เช่น "red", "yellow" หรือ "# 33cc8c"
- pencolor(r, g, b) ตั้งค่า pencolor เป็นสี RGB โดยแต่ละ R, G และ B ต้องอยู่ในช่วง 1.0 - 255
2. fillcolor() ส่งกลับค่าหรือตั้งค่าการเติมสี โดยมี 3 รูปแบบ คือ
- fillcolor()  ส่งกลับค่า fillcolor ปัจจุบัน ส่งค่ากลับมาเป็นสตริงระบุสี
- fillcolor(ชื่อสี) ตั้งค่า fillcolor เป็น colorstring เช่น "red", "yellow" หรือ "# 33cc8c"
- fillcolor(r, g, b) ตั้งค่า fillcolor เป็นสี RGB โดยแต่ละ R, G และ B ต้องอยู่ในช่วง 1.0 - 255
3. color() เป็นคำสั่งกำหนดสีให้กับเส้น (ชื่อสีในภาษาอังกฤษ) เช่น color("yellow") ตัวอย่างเช่น


1. begin_fill() กำหนดจุดเริ่มต้นในการเติมสี โดยจะต้องใส่คำสั่งนี้ก่อนคำสั่งวาดรูปทรง
2. end_fill() เติมสีรูปทรง โดยจะต้องใส่คำสั่งนี้หลังคำสั่ง begin_fill()

        


1. reset() เป็นคำสั่งที่ใช้ลบภาพวาดของเต่าออกจากหน้าจอ ปรับตำแหน่งตัวเต่ามาอยู่ตรงกลางหน้าจออีกครั้ง และตั้งค่าตัวแปรให้เป็นค่าเริ่มต้น

2. clear() เป็นคำสั่งที่ใช้ลบภาพวาดของเต่าออกจากหน้าจอ แต่ตำแหน่งของเต่าและภาพวาดของเต่าอื่น ๆ จะไม่ได้รับผลกระทบ
3. write(arg, move, align, font) ใช้เขียนข้อความ เช่น write("Python", True, align = "left", font = ("Arial", 8, "normal"))
- arg      การแทนสตริงของอาร์กิวเมนต์ เช่น "Python"
- move   หากเป็น True ปากกาจะถูกย้ายไปที่มุมล่างขวาของข้อความ โดยค่าเริ่มต้นย้ายเป็น False
- align    การจัดตำแหน่งข้อความ ได้แก่ "left", "center" และ "right" เช่น align = "left"
- font     กำหนดรูปแบบตัวอักษร ได้แก่ fontname, fontsize, fonttype เช่น font = ("Arial", 8, "normal")

1. hideturtle() / ht() คำสั่งในการซ่อนเต่าไม่ให้มองเห็นตัวเต่า เมื่ออยู่ในระหว่างการทำภาพวาดที่ซับซ้อนบางส่วน เพราะการซ่อนเต่าจะช่วยให้การวาดภาพสามารถสังเกตได้ง่ายขึ้น
2. showturtle() / st() คำสั่งในการแสดงเต่า
3. isvisible() ส่งกลับค่า True ถ้าอยู่ในสถานะแสดงตัวเต่า ส่งกลับค่า False ถ้าอยู่ในสถานะซ่อนตัวเต่า

4. shape() เป็นการระบุรูปร่างของตัวเต่า โดยระบุรูปร่างเป็นสตริงอยู่ภายในวงเล็บ () ได้แก่ "arrow", "turtle", "circle", "square", "triangle", "classic" ลงไป เช่น shape("circle") หรือ shape("square") หากต้องการเปลี่ยนกลับเป็นรูปลูกศรให้ใช้ shape("classic")
5. shapesize(กว้าง, ยาว) / turtlesize(กว้าง, ยาว) กำหนดขนาดรูปร่าง

       

6. tilt(angle) หมุนรูปร่างของเต่าให้เอียงจากมุมของรูปร่างเดิมของเต่า แต่ไม่เปลี่ยนทิศทางของหัวเต่า

       


1. onclick() กำหนดเหตุการณ์เมื่อมีการคลิกเมาส์ที่ตัวเต่า โดยมีการส่งค่าพิกัด x, y ของจุดที่คลิกบนตัวเต่า เช่น เมื่อคลิกที่ตัวเต่าให้โปรแกรมเรียกฟังก์ชัน rectangle

     

2. onrelease() กำหนดเหตุการณ์เมื่อมีการปล่อยเมาส์ที่ตัวเต่า 

เมื่อคลิกเมาส์ที่ตัวเต่า เมื่อปล่อยเมาส์

3. ondrag() กำหนดเหตุการณ์เมื่อมีการคลิกค้างที่ตัวเต่าแล้วลาก ตัวอย่างเช่น คำสั่ง  ondrag(goto) เมื่อคลิกค้างที่เต่าแล้วลาก จะเป็นการวาดเส้นตามตำแหน่งของเต่าที่เคลื่อนที่ไป

      


1. bgcolor() เป็นคำสั่งกำหนดสีภาพพื้นหลัง (ชื่อสีในภาษาอังกฤษ) เช่น bgcolor("orange")

2. clear() / clearscreen() ลบภาพวาดทั้งหมดและเต่าทั้งหมดออกจากหน้าจอ รีเซ็ตหน้าจอให้มีสถานะเริ่มต้น คือ พื้นหลังสีขาว
3. reset() / resetscreen() รีเซ็ตเต่าทั้งหมดบนหน้าจอให้อยู่ในสถานะเริ่มต้น
4. screensize() เป็นคำสั่งกำหนดขนาดให้กับหน้าต่าง มีหน่วยเป็นพิกเซล เช่น screensize(2000,1500)
5. title() เป็นคำสั่งกำหนดหัวข้อ title ของหน้าต่าง เช่น title("Rectangle")
6. mainloop() เป็นคำสั่งลูปค้างหน้าจอไว้สำหรับรอวาดรูปต่อ

ตัวอย่างที่ 1

     

ตัวอย่างที่ 2

         

<< Go Back