Partage
  • Partager sur Facebook
  • Partager sur Twitter

Angle entre deux vecteurs dans un espace 3D

    17 novembre 2017 à 8:30:43

    Bonjour,

    Pour faire bouger une balle dans un cube, j'ai les coordonnees du point de depart de la balle + point d'arrivee :

    Depart: x1=0, y1=5, z1=-3

    Arrivee: x2=5, y2=-3, z2=-10

    J'en deduit un vecteur v:

    v(5, -8, -7)

    On me demande l'angle du vecteur lorsque la balle touche le bord du cube.

    J'ai cette formule

    cos O = u.v / ||u||.||v||

    Le probleme est comment je choisis mon deuxieme vecteur?

    Dois prendre un vecteur perpendiculaire au bord de la face du cube sur lequel la balle rebondit?

    Quelle taille dois-je choisir?

    Je suis un peu perdu!

    Merci de votre aide.

    -
    Edité par LucasBrazi 17 novembre 2017 à 13:08:40

    • Partager sur Facebook
    • Partager sur Twitter
      17 novembre 2017 à 12:52:14

      En voyant le titre du message : Angle d'un vecteur, je me suis dit ... avec un vecteur, on ne peut pas avoir un angle, il fut 2 vecteurs pour faire un angle... Donc effectivement, il faut 2 vecteurs pour faire un angle.

      Le bord du cube, c'est une surface... donc problème. La bonne idée , c'est effectivement de prendre un vecteur v perpendiculaire à la surface. Et de calculer l'angle entre ton vecteur u et le vecteur v.

      Mais attention. si ton vecteur u est quasiment perpendiculaire à la surface, tu vas trouver un angle proche de 0. L'angle entre u et v est proche de 0. Mais ce que tu veux, ce n'est pas l'angle entre u et v, c'est l'angle entre u et la surface. Et pour passer de l'un à l'autre, il va falloir dire :

      angle2 = 90 - angle1

      Ainsi, si ton vecteur u est quasiment perpendiculaire à ta surface, tu auras un résultat proche de 90°  ( ou proche de Pi/2 ) Attention aussi à ce piège.

      Enfin, tu demandes quelle taille choisir pour le vecteur v. Peu importe. Tu peux prendre la taille que tu veux, sauf 0 bien sûr,  tu obtiendras toujours le même résultat.

      Tu n'avais pas les bonnes réponses, mais tu avais les bonnes questions, bravo !

      • Partager sur Facebook
      • Partager sur Twitter
        17 novembre 2017 à 13:23:21

        Merci tbc92, j'ai changé le titre :)

        Je te remercie pour ton aide!

        Je vais tester tout cela

        Par contre avec une dimension en plus (z) le produit scalaire et le produit des normes doivent le prendre en compte n'est-ce pas ?

        Donc avec cette formule:

        cos O = u.v / ||u||.||v||

        Et ces deux vecteurs:

        u(5, -8, -7)

        v(0, -8, 0)  -> Vecteur quelconque perpendiculaire a x

        On aurait:

        u.v = (5*0) + (-8*-8) + (-7*0)

        Mais pour ||u|| par contre ca reste:

        ||u|| = V((5*5) + (-8*-8))

        Pusique l'on veut la norme du vecteur, le z ne devrait pas l'influencer non?

        Merci encore par avance pour ton aide!  

        • Partager sur Facebook
        • Partager sur Twitter
          17 novembre 2017 à 19:45:08

          u.v = (5*0)+(-8*-8)+(-7*0) : Oui

          Mais ||u||, il faut prendre en compte la 3ème dimension :

          ||u|| = racine(x²+y²+z²) = racine(5² + (-8)² + (-7)²)

          Et similaire pour ||v||

          • Partager sur Facebook
          • Partager sur Twitter

          Angle entre deux vecteurs dans un espace 3D

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown