Problème projet en python 3.4 de balle rebondissante

Bonjour je suis actuellement en classe de terminale s.
Je dois faire un programme qui fait rebondir une balle sur les bord d’un tableau seulement ma balle rebondie partout mais elle ne part pas avec des bons angle cela car il y a un “turn left”.
Je voudrais en premier lieu avoir votre aide pour faire rebondir cette balle selon de bon angle.
Ensuite mon professeur ma dit d’utiliser la méthode d’euler pour faire faire des courbes à la balle puis faire une fonction qui ralentisse la balle
mais j’avoue que j’avance dans le noir car je n’y comprend absolument rien. De plus le programme est tout petit et tout con mais dés que ça ce complique j’ai du mal à programmer.
Voici la tête du programme merci beaucoup d’avance pour ceux qui prendront le temps de regarder ce message et peut être d’y répondre:

import turtle
import random
t = turtle.Turtle()
t.speed(0)
t.up()
t.width(5)
t.setposition(400, 300)
t.down()
t.left(180)
t.forward(800)
t.left(90)
t.forward(600)
t.left(90)
t.forward(800)
t.left(90)
t.forward(600)
t.up()
t.shape('circle')
x = random.randint(-300, 300)
y = random.randint(-200, 200)
rot = random.randint(1, 179)
t.setposition(x, y)
t.left(rot)
t.width(1)
while True:
    a = t.position()
    #print(a[0])
    t.down()
while True:
	a = t.position()
	if a[0]<= -400 or a[0] >= 400 or a[1] <= -300 or a[1] >= 300:
		break
	t.forward(1)
print(t.heading())
rot = rot - 360
#print(rot)
t.left(rot)
t.forward(1)
input()

Moi, quand j’execute ton script, je remarque que tout ce qui est après ton

est totalement inutile puisqu’il n’y a aucune raison de sortir de la boucle.
Enfin, en tous cas, il tourne en rond et ne fais strictement rien chez moi.