1)我希望制作一个动画,动画中有两个平行于xOy平面的平面,A平面一直是蓝色,B平面一直是红色。
2)我希望在三维图中放一个二维平面,z=0,x=-1到1,y=-1到1,没有网格线。在z=0平面内有一个半径0.5的圆,园内是红色,平面内圆外是蓝色。
动画?
用fill3函数,第四个参数是红绿蓝的混色值。下面是例子,圆的还能旋转
x=[-1,1,1,-1];
y=[-1,-1,1,1];
z=[0,0,0,0];
fill3(x,y,z,[0,0,1]);
hold on;
%A
xlabel('x');
ylabel('y');
zlabel('z');
%B
t=0:0.1:2*pi;
xn=0.5*cos(t);
yn=0.5*sin(t);
zn=repmat(0,1,63);
fill3(xn,yn,zn,[1,0,0]);
dt=.1; %时间间隔
t=0; %初始时间
axis([-1,1,-1,1,-1,1]);
angless=0;
znfasten = repmat(0,1,63);
ynfsaten = yn;
ynfsatenCenter = repmat(0,1,63);
while t<=10
cla;
fill3(x,y,z,[0,0,1]);
hold on;
fill3(xn,yn,zn,[1,0,0]);
z=z+0.01;%上下平移
yn=ynfsaten.*cos(angless);
zn=znfasten+ynfsaten.*sin(angless);
angless = angless+pi/12;
drawnow %每次循环画一次图
t=t+dt; %时间累加
end