Bon j'ai implémenté la méthode à Jyaif et elle est meilleure que mon ancien système qui visait à trouver la distance entre le côté courant du tank et le prochain pixel à gauche et à droite, puis de constuire un triangle (pythagore) pour calculer l'angle:
; Vérifie sur le long de l'axe "parallèle" autour de "milieu" en utilisant "perpendiculaire" comme vecteur sortant
angleTerre(point milieu, vecteur parallèle, vecteur perpendiculaire):
entourage = largeurTank / 2 ; On peut tweaker
tolerance = 16 ; tout ce qui est plus éloigné de l'objet est oublié, évite de prendre les galeries
; Distance entre l'objet et le sol à une distance de "i" de "milieu" parallèlement à "parallèle"
distance(i):
point pos = milieu + parallèle * i ; € parallèle
for j = [0 .. tolerance[ :
if getPixel(pos + perpendiculaire * j):
return j
return tolerance
moyenneGauche = (distance(-entourage) + distance(-entourage + 1)) / 2
moyenneDroite = (distance(entourage) + distance(entourage - 1)) / 2
return arctan(x = 2 * entourage, y = moyenneDroite - moyenneGauche)
Par contre juste noter qu'il ne faut pas faire une moyenne des angles mais des vecteurs

sinon on risque de perdre de l'info, en imaginons qu'on a les angles {-2, 3, +2}, la moyenne devrait être 3 mais elle sera 1 ^^
Donc merci

Prochaine étape: ce que m'a décrit momotte
