MATLAB: How to create a movie with different plot components

getframemovie

I am animating some mechanical parts. For each time interval several "mechanical parts" change their positions. My problem is that my program will not clear the plots from the previous time intervals, so at the end the figure becomes a mix of all time intervals.
figure(1)
set(gca,'nextplot','replacechildren');
for t=1:(2*pi/w1)+1
Calculations...
plot([A1(1) A2(1)],[A1(2) A2(2)],'r.')
plot([x1 x2],[y1 y2],'k');
plot([A1(1) x1],[A1(2) y1],'b-')
plot([A2(1) x2],[A2(2) y2],'b-')
plot([P1(1);P2(1)],[P1(2);P2(2)],'go')
hold on
F(t)=getframe;
end
%Make a movie
movie(F,1)
I have used exactly the same method earlier and suceeded, but I have never had more than one plot for each time interval. How can I replace the previous image?
Best regards,
Audun Yrke

Best Answer

To clear the previous sample, try :
for t=1:(2*pi/w1)+1
%Calculations...
plot([A1(1) A2(1)],[A1(2) A2(2)],'r.');
hold on;
plot([x1 x2],[y1 y2],'k');
plot([A1(1) x1],[A1(2) y1],'b-')
plot([A2(1) x2],[A2(2) y2],'b-')
plot([P1(1);P2(1)],[P1(2);P2(2)],'go')
hold off;
F(t)=getframe;
end
Adjust the axes for stable sequence.