IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mathématiques Discussion :

Angle de rebond sur une ligne oblique


Sujet :

Mathématiques

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Angle de rebond sur une ligne oblique
    Salut à tous !

    Je programme en ce moment un jeu en Python qui est une remasterisation de Inkball, le jeu sur Vista.

    Je suis confronté à un problème pour lequel j'ai eu quelques réponses en cherchant sur les forums mais celles-ci n'étaient pas bien expliquées. Je vous pose donc cette question : Comment calculer et mettre en place l'angle de rebond d'une balle sur une ligne oblique ?

    Ce que j'ai : La vitesse en x et en y de la balle, les coordonnées du centre de la balle, le rayon, le point d'intersection de la balle avec la ligne, les coordonnées des deux points des extrémités de la ligne.

    J'ai donc déjà les collisions et les rebonds sur les bords de l'écran mais sur les lignes obliques, c'est plus compliqué et c'est pourquoi je demande votre aide !

    Si vous avez besoin de quoi que ce soit de supplémentaire, faites-le moi savoir.

    Merci d'avance !

  2. #2
    Membre éprouvé

    Homme Profil pro
    Cyber Security & AI
    Inscrit en
    Février 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Cyber Security & AI

    Informations forums :
    Inscription : Février 2009
    Messages : 506
    Points : 1 155
    Points
    1 155
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    C'est un problème classique de mécanique. Tu dois calculer l'angle avec lequel ta balle frappe ta ligne oblique. Alors par symétrie tu pourras calculer l'ange de rebond.
    Pour calculer le premier angle dont je te parle, il faut avoir le vecteur de vitesse de la balle jusqu'au moment ou elle frappe la ligne oblique. Pour déterminer l'angle de frappe relatif à la ligne ou relatif au référentiel.

    Cordialement.

  3. #3
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Points : 9 860
    Points
    9 860
    Par défaut
    Petit détail : il te faut connaître la tangente (ou la normale) de la courbe à l'endroit où la balle frappe. Ensuite, ce n'est qu'une question de symétrie.

  4. #4
    Expert confirmé
    Inscrit en
    Avril 2008
    Messages
    2 564
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 564
    Points : 4 442
    Points
    4 442
    Par défaut
    bonjour
    Loi de la reflexion de l'optique geometrique pour les chocs elastiques sans dissipation...
    Comme dit par toto13 ...tu dois trouver la normale à ta paroi oblique...

    Si ta paroi a pour pour pente [Dy/Dx], la normale a pour pente [-Dx/Dy]...
    Vectoriellement parlant si comme si on disait :
    Vecteur Oblique B=[Dx,Dy] et vecteur normale N=[Dy,-Dx]
    Ensuite on normalise N => Nprime=[Dy/module(N),-Dx/module(N)).
    Le vecteur Nprime va servir comme suit:
    si Vi est ton vecteur vitesse incidente(projectile) le module de sa projection P sur la normale N est donne par le produit scalaire:
    P =--Vi *Nprime...(le signe moins doit etre elimine car le vecteur normal pointe ver la paroi)...
    On le multiplie encore par Nprime (vecteur normalise unitaire) pour inverser le sens:
    P= (-Vi*Prime)*Nprime

    Soit V le vecteur (figure2 ci-joint) inconnu tel que V=P+Vi
    On voit aussi que le vecteur reflechi vaut : P + V = Vf .
    on en tire :
    Vf = 2 * P + Vi (à exprimer en coordonnes cartesiennes)

    ci-joint les 2 figures...
    bon code...

Discussions similaires

  1. Réponses: 13
    Dernier message: 12/07/2005, 10h14
  2. div et innerHTML : tout sur une ligne?
    Par LineLe dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 04/04/2005, 11h15
  3. nombres d'images sur une lign automatique
    Par AnKhCHFR dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 10/03/2005, 11h52
  4. Lien sur une ligne de tableau
    Par Oluha dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/02/2005, 11h36
  5. pointer sur une ligne d'un TStringGrid
    Par jeannot27 dans le forum C++Builder
    Réponses: 7
    Dernier message: 20/10/2004, 10h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo