A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Animações em MATLAB Luiz Gustavo Supriano Roberto Basting Junior Universidade Estadual Paulista Campus de Rio Claro.

Apresentações semelhantes


Apresentação em tema: "Animações em MATLAB Luiz Gustavo Supriano Roberto Basting Junior Universidade Estadual Paulista Campus de Rio Claro."— Transcrição da apresentação:

1 Animações em MATLAB Luiz Gustavo Supriano Roberto Basting Junior Universidade Estadual Paulista Campus de Rio Claro

2 Introdução O MATLAB é um sistema interativo cujo elemento básico de informação é uma matriz A partir das matrizes conseguimos plotar seus respectivos gráficos Plotando essa seqüência de gráficos sobrepostos, podemos gerar uma animação

3 Como plotar gráficos Existem dois tipos de gráficos em Matlab: gráficos 2D e gráficos 3D Gráficos 2D: Plot: função básica para desenhar gráficos em 2D exemplo: plot(x,y) onde: x é a definição do intervalo que queremos plotar y é a função que desejamos plotar

4 Como plotar gráficos Gráficos 3D: Curvas: –plot3(x,y,t) Superfícies: –surf(X,Y,Z) => superfície preenchida –mesh(X,Y,Z) => malha

5 Animação Animação = seqüência de gráficos plotados sobrepostos Requisitos: Saber o que se deseja animar Descobrir as funções que serão utilizadas Gerar uma matriz de posição

6 Animação Objetivos: Melhor análise de determinados fenômenos através de recursos visuais Visualização das iterações de uma função Simulação de situações reais Criação de filmes quando os cálculos exigem um tempo significativo e as imagens resultantes são bastantes complexas

7 Como animar? O Matlab possui funções específicas para criação de animações (vídeos): Avifile (nome_arquivo.avi' ) gera arquivo avi para salvar a animação Close ( ponteiro do arquivo ) Fecha o arquivo de filme.

8 Como animar? Getframe retorna cada pixel da imagem para a variável de frames ; Addframe ( ponteiro do arquivo,variável de frames ) copia cada quadro do gráfico plotado para o final do arquivo de vídeo; Axis([xi xf yi yf zi zf]) Fixa o tamanho dos eixos das coordenadas;

9 Como animar? Movie(array_pixel) executa o filme Movie(array_pixel,n) executa o filme n vezes Aviread(nome_arquivo) lê um arquivo de filme avi

10 Exemplos mov = avifile('animaçao1.avi') t = 0:pi/100:10*pi; for i=0:1:50 plot3(sin(t+i).*cos(t+i),sin(t+i),t+i) hold on axis off axis([ ]) F=getframe mov = addframe(mov,F); end mov=close(mov); Animação gerada

11 Exemplos video=avifile('trajetoria.avi') s0=20; v0=15; a=2; for i=1:5:100 y=s0+v0*i+(a*(i.^2))/2; xlabel('tempo'); ylabel('espaço'); plot(i,y,'bo'); hold on; axis off; F=getframe; video=addframe(video,F); end video=close(video) Animação gerada

12 Exemplos m=avifile('superficie.avi') x=-3:3; y=1:5; [X,Y]=meshgrid(x,y); for i=-100:1 Z=((X+Y).^2)/2-(X.^3); [X,Y,Z]=peaks(49) surfl(X,Y,Z./i); axis([ ]) axis off; F=getframe; m=addframe(m,F) end m=close(m) Animação gerada

13 Exemplos function exemplo=funcao(t,y) B1=1; B2=1; B3=1; A1=1; A2=1; exemplo = [y(2);(-(y(1)-y(3))/B1)/A1; y(4);(-(y(3)- y(5))/B2 - (y(1)-y(3))/B1)/A2; y(6); (-(y(5)/B3 - (y(3)-y(5))/B2))/A2; ]; m=avifile('teste5.avi') yo = [ ]; for tspan=1:0.05:10 [t,y] = tspan],yo); plot(t,y(:,1)); f=getframe; m=addframe(m,f) end m=close(m) Animação gerada

14 Exemplos function yprime=vdpol(t,y) a=0.398; b=2; c=4; yprime = [-(y(2)+y(3));y(1)+a.*y(2); b+y(3).*(y(1)-c)]; m=avifile('teste2.avi'); yo = [0.1; 0.1; 0.1]; for tspan=1:5:1000 [t,y] = tspan],yo); plot(t,y(:,3)); f=getframe m=addframe(m,f) end m=close(m) Animação gerada

15 Exemplos function yprime=vdpol(t,y) a=0.398; b=2; c=4; yprime = [-(y(2)+y(3));y(1)+a.*y(2); b+y(3).*(y(1)-c)]; m=avifile('eod.avi'); yo = [0.1; 0.1; 0.1]; for t=1:5:1000 [t,y] = t],yo); plot(y(:,1),y(:,3)); f=getframe m=addframe(m,f) end m=close(m); Animação gerada

16 Bibliografia MATLAB 6 : curso completo Duane Hanselman, Bruce Littlefield Tradução Cláudia Sant'Ana Martins Editora Prentice Hall, São Paulo Amaro, R.; Takahagi, D. N. Seminário: Animação em Matlab Bovolenta, J. E.; Coyado, A. F. Seminário: Matlab

17 Contato Luiz Gustavo Supriano – Roberto Basting Junior – Universidade Estadual Paulista Instituto de Geociências e Ciências Exatas Departamento de Estatística, Matemática Aplicada e Computação


Carregar ppt "Animações em MATLAB Luiz Gustavo Supriano Roberto Basting Junior Universidade Estadual Paulista Campus de Rio Claro."

Apresentações semelhantes


Anúncios Google