Bonjour, bonsoir à tous et à toutes,
Je travaille en ce moment sur un petit programme prenant en entrée un QTextEdit rempli à la main avec 9 valeurs. Mon programme doit ensuite transformer ce QTextEdit en matrice 3x3, pour exécuter
un calcul, puis renvoyer une nouvelle matrice 3x3. Je dois ensuite afficher ma matrice 3x3 dans un second QTextEdit
Résumé : QTextEdit --> QGenericMatrix<3,3,double> --> calcul --> QGenericMatrix<3,3,double> --> QTextEdit
Seulement voilà... J'ai planifié une méthode pour récupérer mes valeurs dans le premier QTextEdit, et il me renvoie un résultat inattendu : jetez un oeil sur le code ainsi que le débug qu'il m'affiche.
En espérant que vous puissiez m'éclairer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59 void TheorieTab::calcul() { QString chaine; QStringList decoupe; double array[9]; double d; chaine = m_txtEntree->toPlainText(); qDebug() << chaine; decoupe = chaine.split(QRegExp("[\s\r\t\n]+"),QString::SkipEmptyParts); qDebug() << decoupe; int i=0; foreach(QString valeur,decoupe) { d = valeur.toDouble(); array[i]=d; i++; } QGenericMatrix<3,3,double> matrice(array); qDebug() << matrice; matrice = loiHooke(matrice); qDebug() << matrice; } QGenericMatrix<3,3,double>& TheorieTab::loiHooke(QGenericMatrix<3,3,double> &matrice) { double young; double poisson; double trace = 0; // A CALCULER... QGenericMatrix<3,3,double> identite; identite.isIdentity(); young = getYoung().toDouble(); poisson = getPoisson().toDouble(); if (valeurCvD()) { matrice = (1/young)*((1+poisson)*matrice - poisson*trace*identite); } else { matrice = (young/(1+poisson))*(matrice + (poisson/(1-2*poisson))*trace*identite); } return matrice; }
Voici le débug :
Starting C:\Users\Nicolas\Documents\Programmation c - c++ ARDUINO\Qt Projects\build-hooke_generator-Desktop_Qt_5_9_1_MinGW_32bit-Debug\debug\hooke_generator.exe...
"15 45 56\n45 65 45\n78 54 56"
("15 45 56", "45 65 45", "78 54 56")
C:\Users\Nicolas\Documents\Programmation c - c++ ARDUINO\Qt Projects\build-hooke_generator-Desktop_Qt_5_9_1_MinGW_32bit-Debug\debug\hooke_generator.exe exited with code 0
La première chaine de caractère du débug, c'est une QString.
La seconde chaine est un QStringList, censé justement "split" la QString, sauf qu'il ne me la sépare pas bien...
Partager