set(gcf,'doublebuf','on','color','w','name','Walker','numbertitle','off')
set(gca,'pos',get(gca,'pos')+[0 .07 0 0])
load walkers
X = reshape((F(:,1)+M(:,1))/2,15,3);
L = {[1 5],[5 12],[2 3 4 5 6 7 8],[9 10 11 12 13 14 15]};
for k = 1:4
p(k) = line(X(L{k},1),X(L{k},2),X(L{k},3),'marker','o', ...
'markersize',10,'linestyle','-','erasemode','background');
end
set(p(1),'tag','head','userdata',zeros(1,3));
axis([-750 750 -750 750 0 1500])
set(gca,'xtick',[],'ytick',[],'ztick',[])
view(160,10)
period = 151.5751;
omega = 2*pi/period;
t = 0;
while get(stop,'value') == 0
s= [1 1 1 1 1 0];
t = t + 1;
c = [sin(omega*t); cos(omega*t); sin(2*omega*t); cos(2*omega*t)];
X = (F+M)/2;
w = [1;-0.9942;-0.1079;0.2146;-0.9767];
X = reshape(X*w,15,3);
H = get(p(1),'userdata');
e = ones(size(H,1),1);
XH = [H+X(e,:); X(5,:)];
set(p(1),'xdata',XH(:,1),'ydata',XH(:,2),'zdata',XH(:,3))
for k = 2:4
set(p(k),'xdata',X(L{k},1),'ydata',X(L{k},2),'zdata',X(L{k},3));
end
pause(.0001)
end;