Calculateur de projection de vecteurs 3D
Saisissez les composantes de deux vecteurs 3D et ce calculateur projette l'un sur l'autre : il affiche la projection scalaire, la projection vectorielle, la composante perpendiculaire, le produit scalaire, les normes et l'angle entre les vecteurs.
Projeter un vecteur 3D sur un autre
Formule de la projection d'un vecteur 3D
Où :
- \(\mathbf{a} = (a_x, a_y, a_z)\) — le vecteur que l'on projette
- \(\mathbf{b} = (b_x, b_y, b_z)\) — le vecteur qui fournit la direction
- \(\mathbf{a} \cdot \mathbf{b} = a_x b_x + a_y b_y + a_z b_z\) — le produit scalaire
- \(\lvert \mathbf{b} \rvert = \sqrt{b_x^2 + b_y^2 + b_z^2}\) — la norme (longueur) de \(\mathbf{b}\)
Cette formule exprime la part de \(\mathbf{a}\) qui pointe dans la direction de \(\mathbf{b}\). Le facteur d'échelle \(k = \frac{\mathbf{a} \cdot \mathbf{b}}{\lvert \mathbf{b} \rvert^2}\) met \(\mathbf{b}\) à l'échelle, de sorte que le résultat est l'ombre que \(\mathbf{a}\) projette sur la droite portée par \(\mathbf{b}\).
Deux grandeurs voisines découlent de la même projection :
\[ \operatorname{comp}_{\mathbf{b}} \mathbf{a} = \frac{\mathbf{a} \cdot \mathbf{b}}{\lvert \mathbf{b} \rvert} \qquad \operatorname{perp}_{\mathbf{b}} \mathbf{a} = \mathbf{a} - \operatorname{proj}_{\mathbf{b}} \mathbf{a} \]
La projection scalaire (composante) est la longueur algébrique de cette ombre, et la composante perpendiculaire (le rejet) est la partie de \(\mathbf{a}\) qui subsiste, toujours orthogonale à \(\mathbf{b}\).
Projection d'un vecteur 3D – Exemple de calcul
Exemple : projetons \(\mathbf{a} = (2, 3, 1)\) sur \(\mathbf{b} = (1, 0, 2)\) (ce sont les valeurs par défaut du calculateur).
\[ \mathbf{a} \cdot \mathbf{b} = 2 \cdot 1 + 3 \cdot 0 + 1 \cdot 2 = 4 \]
\[ \lvert \mathbf{a} \rvert = \sqrt{2^2 + 3^2 + 1^2} = \sqrt{14} \approx 3.742, \qquad \lvert \mathbf{b} \rvert = \sqrt{1^2 + 0^2 + 2^2} = \sqrt{5} \approx 2.236 \]
\[ k = \frac{\mathbf{a} \cdot \mathbf{b}}{\lvert \mathbf{b} \rvert^2} = \frac{4}{5} = 0.8 \]
\[ \operatorname{proj}_{\mathbf{b}} \mathbf{a} = 0.8 \cdot (1, 0, 2) = (0.8,\ 0,\ 1.6) \]
\[ \operatorname{perp}_{\mathbf{b}} \mathbf{a} = (2, 3, 1) - (0.8, 0, 1.6) = (1.2,\ 3,\ -0.6) \]
Résultat : la projection scalaire vaut \(4 / \sqrt{5} \approx 1.789\), la projection vectorielle est \((0.8, 0, 1.6)\) et la composante perpendiculaire est \((1.2, 3, -0.6)\), de norme \(\approx 3.286\). L'angle entre les vecteurs vaut \(\arccos\!\left(\tfrac{4}{\sqrt{70}}\right) \approx 61.4°\).
Comment utiliser le calculateur
- Saisissez la composante en x (aₓ), la composante en y (aᵧ) et la composante en z (a_z) du premier vecteur dans la zone « Vecteur a — composantes ».
- Saisissez les trois composantes du second vecteur dans la zone « Vecteur b — composantes ». Mettez 0 pour tout axe absent.
- Choisissez l'option Projeté : « a sur b » mesure la part de \(\mathbf{a}\) qui se trouve le long de \(\mathbf{b}\) ; « b sur a » inverse les rôles.
- Consultez les résultats : la projection scalaire, la projection vectorielle, la composante perpendiculaire, sans oublier le produit scalaire, les deux normes, l'angle entre les vecteurs et le détail du calcul étape par étape.
Qu'est-ce que la projection d'un vecteur 3D ?
Géométriquement, la projection du vecteur \(\mathbf{a}\) sur le vecteur \(\mathbf{b}\) est l'ombre que \(\mathbf{a}\) projette sur la droite portée par \(\mathbf{b}\), comme si une lumière éclairait perpendiculairement à cette droite. Le résultat est un nouveau vecteur qui pointe exactement dans la même direction que \(\mathbf{b}\) (ou exactement dans la direction opposée), avec une longueur égale à la distance parcourue par \(\mathbf{a}\) dans cette direction. On parle aussi de composante vectorielle de \(\mathbf{a}\) selon \(\mathbf{b}\).
Toute projection décompose un vecteur en deux parties orthogonales : la projection elle-même (parallèle à \(\mathbf{b}\)) et la composante perpendiculaire, souvent appelée le rejet. Ces deux parties redonnent toujours le vecteur d'origine : \(\mathbf{a} = \operatorname{proj}_{\mathbf{b}} \mathbf{a} + \operatorname{perp}_{\mathbf{b}} \mathbf{a}\), et leur produit scalaire est nul. Cette décomposition est à la base du procédé de Gram-Schmidt, de la décomposition des forces en composantes en physique et de l'ajustement par moindres carrés en statistiques.
La projection scalaire répond à la question « jusqu'où \(\mathbf{a}\) s'étend-il le long de \(\mathbf{b}\) ? » par un seul nombre algébrique. Elle est positive quand l'angle entre les vecteurs est inférieur à 90°, nulle quand les vecteurs sont perpendiculaires, et négative quand l'angle dépasse 90° — c'est-à-dire quand \(\mathbf{a}\) pointe en partie contre \(\mathbf{b}\). L'angle lui-même se déduit du produit scalaire grâce à \(\cos\theta = \frac{\mathbf{a} \cdot \mathbf{b}}{\lvert\mathbf{a}\rvert\,\lvert\mathbf{b}\rvert}\), raison pour laquelle le calculateur l'affiche en même temps que la projection.
Notez que la projection varie avec la longueur de \(\mathbf{b}\), mais pas avec sa direction : doubler \(\mathbf{b}\) divise par deux le facteur d'échelle \(k\), si bien que la projection vectorielle reste inchangée. Autrement dit, la projection dépend de la droite portée par \(\mathbf{b}\), et non du vecteur précis — une relation de proportionnalité entre \(k\) et \(\lvert\mathbf{b}\rvert^{-2}\). Vous pouvez explorer ce type de relations proportionnelles avec le Calculateur de variation directe.
Hypothèses, limites et conseils
- Vecteurs non nuls obligatoires. Le vecteur direction doit avoir une norme strictement positive, car la formule divise par \(\lvert\mathbf{b}\rvert^2\). Un vecteur nul n'a pas de direction sur laquelle projeter ; le calculateur vous indiquera quel vecteur corriger.
- Le signe compte. Une projection scalaire négative est un résultat valable : elle signifie que la projection pointe à l'opposé de \(\mathbf{b}\), et la projection vectorielle contiendra alors des multiples négatifs des composantes de \(\mathbf{b}\).
- L'ordre compte. Projeter \(\mathbf{a}\) sur \(\mathbf{b}\) et \(\mathbf{b}\) sur \(\mathbf{a}\) donne en général des vecteurs différents (seules les projections scalaires sont reliées par \(\lvert\mathbf{a}\rvert\) et \(\lvert\mathbf{b}\rvert\)). Utilisez le menu déroulant « Projeté » pour changer de direction.
- Vérification d'orthogonalité. Si le produit scalaire vaut 0, les vecteurs sont orthogonaux : la projection est le vecteur nul et la composante perpendiculaire est égale au vecteur d'origine.
- Normes et moyenne quadratique. La norme \(\lvert\mathbf{v}\rvert = \sqrt{v_x^2 + v_y^2 + v_z^2}\) est la moyenne quadratique des trois composantes multipliée par \(\sqrt{3}\) ; on retrouve la même idée de moyenne dans le calculateur de moyenne quadratique (RMS).
- Vecteurs parallèles. Si les deux vecteurs sont parallèles (angle de 0° ou 180°), la projection est égale à \(\mathbf{a}\) lui-même (au signe près), et la composante perpendiculaire est le vecteur nul.
Questions fréquentes
Comment calculer la projection d'un vecteur 3D à la main ?
Calculez d'abord le produit scalaire \(a_x b_x + a_y b_y + a_z b_z\) et le carré de la norme \(\lvert\mathbf{b}\rvert^2 = b_x^2 + b_y^2 + b_z^2\). Divisez le produit scalaire par \(\lvert\mathbf{b}\rvert^2\) pour obtenir le facteur d'échelle \(k\), puis multipliez chaque composante de \(\mathbf{b}\) par \(k\). Ce produit \(k\mathbf{b}\) est la projection vectorielle. Soustrayez-le de \(\mathbf{a}\) pour obtenir la composante perpendiculaire.
Quelle est la différence entre projection scalaire et projection vectorielle ?
La projection scalaire est un seul nombre algébrique : \((\mathbf{a}\cdot\mathbf{b})/\lvert\mathbf{b}\rvert\), la longueur de l'ombre le long de \(\mathbf{b}\) (négative si l'angle dépasse 90°). La projection vectorielle est un vrai vecteur 3D \(k\mathbf{b}\), porté par \(\mathbf{b}\) et de longueur exactement celle-là. Elles sont reliées par \(\lvert\operatorname{proj}_{\mathbf{b}}\mathbf{a}\rvert = \lvert\operatorname{comp}_{\mathbf{b}}\mathbf{a}\rvert\).
Une projection peut-elle être négative ou nulle ?
Oui. La projection vectorielle est négative (un multiple négatif de \(\mathbf{b}\)) quand l'angle entre les vecteurs est supérieur à 90°, c'est-à-dire quand \(\mathbf{a}\) pointe en partie contre \(\mathbf{b}\). Elle est le vecteur nul quand les vecteurs sont perpendiculaires, car le produit scalaire vaut alors 0. Un résultat négatif est valable — ce n'est pas une erreur, ne supprimez donc pas le signe.
Pourquoi projeter a sur b donne-t-il un résultat différent de b sur a ?
Les deux opérations répondent à des questions différentes. Projeter \(\mathbf{a}\) sur \(\mathbf{b}\) mesure jusqu'où \(\mathbf{a}\) s'étend le long de la droite portée par \(\mathbf{b}\), et le résultat est toujours porté par \(\mathbf{b}\). En échangeant les rôles, on obtient un vecteur porté par \(\mathbf{a}\). Ce n'est que lorsque les vecteurs sont parallèles (ou lorsque l'un est multiple de l'autre) que les deux projections coïncident : vérifiez donc toujours le sens de projection choisi.
Que se passe-t-il si le vecteur direction est le vecteur nul ?
La formule divise par \(\lvert\mathbf{b}\rvert^2\), qui vaut 0 pour le vecteur nul : la projection est donc indéfinie — un vecteur nul n'a pas de direction sur laquelle projeter. Le calculateur le détecte et vous demande de saisir un vecteur direction non nul. Le vecteur projeté peut être quelconque, mais les deux vecteurs doivent avoir au moins une composante non nulle pour que l'angle soit lui aussi défini.
À quoi sert la projection de vecteurs en physique et dans d'autres domaines ?
En physique, elle sert à décomposer forces et vitesses en composantes selon un axe donné, par exemple pour séparer la pesanteur en une partie parallèle et une partie perpendiculaire à un plan incliné. En informatique graphique, elle projette des objets sur des directions de vue ; en statistiques, les mêmes mathématiques fondent la régression par moindres carrés, où les données sont projetées sur un modèle. La décomposition en parties parallèle et perpendiculaire est aussi l'étape clé du procédé d'orthogonalisation de Gram-Schmidt.
La projection change-t-elle si je multiplie le vecteur direction par un nombre ?
Non. Multiplier \(\mathbf{b}\) par une constante non nulle ne change pas la projection vectorielle, car le produit scalaire et \(\lvert\mathbf{b}\rvert^2\) varient ensemble et se compensent. Seule la direction de \(\mathbf{b}\) compte, pas sa longueur. En revanche, la projection scalaire change de signe si vous inversez \(\mathbf{b}\) (multiplication par une constante négative), car elle est signée par rapport à l'orientation de \(\mathbf{b}\).