Итак, я пытаюсь сделать реалистичную функцию отскока, когда черепаха ударяется о стену и отскакивает под соответствующим углом. Мой код выглядит так:
def bounce(num_steps, step_size, initial_heading):
turtle.reset()
top = turtle.window_height()/2
bottom = -top
right = turtle.window_width()/2
left = -right
turtle.left(initial_heading)
for step in range(num_steps):
turtle.forward(step_size)
x, y = turtle.position()
if left <= x <= right and bottom <= y <= top:
pass
else:
turtle.left(180-2 * (turtle.heading()))
Итак, это работает для боковых стенок, но я не понимаю, как заставить его правильно отскакивать от верха/низа. Какие-либо предложения?