• 06 Juin 2026, 23:00:25


Auteur Sujet: [Demande Aide] Formule d'angles  (Lu 1699 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
[Demande Aide] Formule d'angles
« le: 07 Juin 2011, 10:07:40 »
Bonjour,

Alors voila j'aimerais juste savoir comment calculer la symétrie d'un angle par rapport à un axe horizontal. ( On travaillerais donc sur x, y)

Donc je m'expliques enfaite je souhaites reprendre le développement de mon système de remorques, j'ai trouver pas mal de formule et je me suis un peu avancés dans la trigo. ^^
Imaginons une voiture qui traine une caravane, si la voiture tourne à gauche de 60°, la caravane attaché derrière elle va tourner elle aussi mais vers la droite de 60°.
Comment trouver l'angle de la caravane en connaissant l'angle de la voiture sachant que les fonctions de récupérations d'angle (GetVehicleZAngle, GetPlayerFacingAngle..) sont basés sur un degré 0° spécial il me semble (c'est à dire pas orienté vers le nord il me semble c'est comme le cercle trigo, donc vers l'est. je suis plus sur ^^)


Merci de vos réponses.
Sam.  :cheers

Hors ligne vitry_selkato

  • *
  • Tueur en série
  • Thug Life Style - Vie de voyous Virtuel
  • Messages: 174
    • Voir le profil
    • http://www.thuglifestyle.1x.net/
Re : [Demande Aide] Formule d'angles
« Réponse #1 le: 07 Juin 2011, 12:38:58 »
Salut,
Marque sur google
GetVehicleZAngleet
GetPlayerFacingAngle
Tu va surment tomber sur le site de wikipédia sa-mp,
Qui va t'expliquer comment utiliser ces fonctions .

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : [Demande Aide] Formule d'angles
« Réponse #2 le: 07 Juin 2011, 12:52:20 »
Chneubeul, j'ai pas très très bien compris ce que tu voulais, mais si c'est pour récupérer l'angle de la remorque tu peut toujours utiliser GetVehicleZAngle



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : [Demande Aide] Formule d'angles
« Réponse #3 le: 07 Juin 2011, 17:26:13 »
Bizarre ta caravane ....  ;D

Pour moi, et certainement pour beaucoup d'autres, si la voiture tourne à droite, la caravane va aussi tourner à droite et du même angle qui plus est. Si tu as encore des petites voitures, fais l'essai avec, tu verras que les deux partie de ton attelage prennent le même angle (avec un petit temps de retard pour la remorque).
Donc ta question reste assez incompréhensible.
Le seul cas qui je vois, c'est quand tu recules, dans certaines conditions la remorque s'oriente à l'opposé du tracteur mais c'est un cas très particulier.

Sinon, pour compléter la réponse de Ssk, tu peux utiliser la fonction GetVehicleTrailer pour connaitre l'ID de la remoque et faire un GetVehicleZAngle dessus.

++
Syg
Courtesy of GtaManiac

Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
Re : [Demande Aide] Formule d'angles
« Réponse #4 le: 07 Juin 2011, 19:12:13 »
Salut, merci de vos réponses. Ben à vrai dire c'est pas un véhicule que je veut attaché c'est un objet désolé de pas l'avoir précisez, donc il me faut des calculs concret pour calculer l'angle. ^^  Syg, enfaite c'est pas vraiment qu'il s'oppose ou quoi c'est pour calculer la cassure quoi quand le tracteur tourne.
Gzsume bonne idée, mais le rc buggerais il me semble dés qu'on place un objets en contact avec un véhicule il est bloqués. Puis niveau dimension le rc apparaitrais je penses.
Sinon, pour les calculs de positions tout ça derrière le véhicule en fonction de X, Y, Z, j'avais penser au angles quaternions, je vais rechercher une page que j'avais trouver je vous l'envoie après mais je comprend pas trop les calculs, j'ai jamais vu ça en cours ^^

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : [Demande Aide] Formule d'angles
« Réponse #5 le: 08 Juin 2011, 10:00:59 »
Ah ok, en fait, tu veux attacher un objet à un véhicule et faire en sorte qu'il se comporte comme si c'était une remorque.

1 - La solution la plus "simple", c'est de récupérer l'angle du tracteur et de l'appliquer à la remorque avec un décalage (en fonction de la vitesse).
Ceci oblige à conserver les angles du tracteur pendant la durée du décalage.
Je vais essayer d'expliquer ça clairement :

            t0   t1   t2   t3    t4    t5    t6    t7
Tracteur    0°   10°  20°  30°   40°   40°   40°   40°
Remorque    0°    0°   0°  10°   20°   30°   40°   40°


A l'instant t0, le tracteur et la remorque sont dans la même position.
A l'instant t1, le tracteur commence à tourner (on récupère son angle et on le stocke)
Idem pour l'instant t2.
A l'instant t3, le tracteur continu sont virage et on commence à appliquer les valeurs stockées de l'angle à la remorque.
Idem pour l'instant t4
A l'instant t5, le tracteur à fini son virage mais on continue d'appliquer les valeurs stockées à la remorque
Idem pour l'instant t6
A l'instant t7, le tracteur et la remorque sont alignés.

Cette méthode pose néanmoins plusieurs problèmes :
- Arrêt du tracteur en cours de virage -> Il ne faut plus appliquer les angles à la remorque
- Marche arrière -> Dans le cas d'une marche arrière, il faut prendre en compte le contre-braquage (la remorque par à l'opposé du tracteur)
- Calcul des intervalles de temps en fonction de la vitesse -> La formule est à trouver empiriquement (c'est à dire en faisant des essais pour l'ajuster).

2 - Autre méthode un peu plus complexe en calculs :
La remorque est un objet qui possède un centre de gravité G (c'est le point auquel on applique les coordonnées pour positionner l'objet) et un point d'attache A au tracteur.
Cette méthode consiste à trouver l'angle en fonction de la position du tracteur (donc de celle du point A), de la position de l'objet (donc de celle du point G).

Cette méthode est plus précise en ce qui concerne la marche avant que la méthode précédente, mais elle est toujours inefficace pour la marche arrière

3 - Recherche de l'angle de traction ou de poussé de la remorque.
C'est la méthode la plus fiable car elle gère tous les cas (marche avant, marche arrière).
Cette méthode demande un très bon niveau en math (et en physique) et consiste à calculer la direction et la norme (puissance) de la force exercée sur le point d'attache A. C'est assez difficile à expliquer par écrit mais il suffit d'imaginer la remorque réduite au simple vecteur GA (cité dans le méthode 2) sur lequel on applique une force quelconque en A. On peut essayer de simuler ça avec un stylo. Selon si on tire ou si on pousse, soit à gauche, soit à droite, avec un autre stylo (tracteur), le stylo (remorque) va se comporter de façon différente.

Bon courage.

++
Syg
Courtesy of GtaManiac

Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
Re : [Demande Aide] Formule d'angles
« Réponse #6 le: 08 Juin 2011, 20:02:33 »
Oula, Merci beaucoup Syg pour ces explications, je crois que je vais faire par étapes, d'abord attacher l'objet et le déplacer suivant un demi cercle en fonction de l'angle de la voiture. Puis, je vais régler l'angle. et Ajouter l'angle (dans une pente par exemple). Comme ça je penses que je vais apprendre pas mal.