[转载]MATLAB movie 函数动态绘图
生活随笔
收集整理的這篇文章主要介紹了
[转载]MATLAB movie 函数动态绘图
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
原文地址:MATLAB?movie?函數(shù)動(dòng)態(tài)繪圖作者:小霖cheeron
MATLAB中,創(chuàng)建電影動(dòng)畫的過程分為以下四步:
step1:調(diào)用moviein函數(shù)對(duì)內(nèi)存進(jìn)行初始化(該步驟在Matlab5.3以上均可省略),創(chuàng)建一個(gè)足夠大的矩陣,使之能夠容納基于當(dāng)前坐標(biāo)軸大小的一系列指定的圖形(此處稱為幀)。
step2:調(diào)用getframe函數(shù)生成每個(gè)幀。該函數(shù)返回一個(gè)列矢量,利用這個(gè)矢量,就可以創(chuàng)建一個(gè)電影動(dòng)畫矩陣。
getframe函數(shù)可以捕捉動(dòng)畫幀,并保存到矩陣中。一般將該函數(shù)放到for循環(huán)中得到一系列的動(dòng)畫幀。
該函數(shù)格式有:
(1)F=gefframe,從當(dāng)前圖形框中得到動(dòng)畫幀
(2)F=gefframe(h),從圖形句柄h中得到動(dòng)畫幀
(3)F=getframe(h,rect),從圖形句柄h的指定區(qū)域rec中得到動(dòng)畫幀
step3:調(diào)用movie函數(shù)按照指定的速度和次數(shù)運(yùn)行該電影動(dòng)畫。
當(dāng)創(chuàng)建了一系列的動(dòng)畫幀后,可以利用movie函數(shù)播放這些動(dòng)畫幀。
該函數(shù)的主要格式有:
(1)movie(M),將矩陣M中的動(dòng)畫幀播放一次
(2)movie(M,n),將矩陣M中的動(dòng)畫幀播放n次
(3)movie(M,n,fps),將矩陣M中的動(dòng)畫幀以每秒fps幀的速度播放n次
step4:調(diào)用movie2avi函數(shù)可以將矩陣中的一系列動(dòng)畫幀轉(zhuǎn)換成視頻文件avi文件。這樣,即使脫離了matlab環(huán)境都可以播放動(dòng)畫。
具體參見:
該方法的經(jīng)典格式是:
?????? for j=1:n
????????? %
????????? %這里輸入我們的繪圖命令
????????? %
????????? M(j) = getframe;
?????? end
?????? movie(M)
%單幀顯示方法
?????? f = getframe(gcf);
?????? colormap(f.colormap);
?????? image(f.cdata);
MATLAB movie 函數(shù)動(dòng)態(tài)繪圖
電影動(dòng)畫的好處就是,運(yùn)行一次可以多次播放,甚至可以直接生成avi文件,直接獨(dú)立與Matlab環(huán)境播放。這是其它三種動(dòng)畫制作方法所不具備的。MATLAB中,創(chuàng)建電影動(dòng)畫的過程分為以下四步:
step1:調(diào)用moviein函數(shù)對(duì)內(nèi)存進(jìn)行初始化(該步驟在Matlab5.3以上均可省略),創(chuàng)建一個(gè)足夠大的矩陣,使之能夠容納基于當(dāng)前坐標(biāo)軸大小的一系列指定的圖形(此處稱為幀)。
step2:調(diào)用getframe函數(shù)生成每個(gè)幀。該函數(shù)返回一個(gè)列矢量,利用這個(gè)矢量,就可以創(chuàng)建一個(gè)電影動(dòng)畫矩陣。
getframe函數(shù)可以捕捉動(dòng)畫幀,并保存到矩陣中。一般將該函數(shù)放到for循環(huán)中得到一系列的動(dòng)畫幀。
該函數(shù)格式有:
(1)F=gefframe,從當(dāng)前圖形框中得到動(dòng)畫幀
(2)F=gefframe(h),從圖形句柄h中得到動(dòng)畫幀
(3)F=getframe(h,rect),從圖形句柄h的指定區(qū)域rec中得到動(dòng)畫幀
step3:調(diào)用movie函數(shù)按照指定的速度和次數(shù)運(yùn)行該電影動(dòng)畫。
當(dāng)創(chuàng)建了一系列的動(dòng)畫幀后,可以利用movie函數(shù)播放這些動(dòng)畫幀。
該函數(shù)的主要格式有:
(1)movie(M),將矩陣M中的動(dòng)畫幀播放一次
(2)movie(M,n),將矩陣M中的動(dòng)畫幀播放n次
(3)movie(M,n,fps),將矩陣M中的動(dòng)畫幀以每秒fps幀的速度播放n次
step4:調(diào)用movie2avi函數(shù)可以將矩陣中的一系列動(dòng)畫幀轉(zhuǎn)換成視頻文件avi文件。這樣,即使脫離了matlab環(huán)境都可以播放動(dòng)畫。
具體參見:
該方法的經(jīng)典格式是:
%-----------------------------------------------
%錄制電影動(dòng)畫?????? for j=1:n
????????? %
????????? %這里輸入我們的繪圖命令
????????? %
????????? M(j) = getframe;
?????? end
?????? movie(M)
%單幀顯示方法
?????? f = getframe(gcf);
?????? colormap(f.colormap);
?????? image(f.cdata);
%------------------------------------------------
?
此外,利用immovie函數(shù),我們可以從多幀圖像陣列中創(chuàng)建MATALB 電影動(dòng)畫。轉(zhuǎn)載于:https://www.cnblogs.com/accjsjc/p/6011603.html
總結(jié)
以上是生活随笔為你收集整理的[转载]MATLAB movie 函数动态绘图的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端性能测试工具Chrome perfo
- 下一篇: sql 日记