PRODUIT VECTORIEL

cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008 - 5 janv. 2004 à 16:47
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008 - 6 janv. 2004 à 17:17
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/19260-produit-vectoriel

cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
6 janv. 2004 à 17:17
j'ai dit une bêtise donc


tu pourrais par exemple définir l'opérateur % (modulo) comme étant le remplaçant de x pour réaliser le produit vectoriel, puisqu'il me semble que % n'a pas de raison d'ê ds une classe de vecteur.
garslouche Messages postés 583 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 29 mai 2015 1
6 janv. 2004 à 11:41
Kirua, je crois que tu confonds produit scalaire et produit vectoriel.

En effet le produit vectoriel d'un vecteur par un autre vecteur donne une troisieme vecteur (d'où le nom de "vectoriel")
Alors que le produit scalaire d'un vecteur par un autre vecteur donne un scalaire [ie : un nombre] (d'où le nom de "scalaire")

Ceci-dit il est vrai qu'il serait souhaitable de passer à la Programmation Orientée Objet et de surcharger les opérateurs. La problème étant que l'opérateur x (produit vectoriel) et l'opérateur . (point) n'existent pas. Il y aura donc confusion dans les produits si on utilise *
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
5 janv. 2004 à 16:47
je te conseil de plutôt écrire une classe Vecteur et de surcharger les opérateurs (+, -, /, *, +=, -=, *=, /=, ==, !=)

l'avantage c'est que tu pourras réellement les utiliser comme des objets complets. pour l'opérateur *, tu devras avoir deux surcharges: vecteur * vecteur qui donne un scalaire, et vecteur * scalaire qui donne un vecteur.

pour un exemple, regarde ma classe de vecteur (2D, désolé, j'avais pas besoin de mieux) qui m'a pas mal servie. tu devrais pvr trouver mes codes sources à partir de mon profil ;-)
Rejoignez-nous