Làm thế nào để vẽ hình chữ nhật có góc bo tròn trong PyGame?

Category: Pygame

Pygame là một thư viện Python được thiết kế để phát triển trò chơi điện tử. Pygame bổ sung chức năng cho thư viện SDL tuyệt vời, cho phép bạn tạo ra các trò chơi và chương trình đa phương tiện đầy đủ tính năng bằng ngôn ngữ Python. Trong bài viết này, chúng ta sẽ tìm hiểu cách vẽ một hình chữ nhật bo tròn các góc trong Pygame.

Các chức năng được sử dụng:

  • pygame.display.set_mode(): Hàm này được dùng để khởi tạo bề mặt hiển thị. Hàm này lấy kích thước của màn hình làm tham số.

  • pygame.display.flip(): Hàm này được sử dụng để cập nhật nội dung của toàn bộ bề mặt hiển thị trên màn hình.

  • pygame.draw.rect(): Hàm này được dùng để vẽ một hình chữ nhật. Hàm này lấy bề mặt, màu sắc và các đối tượng pygame Rect làm tham số đầu vào và vẽ một hình chữ nhật trên bề mặt đó.

Cú pháp:

rect(surface, color, rect, width=0, border_radius=0, border_top_left_radius=-1, border_top_right_radius=-1, border_bottom_left_radius=-1, border_bottom_right_radius=-1)

Các tham số border_radius chỉ được thêm vào PyGame phiên bản 2.0.0.dev8.

Tiếp cận

  • Import module

  • Initialize Pygame

  • Draw a rectangle with rounded borders

  • Display shape

Ví dụ 1: Ví dụ này vẽ một hình chữ nhật có tất cả các góc được bo tròn

# Nhập thư viện
import pygame

# Khởi tạo Pygame
pygame.init()

# Khởi tạo bề mặt
surface = pygame.display.set_mode((400, 300))

# Khởi tạo màu
color = (48, 141, 70)

# Vẽ hình chữ nhật
pygame.draw.rect(surface, color, pygame.Rect(30, 30, 60, 60),  2, 3)
pygame.display.flip()

Đầu ra:

Không chỉ vậy, Pygame còn có thể được sử dụng để bo tròn dù chỉ một góc theo yêu cầu. Dưới đây là ví dụ về cách triển khai sử dụng phương pháp trên. 

Ví dụ 2: Ví dụ này vẽ một hình chữ nhật chỉ có góc trên bên phải được bo tròn. 

# Nhập thư viện
import pygame

# Khởi tạo Pygame
pygame.init()

# Khởi tạo bề mặt
surface = pygame.display.set_mode((400, 300))

# Khởi tạo màu
color = (48, 141, 70)

# Vẽ hình chữ nhật
pygame.draw.rect(surface, color, pygame.Rect(30, 30, 60, 60),  2, 0, 0, 3)

# Hiển thị đối tượng
pygame.display.flip()

Đầu ra:

Ví dụ 3: Ví dụ này sử dụng đối số từ khóa để vẽ hình chữ nhật có góc dưới bên phải được bo tròn.

# Nhập thư viện
import pygame

# Khởi tạo Pygame
pygame.init()

# Khởi tạo bề mặt
surface = pygame.display.set_mode((400, 300))

# Khởi tạo màu
color = (48, 141, 70)

# Vẽ hình chữ nhật
pygame.draw.rect(surface, color, pygame.Rect(
    30, 30, 60, 60),  2,  border_bottom_right_radius=5)

# Hiển thị đối tượng
pygame.display.flip()

Đầu ra:


Published on Jul 28, 2025

Related Posts