MATLAB学习与使用:动画制作(Mobius Loops)
1、第一,莫比乌斯带(Mobius Loops)。
莫比乌斯带(Mobius Loops)是一种拓扑学结构,该结构可以用一个纸带旋转半圈再把两端粘上制作出来,其参数方程组表示如下,其中,u属于[0, 2*pi],v属于[-1, 1]。

2、第二,启动MATLAB,新建脚本,然后在脚本编辑区输入以下代码。
close all;clear all;clc
u=linspace(0,2*pi,100);
v=linspace(-1,1,100);
[U,V]=meshgrid(u,v);
x=(1+0.5*V.*cos(0.5*U)).*cos(U);
y=(1+0.5*V.*cos(0.5*U)).*sin(U);
z=0.5*V.*sin(0.5*U);
if exist('Mobius.avi')
delete('Mobius.avi')
end
S=surf(x,y,z);
view(45,75)
shading interp
aviobj=avifile('Mobius.avi','Compression','None')
for k=1:40;
u=linspace(0,2*pi*(k/40),100);
[U,V]=meshgrid(u,v);
x=(1+0.5*V.*cos(0.5*U)).*cos(U);
y=(1+0.5*V.*cos(0.5*U)).*sin(U);
z=0.5*V.*sin(0.5*U);
set(S,'XData',x,'YData',y,'ZData',z,'CData',z);
F=getframe(gcf);
aviobj=addframe(aviobj,F);
end
%close(gcf) ; %关闭图形窗口
%aviobj=close(aviobj); %关闭句柄aviobj

3、第三,点击保存和运行上述脚本。

4、第四,脚本运行过程中,看到以下莫比乌斯带(Mobius Loops)动画效果。

5、第五,回到保存脚本所在目录下,可以看到'Mobius.avi'文件。
