以電影方式來產生動畫,可由下列兩個步驟來達成:
- 使用 getframe 指令來抓取圖形做為電影的畫面,每個畫面都是以一個行向量的方式,置放於整個代表電影的矩陣。
- 使用 movie 指令來播放電影,並可指定播放的重複次數及每秒播放的畫面數目。
在下例中,我們將以不同的角度來顯示 peaks 函數,並將其結果以電影的方式來呈現動畫。
(上圖僅僅秀出最後一個 frame 的畫面。你必須親自執行此範例,才能看到動畫效果。)
在上述範例中,我們使用 getframe 指令來將圖形視窗的資料儲存到矩陣 M,最後使用 movie(M, 3) 來連續播放存放於矩陣 M 的電影資料三次。
以下這個範例,則是將 peaks 函數畫在圓盤上,然後再變換此函數的高度,以動畫呈現:
(上圖僅僅秀出最後一個 frame 的畫面。你必須親自執行此範例,才能看到動畫效果。)
下面這個範例,則是改變影像的色盤矩陣,讓影像出現「從正片變到負片」的效果,然後再變回來:
(上圖僅僅秀出最後一個 frame 的畫面。你必須親自執行此範例,才能看到動畫效果。)
在上述範例中,正片(如下第一圖)的色盤矩陣是 map,而 1-map 則是負片(如下第二圖)的色盤矩陣,因此我們在抓影片時,讓色盤矩陣進行漸進式的變化,因此呈現的電影就有「從正片變到負片」的效果。另外,movie(M, -5) 代表電影將播放 5 次,但由於第二個參數是負數,所以每次播放會包含一次「正向播放」及一次「逆向播放」。
MATLAB程式設計:入門篇