代码效果见 视频:
MATLAB爱心轨迹动画源代码:
x1=linspace(-2,2,200)
x2=linspace(0,2,100)
x3=linspace(-2,0,100)
y1=1.2*(1-(abs(x1)-1).^2).^0.5
y2=1.8*(acos(1-abs(0.5*x2+1))-pi)
y3=1.8*(acos(1-abs(0.5*x3-1))-pi)
set(gca,'XLim',[-2.5,2.5],'YLim',[-3.5,1.5])
hold on
comet(x1,y1)
hold on
comet(-x3,y3)
hold on
comet(-x2,y2)
MATLAB爱心放大动画源代码:
x01=linspace(-2,2,200)
x02=linspace(0,2,100)
x03=linspace(-2,0,100)
y01=1.2*(1-(abs(x01)-1).^2).^0.5
y02=1.8*(acos(1-abs(0.5*x02+1))-pi)
y03=1.8*(acos(1-abs(0.5*x03-1))-pi)
for i=0:500
x1=x01*i/500
x2=x02*i/500
x3=x03*i/500
y1=y01*i/500
y2=y02*i/500
y3=y03*i/500
plot(x1,y1,'Color',[1 0 0])
hold on
plot(x2,y2,'Color',[1 0 0])
hold on
plot(x3,y3,'Color',[1 0 0])
set(gca,'XLim',[-2.5,2.5],'YLim',[-3.5,1.5])
pause(0.01)
end
MATLAB爱心跳动动画源代码:
x01=linspace(-2,2,200)
x02=linspace(0,2,100)
x03=linspace(-2,0,100)
y01=1.2*(1-(abs(x01)-1).^2).^0.5
y02=1.8*(acos(1-abs(0.5*x02+1))-pi)
y03=1.8*(acos(1-abs(0.5*x03-1))-pi)
for t=0:10
for i=0:25
x1=x01*(1+i/100)
x2=x02*(1+i/100)
x3=x03*(1+i/100)
y1=y01*(1+i/100)
y2=y02*(1+i/100)
y3=y03*(1+i/100)
clf
plot(x1,y1,'Color',[1 0 0])
hold on
plot(x2,y2,'Color',[1 0 0])
hold on
plot(x3,y3,'Color',[1 0 0])
set(gca,'XLim',[-3,3],'YLim',[-4,2])
pause(0.05)
end
for j=0:25
i=25-j
x1=x01*(1+i/100)
x2=x02*(1+i/100)
x3=x03*(1+i/100)
y1=y01*(1+i/100)
y2=y02*(1+i/100)
y3=y03*(1+i/100)
clf
plot(x1,y1,'Color',[1 0 0])
hold on
plot(x2,y2,'Color',[1 0 0])
hold on
plot(x3,y3,'Color',[1 0 0])
set(gca,'XLim',[-3,3],'YLim',[-4,2])
pause(0.05)
end
end
MATLAB爱心3维绘画源代码:
x01=linspace(-2,2,200)
x02=linspace(0,2,100)
x03=linspace(-2,0,100)
y01=1.2*(1-(abs(x01)-1).^2).^0.5
y02=1.8*(acos(1-abs(0.5*x02+1))-pi)
y03=1.8*(acos(1-abs(0.5*x03-1))-pi)
for i=0:200
z1=linspace(1-(i/200)^2,1-(i/200)^2,200)
z2=linspace(1-(i/200)^2,1-(i/200)^2,100)
x1=x01*i/200
x2=x02*i/200
x3=x03*i/200
y1=y01*i/200
y2=y02*i/200
y3=y03*i/200
plot3(x1,z1,y1,'Color',[1 0 0])
hold on
plot3(x2,z2,y2,'Color',[1 0 0])
hold on
plot3(x3,z2,y3,'Color',[1 0 0])
hold on
plot3(x1,-z1,y1,'Color',[1 0 0])
hold on
plot3(x2,-z2,y2,'Color',[1 0 0])
hold on
plot3(x3,-z2,y3,'Color',[1 0 0])
set(gca,'XLim',[-2.5,2.5],'ZLim',[-3.5,1.5],'YLim',[-2.5,2.5])
end