pygame最简单自由落体弹球实验

当一个人从大楼跳下时,他就做着抛物线式的运动。我们可以通过编程模拟这种移动。或许你用Python的海龟画图模块做过类似的动画。现在,我们可以通过Pygame模块来实现这个动画。最简单的情况就是,当游戏中的图形水平速度dx为0的时候,那么它只是在做自由落体运动。当一个物体自由落体时,它的垂直速度是不断地增加的。增加的数量是一定的,这个数量叫做加速度。假设游戏中的角色的垂直速度为dy,不断地通过调用y = y + dy命令,那么角色就会匀速地在竖直方向移动。如果让dy不断地累加a,这个时候角色就呈现加速度下落的运动。不断地在新的坐标渲染,我们就能看到模拟的自由落体效果。下面的代码radius代表小球的半径。x和y代表小球的坐标。dx和dy代表水平和垂直方向单位的位移量,也就是速度。而a的值是1,它代表的是重力加速度。以下是最简单的自由落体弹球小程序,它会演示一个红色的小球掉到屏幕下边缘然后又不断弹起下落的动画。

"""
   最简单自由落体弹球实验,这个程序演示一个红色的小球掉到屏幕下方。
"""
import pygame
from pygame.locals import *

size = width,height = 480,360
screen = pygame.display.set_mode(size)
pygame.display.set_caption("Pygame最简自由落体运动")

radius = 20    # 小球半径
x = width//2   # 初始x坐标
y = 10         # 初始y坐标
dx = 0         # 水平速度
dy = 0         # 垂直速度
a =  1         # 加速度

You must log in to read the rest of this article. Please log in or register as a user.