MATLAB中的動畫設計ppt課件
《MATLAB中的動畫設計ppt課件》由會員分享,可在線閱讀,更多相關《MATLAB中的動畫設計ppt課件(16頁珍藏版)》請在裝配圖網(wǎng)上搜索。
MATLAB中的動畫設計 1 MATLAB中的動畫設計 電影動畫 擦除動畫 3 質點動畫 1 2 2 MATLAB中的動畫設計 質點動畫 1 質點動畫產(chǎn)生一個順著曲線軌跡運動的質點來操作使用comet comet3函數(shù)最簡單的動畫產(chǎn)生方式 3 MATLAB中的動畫設計 質點動畫 step1 求解出質點完整的運動軌跡坐標x y和zstep2 使用comet或者comet3直接繪制動點 設計步驟 4 MATLAB中的動畫設計 質點動畫 例1 質點繞圓軌跡運動 使用函數(shù)comet建立質點繞圓運動的動畫cleart linspace 0 2 pi 10000 x cos t y sin t plot x y 以便比較comet是否跟著軌跡走axissquare holdon comet x y 0 03 5 MATLAB中的動畫設計 質點動畫 例2 質點繞螺旋軌跡運動 使用函數(shù)comet3建立質點繞圓運動的動畫cleart 0 pi 500 10 pi plot3 sin t cos t t axissquare holdon comet3 sin t cos t t 0 5 6 MATLAB中的動畫設計 質點動畫 例3 平拋運動 平拋運動clearvx 40 t 0 0 01 10 x vx t y 9 8 t 2 2 comet x y 7 MATLAB中的動畫設計 質點動畫 例4 導彈發(fā)射 導彈發(fā)射vx 100 cos 1 4 pi vy 100 sin 1 4 pi t 0 0 001 15 x vx t y vy t 9 8 t 2 2 comet x y 8 MATLAB中的動畫設計 電影動畫 2 電影動畫從不同的視角拍下一系列對象的圖形 并保存到變量中 然后按照一定的順序像電影一樣播放 使用getframe movie函數(shù) getframe函數(shù)可以捕捉動畫幀 并保存到矩陣中 該函數(shù)的主要格式有 1 F gefframe 從當前圖形框中得到動畫幀 2 F gefframe h 從圖形句柄h中得到動畫幀 3 F getframe h rect 從圖形句柄h的指定區(qū)域rec中得到動畫幀當創(chuàng)建了一系列動畫幀后 可利用movie函數(shù)播放這些動畫幀 該函數(shù)的主要格式有 1 movie M 將矩陣M中的動畫幀播放一次 2 movie M n 將矩陣M中的動畫幀播放n次 3 movie M n fps 將矩陣M中的動畫幀以每秒fps幀的速度播放n次 9 MATLAB中的動畫設計 電影動畫 step1 調(diào)用getframe函數(shù)生成每個幀 該函數(shù)返回一個列矢量 利用這個矢量 就可以創(chuàng)建一個電影動畫矩陣 step2 調(diào)用movie函數(shù)按照指定的速度和次數(shù)運行該電影動畫 step3 調(diào)用movie2avi函數(shù)可以將矩陣中的一系列動畫幀轉換成avi視頻文件 這樣 即使脫離了matlab環(huán)境也可播放動畫 程序結構 設計步驟 10 MATLAB中的動畫設計 電影動畫 例5 繞Z軸旋轉的peak動畫 繞Z軸旋轉的Peak動畫 X Y Z peaks 30 surf X Y Z set gca visible off colormap hot shadinginterp 記錄電影fori 1 15view 45 15 i 1 30 視角的改變m i getframe 抓取畫面值endmovie m 播放畫面 11 MATLAB中的動畫設計 擦除動畫 3 擦除動畫使用Matlab的繪圖函數(shù)不斷重復繪制圖形對象 重繪過程中遞增式地改變圖形對象位置將產(chǎn)生動畫效果 使用drawnow命令 設置擦除模式 EraseMode 最常用的動畫設計方式 Matlab的圖形繪制函數(shù)允許采用不同的擦除模式來擦除原來的對象 不同的擦除模式將產(chǎn)生不同的動畫效果 擦除模式是通過沒置 EraseMode 屬性來完成的 一共有三種擦除模式 1 none 重新繪制圖形對象時不擦除原來的對象 這種模式可動態(tài)演示圖形的生成過程 如曲線和旋轉曲線的生成過程 2 background 在重新繪制圖形對象之前 用背景色重繪對象來達到擦除原來圖形對象的目的 該模式會擦除任何對象和它下面的任何圖形 3 Xor 在重新繪制圖形對象之前 只擦除原來的對象 不會擦除其他對象或圖形 這種模式能產(chǎn)生圖形對象移動的效果 12 MATLAB中的動畫設計 擦除動畫 step1 設置重繪對象的擦除模式 EraseMode 模式step2 在循環(huán)語句中使用set更改圖形的xdata ydata和zdata等坐標數(shù)據(jù) step3 使用darwnow命令刷新屏幕 程序結構 設計步驟 set h erasemode erasemode h是需要執(zhí)行動畫圖像的句柄 一般都是由line或者plot創(chuàng)建fori 1 nset h xdata xdata ydta ydata 更新圖像的坐標數(shù)據(jù)drownnow 刷新屏幕end 13 MATLAB中的動畫設計 擦除動畫 例6 隨時間衰減的正弦函數(shù) 隨時間衰減的正弦函數(shù)t 0 0 005 10 pi 產(chǎn)生曲線并用xor方式抹去舊曲線h plot t sin 2 t exp t 5 EraseMode xor set gcf Position 450 350 350 250 fori 1 200y sin 2 t i 10 exp t 5 set h ydata y 不斷更新y值drawnow end 14 MATLAB中的動畫設計 擦除動畫 例7 運動的小球 例9 時鐘演示 例8 單擺橫梁 例10 小球繞跑道運動 15 Thanks 16- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- MATLAB 中的 動畫設計 ppt 課件
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學習交流,未經(jīng)上傳用戶書面授權,請勿作他用。
鏈接地址:http://kudomayuko.com/p-6009108.html