Aller au contenu

Help, fonction de trajectoire


Invité Boomer901

Messages recommandés

Invité Boomer901
Invités, Posté(e)
Invité Boomer901
Invité Boomer901 Invités 0 message
Posté(e)

Bonjour !

Je suis en train d'essayer de programmer un calculateur de trajectoire (vb.net) pour atteindre sa cible dans un jeu. (Des petits tanks qui se tirent dessus).

Wiképédia nous propose :

c1da5860501561519415962ddda5e85e.png

Avec :

"d" la distance horizontale parcourue par le projectile <--- Là il suffit de pointer les deux tanks, quelques calculs et hop on a la distance horizontale parcourue.

"θ" L'angle de projection, celui là je le prédéfini à 60° (Pour atteindre les cibles en cloche, ce qui évite les obstacles éventuels)

"v" La vitesse de déplacement initiale, j'ai filmé un tir, il me reste à convertir en pixel/s"

"y0" La hauteur initiale du projectile, ici on clique sur le tank qui tire pour l'obtenir)

Voilà tout ça c'est merveilleux mais moi je connais "d" et je voudrais mettre "v" en inconnue....

J'ai essayé pas mal de choses sans grands résultats, la racine carrée me coince...

Alors si ça peut vous aider : Le fonctionnement du futur programme:

1:L’utilisateur défini la boîte de jeu en la sélectionnant, des axes X et Y appraissent.

2: Il pointe son tank et celui de l'ennemi, calcul de la distance horizontale.

3: angle de projection prédéfini à 60°, calcul de la puissance nécessaire.

4: Afiichage de la courbe, si le projectile percute un obstacle, ajustement de l'angle.

5: BOOM ! :dev:

Donc out ce que je demande c'est de l'aide pour mettre v en inconnue, Merci :)

Ps: Le premier qui dit que c'est de la triche, je lui répond que je passerai surement 10x plus de temps à faire ça qu'à jouer normalement et en plus c'est destiné à un usage privé.

En pièce jointe: Relevé des positions successives d'un projectile à une puissance de 100% et un angle de 45°. (Vous pouvez me demander le tableau de relevé des postions)

post-96314-0-91500100-1311755565_thumb.jpg

Lien à poster
Partager sur d’autres sites

Annonces
Maintenant
Membre+, I. C. Wiener, 33ans Posté(e)
konvicted Membre+ 26 925 messages
33ans‚ I. C. Wiener,
Posté(e)

Salut,

Isole la racine et élève ensuite les deux membres de l'égalité au carré.

Lien à poster
Partager sur d’autres sites

Membre, Errare humanum est, perceverare diabolicum, 34ans Posté(e)
Hérod Membre 4 216 messages
34ans‚ Errare humanum est, perceverare diabolicum,
Posté(e)

C'est d'la physique de terminal !

J'me suis toujours demandé à quoi ça pouvait bien servir de nous faire ça, puisque l'on étudie que des cas simple ! Ben merci, tu m'as apporté la réponse :) !

Si tu connais la valeur des autres inconnus, alors V est nécessairement déjà en inconnu !

Cette équation te propose donc la distance en fonction de la vitesse initial !

Tu as donc la distance comme fonction de la vitesse !

Qu'est ce que tu veux changer ?

Lien à poster
Partager sur d’autres sites

Membre, 36ans Posté(e)
sebcestbi1 Membre 48 messages
Baby Forumeur‚ 36ans‚
Posté(e)

Je crois qu'il cherche une fonction du type v=....

Lien à poster
Partager sur d’autres sites

Invité Boomer901
Invités, Posté(e)
Invité Boomer901
Invité Boomer901 Invités 0 message
Posté(e)

C'est ça !

Je susi donc le conseil de Konvikted, et je reviens ! :)

Merci pour les réponses rapides, vivement la Terminale ! :D

Lien à poster
Partager sur d’autres sites

Membre, 36ans Posté(e)
sebcestbi1 Membre 48 messages
Baby Forumeur‚ 36ans‚
Posté(e)

Je te propose v= racine[(2d2*g)/(y0+d*racine(3))]

A vérifier, j'ai fais ça un peu vite, et c'est le genre de calculs ou on peut facilement se tromper...

Pour info j'ai pris θ=60° comme tu l'as indiqué

Lien à poster
Partager sur d’autres sites

Membre, Posté(e)
Holdr Membre 326 messages
Baby Forumeur‚
Posté(e)

Bonjour,

Même remarque que sebcestbi1, les calculs ont été réalisé un peu vite et je trouve :

post-145165-0-10691500-1311765313_thumb.jpg

. Bon courage en tout cas

Lien à poster
Partager sur d’autres sites

Membre, 36ans Posté(e)
sebcestbi1 Membre 48 messages
Baby Forumeur‚ 36ans‚
Posté(e)

Ta formule est plus présentable en tout cas :)

Lien à poster
Partager sur d’autres sites

Membre, Posté(e)
Holdr Membre 326 messages
Baby Forumeur‚
Posté(e)

Voilà la formule de sebcestbi1 :

post-145165-0-31235300-1311766513_thumb.jpg

en espérant que l'une d'elle est correcte smile.gif.

Lien à poster
Partager sur d’autres sites

Membre, 36ans Posté(e)
sebcestbi1 Membre 48 messages
Baby Forumeur‚ 36ans‚
Posté(e)

Merci beaucoup :)

Je crois que nos 2 formules sont équivalentes, mais que la tienne est plus générale (la mienne ne fonctionne que pour un angle de 60°)

En prenant un angle de 60°, et avec y0=10, d=1, et g=ç,8 j'obtiens v= 1,29253 avec les 2 formules laugh.gif (si je ne me trompe pas^^)

Lien à poster
Partager sur d’autres sites

Membre, Posté(e)
Holdr Membre 326 messages
Baby Forumeur‚
Posté(e)

On a cos(60) = 0.5 et tan(60)=sqrt(3), on retrouve bien la même formule (après quelques modifications).

Cela est plutôt rassurant, au pire on s'est trompé tous les deux laugh.gif.

Lien à poster
Partager sur d’autres sites

Membre, 36ans Posté(e)
sebcestbi1 Membre 48 messages
Baby Forumeur‚ 36ans‚
Posté(e)

C'est aussi une possibilité ^^

Lien à poster
Partager sur d’autres sites

Invité Boomer901
Invités, Posté(e)
Invité Boomer901
Invité Boomer901 Invités 0 message
Posté(e)

Merci pour tout, j'essaye tout ça sur papier puis sur l'ordi.

Je viendrais surement poster le programme fini pour ceux qui veulent :p.

+1 question, si je met "d" en pixels, j'obtient "v" en pixel/seconde ?

Lien à poster
Partager sur d’autres sites

Membre, 36ans Posté(e)
sebcestbi1 Membre 48 messages
Baby Forumeur‚ 36ans‚
Posté(e)

Si tu prends la valeur classique de g (9,81 environ), alors oui ce sera des pixels par seconde.

Lien à poster
Partager sur d’autres sites

Invité Boomer901
Invités, Posté(e)
Invité Boomer901
Invité Boomer901 Invités 0 message
Posté(e)

Les tests avec des Screenshots du jeu semblent correspondre, reste plus qu'à coder, ça va pas âtre de la tarte, visuale basic est pas copain avec les graph.

Lien à poster
Partager sur d’autres sites

Annonces
Maintenant

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×