代码效果见 视频:
        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