import turtle
# 设置画布大小和速度
turtle.setup(800, 600)
turtle.speed(0)
# 定义小球的初始位置和速度
x = -300
y = 0
speed_x = 3
speed_y = 0
gravity = -0.2
bounce_factor = 0.8
# 绘制小球
ball = turtle.Turtle()
ball.shape("circle")
ball.color("red")
ball.penup()
ball.goto(x, y)
# 模拟小球的运动
while True:
# 更新小球的位置和速度
speed_y += gravity
x += speed_x
y += speed_y
# 检测小球是否碰到边界
if y < -280:
y = -280
speed_y *= -bounce_factor
if x > 380:
x = 380
speed_x *= -1
if x < -380:
x = -380
speed_x *= -1
# 更新小球的位置
ball.goto(x, y)
turtle.done()
以上代码使用Turtle模块实现了一个弹跳的小球效果。小球在x和y方向上根据速度进行更新,并模拟重力的影响。当小球触碰到底部边界时,速度会反向并乘以反弹系数,模拟小球的弹跳行为。小球同时也会在左右边界处产生反弹效果。