Problème de compréhension ?

Romu'
Invité n'ayant pas de compte PHPfrance

08 févr. 2006, 13:43

Bonjour à tous, je viens vous demander de l'aide à propos d'un de mes scripts.

Voilà l'adresse où vous pourrez voir le code et le script fonctionner : http://elral.free.fr/scripts/testimage.php. C'est un script censé afficher un graphique d'après une équation, à l'aide de la librairie GD.

Après analyse, j'en conclue que le problème ne viens pas de la programmation mais plutot de la compréhension, voir même du sens du mot "echelle". Voilà mon problème (accrochez-vous bien) :

Lorsque l'on rentre une valeur dans les cases "echelle" (dans le but de recadrer le graphique), mon script réagit comme ceci :
- si l'équation contient des fonctions, la fonction callback transforme() est appelée, et la valeur de x prise pour le calcul est multiplié par la valeur de l'echelle sur x. la variable globale $utilise passe à true ce qui à pour effet, lors du calcul de la position sur x, de ne pas encore multiplier par l'echelle. (La position sur y est la même qu'il y ai une fonction ou pas)
- si il n'y a pas de fonction dans l'équation, la valeur de x prise pour la calcul est inchangée mais lors du calcul de la position sur x, on multiplie par l'echelle.

Tout ceci ne me semble pas logique, mais j'ai tout essayé...

Concrètement, je ne sais pas où multiplier par les echelles x et y pour que le graphique réagisse normalement et je ne peux pas me corriger car je ne sais pas comment il devrait réagir normalement. Je ne peux que vous conseiller de faire des tests par vous même pour comprendre le problème, car il est compliqué à expliquer simplement.

Si vous souhaitez plus de précisions, je peux répondre à vos questions.

Ayant une certaine expérience des forums, une vrai réponse serait appréciée, et non un "Ho tu sais pas coder !" / "j'aurais fais ça autrement !". Je suis néanmoins ouvert aux conseils. Je vous fais confiance, j'ai choisit ce site pour exposer mon problème relativement par hasard...

Merci d'avance. Romu'

HD
Mammouth du PHP | 1181 Messages

08 févr. 2006, 14:22

Après analyse, j'en conclue que le problème ne viens pas de la programmation
C'est vrai je ne suis pas fort en maths/stats mails... j'ai, deja, du mal à voir où est le probleme :?:
et pour la case "equation" il y a un format (syntaxe) à respecter ?
"Si Dieu descendait sur la Terre, tous les peuples se mettraient a genoux, excepte les Français qui diraient : " Ah ! Vous êtes la ! C'est pas trop tôt ! On va pouvoir discuter un peu !" [Michel Balfour]

Romu'
Invité n'ayant pas de compte PHPfrance

08 févr. 2006, 21:17

la syntaxe des opérations est la même que celle du langage ( * pour multiplier, - et + pour les soustractions et additions et / pour diviser). Pour utiliser une fonction c'est SIN[x] et COS[x].

Il est vrai que le problème est difficile à comprendre, je vais tenter de reformuler. En fait, lorsque l'on change par exemple l'echelle sur l'axe x, doit-on multiplier le nombre que l'on prend pour calculer y et encore multiplier par l'echelle choisie lors du calcul de la position sur l'axe ? Doit-on seulement multiplier la valeur prise ou seulement multiplier lors du calcul de la position sur le graphique ?

Avec mes tests, lorsque l'on utilise une fonction (sinus ou cosinus), je remarque :
- augmenter l'echelle sur Y et la courbe "s'allonge en hauteur" (elle devient moins écrasée contre l'axe x)
- plus on augmente l'echelle sur X, plus on voit de periodes de la fonction.