以下m文件可以绘制小球沿着螺旋线运动的动画,其实就是两个步骤:
画出螺旋线背景
改变小球的位置,不断刷新图像,看起来就是动画了
完整的m文件代码如下
function f = ballw( K,ki )
%ballw.m演示红色小球沿着一条封闭螺旋线运动的实时动画
%仅演示实时动画的调试格式为ballw(K)
%既演示实时动画又拍摄照片的调试格式为f = ballw(K,ki)
%K红球运动的循环次数(不小于1)
%ki指定拍摄照片的瞬间,取1到1034之间的任意整数
%f存储拍摄的照片数据,可用image(f.cdata)观察照片
%产生封闭的运动轨迹
t1 = (0:1000)/1000 * 10 * pi;
x1 = cos(t1);
y1 = sin(t1);
z1 = -t1;
t2 = (0:10)/10;
x2 = x1(end) * (1-t2);
y2 = y1(end) * (1-t2);
z2 = z1(end) * ones(size(x2));
t3 = t2;
z3 = (1-t3)* z1(end);
x3 = zeros(size(z3));
y3 = x3;
t4 = t2;
x4 = t4;
y4 = zeros(size(x4));
z4 = y4;
x = [x1 x2 x3 x4];
y = [y1 y2