📄 childandtoy_anim.m
字号:
global child_path_flag;
y0=input('请输入玩具的初始位置向量[x y]:');
child_path_flag=input('请输入儿童行走路线标志值(1.圆;2.正弦曲线;3.椭圆):');
options=odeset('RelTol',1e-10);
[t y]=ode45('f',[0 50],y0,options);
clf;
hold on;
if(child_path_flag==1)
[X,Xs,Y,Ys]=child1(t);
elseif(child_path_flag==2)
[X,Xs,Y,Ys]=child2(t);
else
[X,Xs,Y,Ys]=child3(t);
end
a=min(min(y(:,1)),min(X))-1;
b=max(max(y(:,1)),max(X))+1;
c=min(min(y(:,2)),min(Y))-1;
d=max(max(y(:,2)),max(Y))+1;
%axis([min(a,c) max(b,d) min(a,c) max(b,d)]);
axis([a b c d]);
axis('square');
axis('equal');
title('小孩与玩具');
stickhandle=line('Color','blue','EraseMode','xor','LineStyle','-','XData',[],'YData',[]);
for k=1:length(t)-1
plot([X(k) X(k+1)],[Y(k) Y(k+1)],'-','Color','blue','EraseMode','none');
plot([y(k,1) y(k+1,1)],[y(k,2) y(k+1,2)],'-','Color','green','EraseMode','none');
set(stickhandle,'XData',[X(k+1) y(k+1,1)],'YData',[Y(k+1) y(k+1,2)]);
drawnow;
pause(0.1);
end
hold off;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -