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 :

Problème de superposition d'images dans Movie


Sujet :

MATLAB

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 43
    Points
    43
    Par défaut Problème de superposition d'images dans Movie
    Bonjour, je suis désolée d'abuser, j'ai encore un problème avec Movie...
    Heureusement que ce forum existe!

    Quand je constuit les 2 objets séparément et fait défiler le film de chacun tout va bien!!!
    Mais quand je reconstruit simultanément les 2 objets, l'enregistrement n'est pas bon, car il garde supperpose tous les getframe!!

    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
    60
    61
    62
    63
    64
    65
    66
    % réservation de l'espace mémoire
    n=5;
    V = moviein(n);%% nombre d'images: n=5
     
     
    %redimension (grossissement comme on veut "*") + recalage (prend le point min
     
    %Pour l'objet1
    [m11,m12,m13]= mini(X);
    [m21,m22,m23]= mini(Y);
    [m31,m32,m33]= mini(Z);
     
    %Pour l'objet2
    [m1,m2,m3]= mini(M);
     
     
    for i=1:n
     
        for j=1:length(X)
     
    %%Objet1
    x(j,1)=X(j,1)+X(j,1)*exp(i)*10^(-3)-(m11*exp(i)*10^(-3)); 
    x(j,2)=X(j,2)+X(j,2)*exp(i)*10^(-3)-(m12*exp(i)*10^(-3)); 
    x(j,3)=X(j,3)+X(j,3)*exp(i)*10^(-3)-(m13*exp(i)*10^(-3)); 
     
    y(j,1)=Y(j,1)+Y(j,1)*exp(i)*10^(-3)-(m21*exp(i)*10^(-3)); 
    y(j,2)=Y(j,2)+Y(j,2)*exp(i)*10^(-3)-(m22*exp(i)*10^(-3)); 
    y(j,3)=Y(j,3)+Y(j,3)*exp(i)*10^(-3)-(m23*exp(i)*10^(-3)); 
     
    z(j,1)=Z(j,1)+Z(j,1)*exp(i)*10^(-3)-(m31*exp(i)*10^(-3)); 
    z(j,2)=Z(j,2)+Z(j,2)*exp(i)*10^(-3)-(m32*exp(i)*10^(-3)); 
    z(j,3)=Z(j,3)+Z(j,3)*exp(i)*10^(-3)-(m33*exp(i)*10^(-3)); 
        end
    %surf/style- objet1
    s = surf(x,y,z, ...
    'LineStyle','none',...
    'FaceColor','none',...
    'Marker','.',...
    'EdgeColor','red',...
    'MarkerSize',3)
    axis on;
    daspect([1 1 1]);
    l1 = light;
    l2 = light;
    lightangle(l1,70,-40);
    lightangle(l2,-30,80);
     
     hold on;
     
    %objet2
    X1=x1+x1*exp(i)*10^(-2)-(m1*exp(i)*10^(-2)); % m1=min x1
    Y1=y1+y1*exp(i)*10^(-2)-(m2*exp(i)*10^(-2)); % m2=min y1
    Z1=z1+z1*exp(i)*10^(-2)-(m3*exp(i)*10^(-2)); % m3=min z1
    G = [X1,Y1,Z1];%nouvelle matrice
    T1 = delaunay3(G(:,1),G(:,2),G(:,3));%algo delaunay
    tetramesh(T1,G,'facecolor',[0 1 0]);%cancer reméché
     
     
    title(['Temps = ',int2str(i)])% affiche le temps qui s'écoule
    drawnow
    V(:,i)=getframe(gcf); %capture de l'image
     
    end
    numtimes = 1; %nombre d'animations
    fps = 1;%nb d'image par seconde
    movie(gcf,V,numtimes,fps) %film
    Merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 53 160
    Points
    53 160
    Par défaut
    C'est normal, regarde l'utilisation de HOLD dans la documentation.

    Dans ton cas, le plus simple consiste à mettre un CLA juste après l'itération sur i :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    for i=1:n
     
         cla
     
        for j=1:length(X)
     
    <...>
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 43
    Points
    43
    Par défaut
    ça marche

    MERCI Dutmatlab, tu me sauves la vie!!!

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

Discussions similaires

  1. Problème superpositions d'images dans ListView
    Par anto2b dans le forum Composants graphiques
    Réponses: 4
    Dernier message: 18/02/2013, 20h19
  2. Problème d'insertion d'image dans un tableau
    Par aminos40 dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 2
    Dernier message: 01/06/2007, 10h54
  3. Réponses: 4
    Dernier message: 06/12/2006, 11h29
  4. Problème d'insertion d'image dans une fenêtre.
    Par Antigonos Ier Gonatas dans le forum Tkinter
    Réponses: 2
    Dernier message: 26/08/2006, 13h44
  5. Réponses: 12
    Dernier message: 26/06/2006, 00h24

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