画月亮
本课属于 Coddy Pygame 学习旅程的“游戏窗口中的 Python”单元。第 5 课,共 33 课。
pygame.draw.circle 会在窗口上绘制一个实心圆:
pygame.draw.circle(screen, (240, 230, 160), (320, 240), 30)它按顺序接收四项内容:要在其上绘图的表面(screen,也就是窗口)、颜色、表示圆心的 (x, y) 元组,以及以像素为单位的半径。
x 表示从左边缘开始计算的像素数。y 表示从顶部边缘开始向下计算的像素数。(0, 0) 是左上角,(640, 480) 是右下角,所以 y 越大,位置越靠近窗口底部。
在 screen.fill() 之后绘图。填充操作会涂满整个窗口,所以在同一帧中,先于它绘制的内容都会被覆盖。
挑战
简单把月亮移到右上角,并让它变大。
- 将它的中心设为
(500, 110)。 - 将它的半径设为
50。 - 保持它的颜色为
(240, 230, 160)。
按“运行”:更大的月亮会出现在右上角。然后按“检查”。
亲手试试
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# 在这里完成设置,然后进入游戏循环。
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 在这里修改内容,每帧执行一次。
screen.fill((20, 24, 48))
# 填充完成后,在这里绘制。
pygame.draw.circle(screen, (240, 230, 160), (320, 240), 30)
pygame.display.flip()
clock.tick(60)
pygame.quit()
游戏窗口中的 Python中的所有课
自己练习: Pygame 在线编辑器