Hướng dẫn turtle animation python - con rùa hoạt hình trăn

"Turtle" là một tính năng của Python giống như một bảng vẽ, cho phép chúng ta ra lệnh cho một con rùa vẽ tất cả trên đó! Chúng ta có thể sử dụng các hàm để có thể di chuyển rùa xung quanh. Turtle còn được gọi là ngôn ngữ Lập trình biểu trưng, lệnh cho chuyển động và vẽ đồ họa đường hoặc vector được tạo ra, trên màn hình hoặc với một robot nhỏ được gọi là con rùa., lệnh cho chuyển động và vẽ đồ họa đường hoặc vector được tạo ra, trên màn hình hoặc với một robot nhỏ được gọi là con rùa.

Các phương thức được sử dụng trong ví dụ:

  • Screen(): Phương thức này để tạo màn hình hiển thị Phương thức này để tạo màn hình hiển thị
  • Turtle(): Phương thức này được sử dụng để tạo đối tượng rùa. Phương thức này được sử dụng để tạo đối tượng rùa.
  • onscreenclick(tên_hàm, 1): Hàm này sẽ gửi tọa độ hiện tại đến hàm được sử dụng để tạo thành hình tam giác, 1 là cho nhấp chuột trái và 3 là cho nhấp chuột phải Hàm này sẽ gửi tọa độ hiện tại đến hàm được sử dụng để tạo thành hình tam giác, 1 là cho nhấp chuột trái và 3 là cho nhấp chuột phải
  • speed(): Hàm này được sử dụng để tăng hoặc giảm tốc độ của con rùa. Hàm này được sử dụng để tăng hoặc giảm tốc độ của con rùa.
  • listen(): Hàm này cho phép máy chủ lắng nghe các kết nối đến. Hàm này cho phép máy chủ lắng nghe các kết nối đến.
  • done(): Hàm này được sử dụng để giữ màn hình.   Hàm này được sử dụng để giữ màn hình.  
  • penup(): Hàm này được tích hợp sẵn trong thư viện turtle để nhấc rùa lên không cho vẽ. Hàm này được tích hợp sẵn trong thư viện turtle để nhấc rùa lên không cho vẽ.
  • pendown(): Hàm này được tích hợp sẵn trong thư viện turtle để đặt rùa xuống để vẽ. Hàm này được tích hợp sẵn trong thư viện turtle để đặt rùa xuống để vẽ.
  • forward(): Hàm này được tích hợp sẵn trong thư viện turtle để di chuyển hướng về phía trước của rùa, nó lấy đơn vị pixel làm đối số Hàm này được tích hợp sẵn trong thư viện turtle để di chuyển hướng về phía trước của rùa, nó lấy đơn vị pixel làm đối số
  • left(): Hàm này được tích hợp sẵn trong thư viện turtle để xoay rùa sang trái, nó lấy góc theo độ làm đối số. Hàm này được tích hợp sẵn trong thư viện turtle để xoay rùa sang trái, nó lấy góc theo độ làm đối số.

Dưới đây là video hướng dẫn:

Dưới đây là đoạn code thực thi:

import turtleturtle

# Phương thức Screen() để tạo màn hìnhwn = turtle.Screen()
wn = turtle.Screen()

# Tạo một bút vẽ (bản chất là đối tượng rùa)pen = turtle.Turtle()
pen = turtle.Turtle()

# định nghĩa hàm để vẽ tam giácdef triangle(x, y):  # nhấc bút lên  pen.penup()
def triangle(x, y):
  # nhấc bút lên
  pen.penup()

  # di chuyển tới vị trí x và y tương ứng  pen.goto(x, y)# di chuyển tới vị trí x và y tương ứng
  pen.goto(x, y)

  # đặt bút xuống  pen.pendown()  # dùng vòng lặp for vẽ 3 cạnh tam giác  for i in range(3):    # vẽ đoạn thẳng dài 100    pen.forward(100)# đặt bút xuống
  pen.pendown()
  # dùng vòng lặp for vẽ 3 cạnh tam giác
  for i in range(3):
    # vẽ đoạn thẳng dài 100
    pen.forward(100)

    # xoay trái 120 độ    pen.left(120)# xoay trái 120 độ
    pen.left(120)

    # vẽ tiếp đoạn thẳng 100    pen.forward(100)# vẽ tiếp đoạn thẳng 100
    pen.forward(100)

# khi nhấn chuột vào màn hình thì sẽ gọi# hàm triangle() được xây dựng ở trên# để vẽ tam giácturtle.onscreenclick(triangle, 1)
# hàm triangle() được xây dựng ở trên
# để vẽ tam giác
turtle.onscreenclick(triangle, 1)

