创作电影

优质
小牛编辑
137浏览
2023-12-01

在布朗运动的例子中,若增加点的数目,例如n = 300s = .02, 运动就不是很流畅了;完成每一步要花太多时间。这时,如果保存预定数目的画面为位图并以电影方式回放则会比较有效。

首先,确定画面数,譬如

    nframes = 50;
    

然后,跟往前一样设定第一幅图,不是用默认的EraseMode (正态).

    x = rand(n,1)-0.5;
    y = rand(n,1)-0.5;
    h = plot(x,y,'.');
    set(h,'MarkerSize',18);
    axis([-1 1 -1 1])
    axis square
    grid off
    

生成电影并用getframe捕捉每一画面。

    for k = 1:nframes
       x = x + s*randn(n,1);
       y = y + s*randn(n,1);
       set(h,'XData',x,'YData',y)
       M(k) = getframe;
    end
    

最后,放映电影30次。

    movie(M,30)