Bonsoir,
je suis en train de faire une simulation d'une onde stationnaire : onde sinusoïdale qui se propage en fonction du temps et du x V(x,t).

L'onde s'affiche dans une pictureBox :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
private void zone_traçage_Paint(object sender, PaintEventArgs e)
        {
            Graphics ggg = e.Graphics;
             time = (Environment.TickCount - tickStart) /1000;            
 
                aa(ggg, time);
        }
la fonction aa est là ou je programme le courbe.
j'utilise un bouton dans lequel je fai appel à pictureBox.refresh(); pour qu'à chaque fois que je clique sur le bouton il ma trace la courbe de nouveau en fonction du temps.

j'ai tracé la courbe à un moment bien définie t0, et on cliquant sur le bouton +ieurs fois de façon rapide , je voi la courbe qui se propage.

Donc je veux enlever le bouton et faire propager la courbe de façon continue, mais quand je fais une boucle que ce soit for ou do ..While .
mon graphe se bloque et n'affiche rien.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
private void zone_traçage_Paint(object sender, PaintEventArgs e)
        {
            Graphics ggg = e.Graphics;
             //time = (Environment.TickCount - tickStart) /1000;
             //MessageBox.Show(time.ToString());
 
            for (double time = 0; time < 12000; time += 0.01F)
            {
                aa(ggg, time);
            }
Alors, si vous avez une idée pour que je fais propager ma courbe de façon continue, sauvez moi le plus tôt possible.

En attendant vos réponses, je vous remercie