Last Updated on 2021-12-01 by Clay
Rect 元件在 Pygame 中是一個舉足輕重的元件,本來想要等到有足夠的時間後再開一篇非常詳盡的來寫,但奈何像按鈕、輸入框等等元件都會需要使用到 Rect 元件,於是就還是先寫下了這篇。
本篇的介紹非常單純,並不會提到 Rect 元件更深入的重疊、移動等方法,只是簡單地紀錄如何設定 Rect 元件的屬性,並將其繪製在視窗上。
以下直接來看程式碼吧!
繪製矩形的程式碼
# coding: utf-8
import pygame
def main():
# Settings
width = 800
height = 600
color_bg = (0, 0, 0)
running = True
# Init
pygame.init()
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption("Rect Demo")
# Rect(left, top, width, height)
rect_1 = pygame.Rect(0, 0, 100, 100)
rect_2 = pygame.Rect(0, 0, 300, 100)
rect_2.center = (width/2, height/2)
# Run
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Screen
screen.fill(color_bg)
# Draw
pygame.draw.rect(screen, (100, 100, 100), rect_1)
pygame.draw.rect(screen, (255, 0, 255), rect_2)
# Updates
pygame.display.update()
if __name__ == "__main__":
main()
Output:
這段程式碼其實非常短,重點其實全在 # Rect(left, top, width, height)
這一段落底下。
我們只需要使用 pygame.Rect()
就能順利建立矩形元件,輸入的四個參數分別為左側起點、上方起點、寬度、高度。
另外我們也可以使用 Rect.center
來指定中心點的位置。
剩下的就是使用 pygame.draw.rect()
來將這些矩形物件繪製了。除了需要決定繪製的畫布(這裡就是指視窗 screen)外,也要順便決定矩形的顏色。
References
- https://www.geeksforgeeks.org/how-to-draw-rectangle-in-pygame/
- https://www.pygame.org/docs/ref/draw.html