cs_harmonyk
Messages postés37Date d'inscriptionsamedi 16 septembre 2006StatutMembreDernière intervention 5 juillet 2012
-
19 sept. 2010 à 03:09
cs_harmonyk
Messages postés37Date d'inscriptionsamedi 16 septembre 2006StatutMembreDernière intervention 5 juillet 2012
-
19 sept. 2010 à 15:01
Bonsoir,
j'avais posté dans le bar au sujet d'une formule sur un triangle rectangle,
mais je suis en train de gérer ca via javascript.
J'ai pas mal avancé depuis, mais c'est pas au point du tout.
J'explique :
/*
*Calcul des coordonnées de la cible
*
* Je pars d'un triangle RST, rectangle en R, ou T représente le départ (x:0,y:0).
* ST représente la variable distance.
* T correspond à la variable angle.
* Pour trouver x (RT) :
* cosT RT / ST > cos(angle) = RT / distance
* RT ST * cosT > x = distance * cos(angle)
* Pour trouver y (RS) :
* ST² RS² + RT² > distance² = RS² + x²
* RS² ST² - (ST * cosT)² > RS² = distance² - x²
* RS Racine²(ST² - (ST * cosT)²) > y = Racine²(distance² - x²)
*/
var x = distance*(Math.cos(angle)),
y = Math.sqrt((distance*distance)-(x*x));
Alors je ne sais pas si je me suis planté dans les formules, mais le résultat n'est pas concluant du tout, surtout si angle est inférieur à 45°.
J'en appelle donc aux matheux, car là je commence à être largué...
Bon ok peut être à cause de l'heure...
Merci d'avance !
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201116 19 sept. 2010 à 11:40
Bonjour,
visiblement cela semble correct, en présument que tu connaisses distance.
Et si tu fais simplement
var x = distance * ( Math.cos( angle));
var y = distance * ( Math.sin( angle));
si c'est pour la gestion des collisions, vu sur un de tes récent POST, je te déconseille l'utilisation des méthodes de l'objet Math, gourmand en ressource et temps...
cs_harmonyk
Messages postés37Date d'inscriptionsamedi 16 septembre 2006StatutMembreDernière intervention 5 juillet 2012 19 sept. 2010 à 04:03
Et bien tout simplement que les coordonnées x et y trouvées avec cette formule ne correspondent pas du tout avec le point S, j'en conclu donc que ma formule est pas top...
cs_harmonyk
Messages postés37Date d'inscriptionsamedi 16 septembre 2006StatutMembreDernière intervention 5 juillet 2012 19 sept. 2010 à 12:10
Bonjour PetoleTeam,
merci de t'intéresser à mes sujet =)
Effectivement ce script est placé juste avant celui de la gestion des collisions.
Merci pour ta formule simplifié, mais c'est bizarre car les résulats me semblent improbables.
Exemple :
J'ai un angle de 10° (T).
J'ai une distance de 400px (ST).
Je me retrouve au final avec des coordonnées :
x (TR) = environ -334.79px
y (RS) = environ -217.1px
Les résultats sont similaires avec ma formule, donc qu'est ce qui cloche ??
En ce qui concerne les ressources utilisées pour l'objet Math, je ne vois pas du tout comment faire autrement...