IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

ralentir une boucle for


Sujet :

MATLAB

  1. #1
    Débutant
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 358
    Points : 106
    Points
    106
    Par défaut ralentir une boucle for
    Bonjour je souhaiterai ralentir la vitesse d'execution d'une boucle for.
    COmment puis je faire ? Sachant que je ne souhaite pas utiliser , qui me cause quelques problèmes.

    Merci

  2. #2
    Expert éminent sénior
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Points : 14 830
    Points
    14 830
    Par défaut
    Et si tu expliquais plutôt en quoi PAUSE ne te convient pas ?
    Règles du Forum

    Adepte de la maïeutique

  3. #3
    Débutant
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 358
    Points : 106
    Points
    106
    Par défaut
    alors quand j'utilise par exemple. La boucle est bien ralentie mais lorsque je decide d'appui sur un pushbutton pour arreter cette boucle , cela ne s'arrete pas.
    Or quand j'essai sans la fonction pause dans ma boucle, et bien le pushbutton arrete bien cette boucle.

  4. #4
    Expert éminent sénior
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Points : 14 830
    Points
    14 830
    Par défaut
    Pourrais-tu montrer ton code complet ?
    Celui de la boucle et celui du bouton ?
    Règles du Forum

    Adepte de la maïeutique

  5. #5
    Débutant
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 358
    Points : 106
    Points
    106
    Par défaut
    voici la fonction avec la boucle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
      function lire(hObject,eventdata)
     
            for k= m:nFrames
     
                % lecture image
                mov(k).cdata = read(VidEcho,k);
                current_frame = mov(k).cdata;
                h=image(current_frame,'parent',Circuit);
                pause(0.2)
            end
        end
    et voici le boutton pour arreter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function paus (hObject ,eventdata)
     
     
            mov(k).cdata = read(VidEcho,k);
            current_frame = mov(k).cdata;
            h=image(current_frame,'parent', Circuit);
            m=k;
     
        end
    Sachant que sans fonction PAUSE tout marche bien.
    Et avec la fonction PAUSE , je doit appuyer beaucoup de fois sur le pushbutton pour un moment arreter la boucle.....

  6. #6
    Expert éminent sénior
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Points : 14 830
    Points
    14 830
    Par défaut
    Ce n'est pas normal

    As-tu essayé d'utiliser le debugguer pour voir s'il rentre bien dans ton callback dès que tu appuies sur le bouton.

    Peut-être que tant que tu es dans la pause, il ne veut rien prendre en compte...(pourtant ce n'est pas ce qui est écrit dans la documentation)

    Parce que sinon une solution "bourrin", serait de faire un truc avec les fonctions de gestion du temps.

    Genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    tic;
    duree=0.2;
    while toc<duree, end
    Mais c'est très moche.

    Tu peux peut-être tenter de mettre la commande DRAWNOW après le PAUSE aussi.
    Règles du Forum

    Adepte de la maïeutique

  7. #7
    Débutant
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 358
    Points : 106
    Points
    106
    Par défaut
    après verification il rentre dans la fonction censer stopper la boucle....

    Pour essayer avec tic , quel est la variable toc?

  8. #8
    Expert éminent sénior
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Points : 14 830
    Points
    14 830
    Par défaut
    Citation Envoyé par oliv27400 Voir le message
    après verification il rentre dans la fonction censer stopper la boucle....
    Et ça ne fonctionne pas ? Tu as essayé le drawnow ?

    Pour essayer avec tic , quel est la variable toc?
    ....Je te rappelle que tu as une aide sur MATLAB qui répond à beaucoup de tes questions.

    Donc un :
    est la réponse.
    Règles du Forum

    Adepte de la maïeutique

  9. #9
    Débutant
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 358
    Points : 106
    Points
    106
    Par défaut
    sa rentre dans la boucle mais sa ne s'arrette pas....même avec pause avant drawnow

  10. #10
    Débutant
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 358
    Points : 106
    Points
    106
    Par défaut
    bon avec tic cela fonctionne parfaitement , je vais garder cette solution pour le moment

    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Shell - Erreur dans une boucle for
    Par claralavraie dans le forum Linux
    Réponses: 4
    Dernier message: 11/01/2006, 13h45
  2. : remplir des zones de texte avec une boucle For
    Par Haro_GSD dans le forum Access
    Réponses: 3
    Dernier message: 20/09/2005, 21h23
  3. Problème avec une DLL dans une boucle For
    Par BraDim dans le forum Langage
    Réponses: 5
    Dernier message: 20/09/2005, 12h22
  4. [batch] incrémentation dans une boucle for
    Par bart64 dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 08/09/2004, 20h05
  5. Réponses: 3
    Dernier message: 06/07/2004, 10h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo