Menu
CoddyTech

Hình tròn, đường thẳng và đa giác

Thuộc phần Vòng lặp trò chơi trong hành trình Pygame của Coddy. Bài học 9 trên 35.

Đến giờ, bạn đã vẽ hình chữ nhật. pygame.draw có thêm nhiều hình dạng khác, và chúng đều bắt đầu theo cùng một cách: bề mặt để vẽ, rồi đến màu sắc.

pygame.draw.circle(screen, (255, 196, 0), (100, 80), 30)
pygame.draw.line(screen, (240, 240, 240), (0, 200), (480, 200), 3)
pygame.draw.polygon(screen, (60, 200, 120), [(240, 40), (280, 120), (200, 120)])

Hình tròn cần tâm và bán kính. Khác với hình chữ nhật, hình tròn được đặt theo tâm chứ không phải góc trên bên trái. Bán kính 30 tạo thành hình tròn có đường kính 60 pixel.

Đường thẳng cần hai điểm đầu mút, cuối cùng là độ rộng tính bằng pixel. Nếu không chỉ định độ rộng, đường sẽ dày 1 pixel.

Hình đa giác cần một danh sách các điểm góc và tô kín phần bên trong, nối điểm cuối cùng về điểm đầu tiên. Ba điểm tạo thành hình tam giác, bốn điểm tạo thành hình thoi.

challenge icon

Thử thách

Dễ

Vẽ một chiếc thuyền buồm trên biển, sau lệnh tô màu.

  1. Mặt trời: hình tròn màu (255, 196, 0), tâm tại (380, 80), bán kính 40.
  2. Biển: đường thẳng màu (80, 160, 255) từ (0, 280) đến (480, 280), dày 4 pixel.
  3. Cánh buồm: hình đa giác màu (235, 80, 80) với các đỉnh (240, 120), (240, 250) và (160, 250).

Nhấn Chơi: mặt trời, biển và cánh buồm đỏ. Sau đó nhấn Kiểm tra.

Tự làm thử

import pygame

pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Sailboat")
clock = pygame.time.Clock()

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    screen.fill((30, 30, 46))
    # vẽ mặt trời, biển và cánh buồm ở đây
    pygame.display.flip()
    clock.tick(60)

pygame.quit()

Tất cả bài học trong Vòng lặp trò chơi

Tự luyện tập: Playground Pygame