Animation 3D MATLAB
Résolu/Fermé
Irene_Adler
Messages postés
129
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
9 juillet 2011
-
7 juil. 2008 à 18:51
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 - 8 juil. 2008 à 17:34
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 - 8 juil. 2008 à 17:34
A voir également:
- Animation 3D MATLAB
- Google maps satellite 3d - Guide
- Paint 3d mac - Télécharger - Dessin & Illustration
- Smartshow 3d - Télécharger - Visionnage & Diaporama
- Logiciel 3d architecture gratuit - Télécharger - Architecture & Déco
- Blender 3d gratuit - Télécharger - 3D
5 réponses
Sacabouffe
Messages postés
9427
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
29 mai 2009
1 835
8 juil. 2008 à 00:34
8 juil. 2008 à 00:34
Salut
OpenFunwaveForm1(tab(bg:ed),mx,ny); zlim([-zl zl]);A plus
Irene_Adler
Messages postés
129
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
9 juillet 2011
18
8 juil. 2008 à 17:12
8 juil. 2008 à 17:12
LoL! Merci Sacabouffe!
J'ai corrigé d'autres erreurs:
REMARQUE: zl=max(abs(Z)); donne un vecteur car Z est une matrice 101x101, il fallait donc faire une boucle pour trouver le max (il y a sans doute une manière plus simple...)
voici donc le programme final:
function animate(nb,mx,ny)
reruns=1; % number of times movie is to play
fps=5; % frames per second
nframes = nb; % number of frames in the movie
Frames = moviein(nframes); % initialize the matrix 'Frames'
title('FUNWAVE MOVIE')
colormap('jet')
map=jet;
fid=fopen('animation.dat');
tab=fscanf(fid,'%s',[401]);
bg=1;
ed=12;
[X,Y,Z]=OpenFunwaveForm1(tab(bg:ed),mx,ny);
k=max(abs(Z(:,1)));
for j=2:ny
if k<max(abs(Z(:,j)))
k=max(abs(Z(:,j)))
end
end
k=k+k;
zlim([-k k]);
view(-90,0);
Frames(:,1)=getframe
for i=2:nb
bg=bg+12
ed=ed+12
OpenFunwaveForm1(tab(bg:ed),mx,ny);
zlim([-k k]);
view(-90,0);
Frames(:,i)=getframe;
end
% Now play the movie:
%movie(Frames,reruns,fps)
% Now save the movie as an mpeg file for use on the Web:
map=colormap
% mpgwrite(Frames,map,'funwave.mpg')
return
J'ai corrigé d'autres erreurs:
REMARQUE: zl=max(abs(Z)); donne un vecteur car Z est une matrice 101x101, il fallait donc faire une boucle pour trouver le max (il y a sans doute une manière plus simple...)
voici donc le programme final:
function animate(nb,mx,ny)
reruns=1; % number of times movie is to play
fps=5; % frames per second
nframes = nb; % number of frames in the movie
Frames = moviein(nframes); % initialize the matrix 'Frames'
title('FUNWAVE MOVIE')
colormap('jet')
map=jet;
fid=fopen('animation.dat');
tab=fscanf(fid,'%s',[401]);
bg=1;
ed=12;
[X,Y,Z]=OpenFunwaveForm1(tab(bg:ed),mx,ny);
k=max(abs(Z(:,1)));
for j=2:ny
if k<max(abs(Z(:,j)))
k=max(abs(Z(:,j)))
end
end
k=k+k;
zlim([-k k]);
view(-90,0);
Frames(:,1)=getframe
for i=2:nb
bg=bg+12
ed=ed+12
OpenFunwaveForm1(tab(bg:ed),mx,ny);
zlim([-k k]);
view(-90,0);
Frames(:,i)=getframe;
end
% Now play the movie:
%movie(Frames,reruns,fps)
% Now save the movie as an mpeg file for use on the Web:
map=colormap
% mpgwrite(Frames,map,'funwave.mpg')
return
Sacabouffe
Messages postés
9427
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
29 mai 2009
1 835
8 juil. 2008 à 17:20
8 juil. 2008 à 17:20
Salut
Oui il y a pluys simple. J'avais pas fait gaffe à ce détail dans ton code, j'avais juste regardé ton souci d'axe Z.
Oui il y a pluys simple. J'avais pas fait gaffe à ce détail dans ton code, j'avais juste regardé ton souci d'axe Z.
k=max(max(abs(Z)));A plus
Irene_Adler
Messages postés
129
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
9 juillet 2011
18
8 juil. 2008 à 17:32
8 juil. 2008 à 17:32
C'est Vrai (j'adore me compliquer la vie ;D )
Merci et à plus!
Merci et à plus!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Sacabouffe
Messages postés
9427
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
29 mai 2009
1 835
8 juil. 2008 à 17:34
8 juil. 2008 à 17:34
De rien :-D
A plus
A plus