begin process at 2008 09 06 19:30:58
1 237 892 membres
276 nouveaux aujourd'hui
14 314 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : matrice inverse [ Archives / Maths & Algorithmes ] (vladisback)

matrice inverse le 25/07/2005 10:40:41

vladisback
bonjour, j'utilise pour mes transformation des matrices 4x3: Xx Yx Zx Tx Xy Yy Zy Ty Xz Yz Zz Tz (Identique au matrice directX excepté une quatrieme ligne dont je n'ai pas besoin) Je voudrai savoir comment obtenir la matrice inverse, j'ai fait pas mal de recherche sur google mais n'ai trouvé que des méthodes qu'étant encore jeune et n'ayant pas encore étudié les matrices je ne comprend pas... je voudrais donc le résultat direct pour une matrice comme celle ci. en espérant que vous puissiez m'aider, merci d'avance.

Re : matrice inverse le 25/07/2005 10:43:36

vladisback
Aie désolé j'avais cherché sur google mais pas sur le site et jvois qu'il y a pas mal de choses la dessus et je pense y trouvé mon bonheur. merci quand meme et encore désolé

Re : matrice inverse le 25/07/2005 11:19:40

cosmobob
salut,
est ce que tu te rends compte que tu veux inverser une matrice qui est pas carrée?

a+



Re : matrice inverse le 25/07/2005 13:06:32

vladisback
oui oui je sai, mais en fait je vais utiliser une 4x4, par contre j'ai regardé les exemples sur ce site sa a l'air plutot chiant (les exemples font avec des matrices de n'importe quel taille) donc si quelqu'un a un exemple juste pour les 4x4 je suis preneur, merci! PS: les inversion de matrices non carrée sa existe (si si chercher bien sa existe) mais c'est extrémement difficile a réaliser.

Re : matrice inverse le 25/07/2005 13:32:19

vladisback
Réponse acceptée !
c bon j'ai trouvé, voici le code si quelqu'un est interessé: void InvMatrixFunc(double Matrix[4][4]) { double t[6]={0,0,0,0,0,0}; double CoffactMatrix [4][4]; double td; // calcul des cofacteurs de la ligne 1 t[0]=Matrix[2][2]*Matrix[3][3] - Matrix[3][2]*Matrix[2][3]; t[1]=Matrix[2][1]*Matrix[3][3] - Matrix[3][1]*Matrix[2][3]; t[2]=Matrix[2][1]*Matrix[3][2] - Matrix[3][1]*Matrix[2][2]; t[3]=Matrix[2][0]*Matrix[3][3] - Matrix[3][0]*Matrix[2][3]; t[4]=Matrix[2][0]*Matrix[3][2] - Matrix[3][0]*Matrix[2][2]; t[5]=Matrix[2][0]*Matrix[3][1] - Matrix[3][0]*Matrix[2][1]; CoffactMatrix[0][0]=Matrix[1][1]*t[0] - Matrix[1][2]*t[1] + Matrix[1][3]*t[2]; CoffactMatrix[0][1]=Matrix[1][0]*t[0] - Matrix[1][2]*t[3] + Matrix[1][3]*t[4]; CoffactMatrix[0][2]=Matrix[1][0]*t[1] - Matrix[1][1]*t[3] + Matrix[1][3]*t[5]; CoffactMatrix[0][3]=Matrix[1][0]*t[2] - Matrix[1][1]*t[4] + Matrix[1][2]*t[5]; // calcul du determinant td=Matrix[0][0]*CoffactMatrix[0][0] - Matrix[0][1]*CoffactMatrix[0][1] + Matrix[0][2]*CoffactMatrix[0][2] - Matrix[0][3]*CoffactMatrix[0][3]; // Form1->Edit1->Text=FloatToStr(td); // test du determiant : si non nul on continue if(td==0) { cout<<"\ndeterminant null!!!"<
Re : matrice inverse le 15/02/2006 14:27:08

Aekq
Salut,
J'ai lu votre demande de recherche de code d'inversion de matrice;
Je porte à ta connaissance que mathématiquement l'inversion n'est possible que pour des matrice carrées.
Cordiallement


Classé sous : matrice, inverse, matrices

Participer à cet échange

Pub



Appels d'offres

CalendriCode

Septembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
2930     

Boutique

Boutique de goodies CodeS-SourceS