前言
matlab是一款非常著名的科学计算和仿真软件,以其强大的数学库、数据可视化功能和扩展工具箱而闻名,这里利用matlab绘制了圆的四种摆线的形成动画,话不多言,直接上代码。
圆滚线
%画圆滚线
t=0:pi/100:2*pi;
r=1; %圆的半径
v=1.5; %圆心滚动的速度
w=v/r; %圆滚动的角速度
s=0;
figure;
title('圆滚线');
hold on;
axis equal;
axis([-r 2*pi*r+r -r r]);
for time=0:0.1:2*pi/w
s=v*time;
x=s+r*cos(t);
point_x = s+r*cos(-pi/2-w*time);
y=r*sin(t);
point_y = r*sin(-pi/2-w*time);
h=plot(x,y,'r');
l=plot([s point_x],[0 point_y],'-r');
if(abs(time-0)<1e-3)
plot(point_x,point_y,'.g');
res_x=point_x;
res_y=point_y;
%生成第一张图片,并写入gif文件
frame=getframe(gcf);
imind=frame2im(frame);
[imind,cm]=rgb2ind(imind,256);
imwrite(imind,cm,'圆滚线.gif','gif','Loopcount',inf,'DelayTime',1e-3);
else
plot([res_x point_x],[res_y point_y],'-g');
res_x=point_x;
res_y=point_y;

最低0.47元/天 解锁文章
2896

被折叠的 条评论
为什么被折叠?



