SoloCodigo

Programación Específica => Matlab => Mensaje iniciado por: Kat00 en Lunes 27 de Abril de 2009, 19:57

Título: Función Pause
Publicado por: Kat00 en Lunes 27 de Abril de 2009, 19:57
Hola a todos. Enhorabuena por el foro, hace que sirva de ayuda para mucha gente.

Bueno, ahí va mi problemilla.

Estoy usando el guide para crear un interfaz gráfico. Bueno, el caso es que en la pantalla hay un axes en la que va dibujando varias gráficas. En Matlab 2008a utilizaba la función pause y entonces al pulsar una tecla ibas cambiando de gráfica a gráfica. Ahora lo he tenido que hacer en Matlab 2006a y poniendo el mismo código, me obliga a pulsar la tecla en la ventana de Matlab y no funciona si la pulso estando el .gif como ventana activa.

No se si me he explicado muy bien, pero a ver si podéis ayudarme :)
Título: Re: Función Pause
Publicado por: Kat00 en Viernes 1 de Mayo de 2009, 12:06
A ver, lo cuento de otra manera a ver si al menos me podeis dar una alternativa...

La idea es esta:

    t=((0:(length(data)-1))/44100).';
    plot(t(1:500),data(1:500,:));
    xlabel('t');
    legend('L','R');
%Esta gráfica se dibuja en un axes de la figura

    teclaAM=findobj(gcbf, 'tag','teclaAM');
    set (teclaAM,'Visible','on');

%teclaAM es un static text que mostrará Pulse una tecla para continuar

    pause;

%Y así , tras pulsar la tecla dibujará otra gráfica distinta en el mismo axes

    x=(data(:,1)+data(:,2))/2;
    hold on;
    plot(t(1:500),x(1:500),'.-r');
    legend('L','R','Señal mono');
    pause;

%Así sucesivamente

El problema es que para que funcione la tecla la tienes que pulsar estando activa la ventana principal de matlab y no la de mi .gif

A ver si ahora me he explicado mejor...Gracias
Título: Re: Función Pause
Publicado por: Geo en Viernes 1 de Mayo de 2009, 23:11
Parece más bien una variación de comportamiento entre versiones, ¿por qué debes pasar a una versión anterior?
Título: Re: Función Pause
Publicado por: allisap en Sábado 2 de Mayo de 2009, 18:38
una buena solucion y mas elegante es crear un PushButton en la ventana,
con esto al pulsar sobre el boton se pasaria a la siguiente grafica

Saludos
Victor Pasilla Campos
Título: Re: Función Pause
Publicado por: Kat00 en Sábado 2 de Mayo de 2009, 19:44
He tenido que pasar a una versión anterior, porque estoy haciendo el programa para estudiante de la Universidad, y la versión más moderna que tienen es esa, la 2006a.

Lo del pushbutton ya lo pensé, pero como se repite varias veces, necesitaría callbacks diferentes para cada vez que se pulse al botón...
Título: Re: Función Pause
Publicado por: allisap en Sábado 2 de Mayo de 2009, 20:11
Cita de: "Kat00"
Lo del pushbutton ya lo pensé, pero como se repite varias veces, necesitaría callbacks diferentes para cada vez que se pulse al botón...

no necesariamente, podrias usar un solo callback con una  funcion a la cual le envias como parametro un contador para determinar la grafica que corresponde

Saludos...

Victor Pasilla Campos