# lắng nghe xem có nhấn chuột vô# màn hình khôngturtle.listen()
# màn hình không
turtle.listen()

# giữ màn hìnhturtle.done()
turtle.done()

Kết quả:

Hướng dẫn turtle animation python - con rùa hoạt hình trăn

size = int(input("Mời nhập kich thước cạnh ngôi sao: "))Kiến thức cơ bản về Turtle trong Python

col = input("Mời nhập màu cho ngôi sao (nếu là mã màu thì có dạng #RRGGBB): ") là một mô-đun có sẵn trong Python. Nó cung cấp khả năng vẽ bằng cách sử dụng màn hình làm nơi để vẽ và con rùa làm bút vẽ. Để vẽ thứ gì đó trên màn hình, chúng ta cần di chuyển con rùa. Để di chuyển rùa ta có các hàm như forward()backward(), v.v.

Để tô màu vào các hình do rùa vẽ thì module turtle cung cấp ba hàm sau:

fillcolor(): Hàm này giúp chọn màu tô cho hình dạng. Nó nhận tham số đầu vào là tên màu hoặc giá trị hex (hệ 16) của màu. Tên màu được thể hiện bằng tiếng Anh.Giá trị hex của màu là một chuỗi (bắt đầu bằng '#') gồm các số thập lục phân, tức là #RRGGBB. R, G và B là các số thập lục phân (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F).: Hàm này giúp chọn màu tô cho hình dạng. Nó nhận tham số đầu vào là tên màu hoặc giá trị hex (hệ 16) của màu. Tên màu được thể hiện bằng tiếng Anh.
Giá trị hex của màu là một chuỗi (bắt đầu bằng '#') gồm các số thập lục phân, tức là #RRGGBB. R, G và B là các số thập lục phân (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F).

begin_fill(): Hàm này cho rùa biết rằng tất cả các đối tượng đồ họa đã đóng sắp tới cần được tô bằng màu đã chọn ở hàm fillcolor().: Hàm này cho rùa biết rằng tất cả các đối tượng đồ họa đã đóng sắp tới cần được tô bằng màu đã chọn ở hàm fillcolor().

end_fill(): hàm này thông báo cho rùa dừng việc lấp đầy các đối tượng đồ họa đã đóng sắp tới.: hàm này thông báo cho rùa dừng việc lấp đầy các đối tượng đồ họa đã đóng sắp tới.

Vẽ và tô màu hình vuông:

Video hướng dẫn:

Code hướng dẫn:

import turtle as penturtle as pen

size = int(input("Mời nhập độ dài cạnh hình vuông: "))int(input("Mời nhập độ dài cạnh hình vuông: "))

col = input("Mời nhập màu cho hình vuông (nếu là mã màu thì có dạng #RRGGBB): ")input("Mời nhập màu cho hình vuông (nếu là mã màu thì có dạng #RRGGBB): ")

# thiết lập màu tôpen.fillcolor(col)
pen.fillcolor(col)

# bắt đầu tô màupen.begin_fill()
pen.begin_fill()

# vẽ hình vuông kích thước sizefor _ in range(4):  pen.forward(size)  pen.right(90)
for _ in range(4):
  pen.forward(size)
  pen.right(90)

# kết thúc tô màupen.end_fill()
pen.end_fill()

Nếu ta nhập vào cạnh có kích thước 200 và màu là red thì kết quả sẽ như thế này:

Vẽ và tô màu ngôi sao:

Video hướng dẫn:

Code hướng dẫn:

import turtle as penturtle as pen

size = int(input("Mời nhập độ dài cạnh hình vuông: "))int(input("Mời nhập kich thước cạnh ngôi sao: "))

col = input("Mời nhập màu cho hình vuông (nếu là mã màu thì có dạng #RRGGBB): ")input("Mời nhập màu cho ngôi sao (nếu là mã màu thì có dạng #RRGGBB): ")

# thiết lập màu tôpen.fillcolor(col)
pen.fillcolor(col)

# bắt đầu tô màupen.begin_fill()
pen.begin_fill()

# vẽ hình vuông kích thước sizefor _ in range(4):  pen.forward(size)  pen.right(90)
for _ in range(5):
  pen.forward(size)
  pen.right(144)

# kết thúc tô màupen.end_fill()
pen.end_fill()

Nếu ta nhập vào cạnh có kích thước 200 và màu là red thì kết quả sẽ như thế này:

Vẽ và tô màu ngôi sao:

Hướng dẫn turtle animation python - con rùa hoạt hình trăn