Changeset 1606


Ignore:
Timestamp:
08/06/09 14:11:09 (16 years ago)
Author:
Mathieu Morlighem
Message:

improved transient movie by creating an animated gif

Location:
issm/trunk/src/m/classes/public/plot
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/m/classes/public/plot/parse_options.m

    r1486 r1606  
    130130end
    131131
    132 %transient_movie_fps
    133 transient_movie_fps_values=findarg(optionstring,'transient_movie_fps');
    134 if ~isempty(transient_movie_fps_values),
    135         options_struct.transient_movie_fps=transient_movie_fps_values.value;
    136 else
    137         options_struct.transient_movie_fps=NaN;
    138 end
    139 
    140 %transient_movie_quality
    141 transient_movie_quality_values=findarg(optionstring,'transient_movie_quality');
    142 if ~isempty(transient_movie_quality_values),
    143         options_struct.transient_movie_quality=transient_movie_quality_values.value;
    144 else
    145         options_struct.transient_movie_quality=NaN;
     132%transient_movie_time
     133transient_movie_time_values=findarg(optionstring,'transient_movie_time');
     134if ~isempty(transient_movie_time_values),
     135        options_struct.transient_movie_time=transient_movie_time_values.value;
     136else
     137        options_struct.transient_movie_time=2;
    146138end
    147139
  • issm/trunk/src/m/classes/public/plot/plot_transient_movie.m

    r1485 r1606  
    3030               
    3131                if ~isnan(options_structure.transient_movie_output),
    32                         frames(i)=getframe(gcf);
     32                        set(gcf,'Renderer','zbuffer','color','white'); %fixes a bug on Mac OS X (not needed in future Matlab version)
     33                        if i==1,
     34                                %initialize images and frame
     35                                frame=getframe(gcf);
     36                                [images,map]=rgb2ind(frame.cdata,256,'nodither');
     37                                images(1,1,1,length(md.results.transient))=0;
     38                        else
     39                                frame=getframe(gcf);
     40                                images(:,:,1,i) = rgb2ind(frame.cdata,map,'nodither');
     41                        end
    3342                else
    3443                        pause(0.5)
     
    3948        if ~isnan(options_structure.transient_movie_output),
    4049                filename=options_structure.transient_movie_output;
    41                
    42                 %fps
    43                 if ~isnan(options_structure.transient_movie_fps),
    44                         fps=options_structure.transient_movie_fps;
    45                 else
    46                         fps=5;
    47                 end
    48                 %quality
    49                 if ~isnan(options_structure.transient_movie_quality),
    50                         quality=options_structure.transient_movie_quality;
    51                 else
    52                         quality=75;
    53                 end
    54                 movie2avi(frames,filename,'fps',fps,'quality',quality);
     50                imwrite(images,map,filename,'DelayTime',options_structure.transient_movie_time,'LoopCount',inf)
    5551        end
    5652
  • issm/trunk/src/m/classes/public/plot/plotdoc.m

    r1487 r1606  
    4242disp('                  - ''transient_movie_field'': field to be displayed when doing  transient_movie data display');
    4343disp('                  - ''transient_movie_output'': filename if output is desired for movie');
    44 disp('                  - ''transient_movie_fps'': fps: frames per seconds');
    45 disp('                  - ''transient_movie_quality'': quality of movie output, from 0 to 100');
     44disp('                  - ''transient_movie_time'': time for each image (default 2 seconds)');
    4645disp('                  - ''thermaltransient_results'': this will display all the time steps of a thermal transient run');
    4746disp('                  - ''importancefactors'': qmu results');
Note: See TracChangeset for help on using the changeset viewer.