import random
import pygame
import time
# 初始化
pygame.init()
# 创建窗口
w_x = 400
w_y = 600
wind = pygame.display.set_mode((w_x, w_y))
# 游戏界面背景
wind.fill((255, 255, 255))
# 游戏标题
pygame.display.set_caption("动画原理")
# 刷新界面
pygame.display.flip()
# 定义变量设置随机坐标
c_x = random.randint(25, 400)
c_y = random.randint(25, 600)
cx_s = 2
# 游戏循环
while True:
# 设定随机的颜色变量
R = random.randint(0, 255)
G = random.randint(0, 255)
B = random.randint(0, 255)
# 用时间的sleep方法控制球的速度
time.sleep(0.001)
# 圆的X坐标值
c_x += cx_s
#判断圆的X坐标值大于或等于窗口宽值
if c_x >= w_x-25:
cx_s = -1
#再次判断圆的X坐标值是否小于等于窗口宽值
if c_x <= 25:
cx_s += 1
# 绘制一个圆,坐标为随机
pygame.draw.circle(wind, (R, G, B), (c_x, c_y), 25)
# 刷新界面,因每次界面的球位置都不一样,所以呈现动画视觉
pygame.display.update()
# 渲染背景,为了覆盖上次绘制的球,不然界面会出现很多个球
wind.fill((255, 255, 255))
for event in pygame.event.get():
if event.type == pygame.QUIT:
exit()