Matlab 小球绕跑道运动

发布时间: 更新时间: 总字数:285 阅读时间:1m 作者: IP上海 分享 网址
专栏文章
  1. Matlab 小球绕跑道运动(当前)
  2. Matlab 台球模拟程序 动画演示
  3. Matlab 曲柄滑块机构
  4. Matlab 卫星绕地球旋转演示动画
  5. Matlab 电影动画(Rotate Peak)
  6. Matlab 太阳 地球 月亮 绕转演示动画
  7. 牛顿环演示的MATLAB程序

Matlab 小球绕跑道运动

代码

figure('numbertitle','off','name','Matlab Animation
Demo--matlabfan','MenuBar','none')

prompt={'请输入速度v','请输入长度L','请输入半径r'};

default={'5','10','2'};
v=5;L=10;r=2;
p=inputdlg(prompt,'输入参数',1,default);
v=str2double(p(1));
L=str2double(p(2));
r=str2double(p(3));

if v=0L=0r=0
  warndlg('MATLABFAN提醒您:输入参数必须为整数','警告')
else
  axis([0,2r+L,0,2r])
  ox1=r;oy1=r;ox2=r+L;oy2=r;
  x1=r0.015vr+L;
  y1=2rones(size(x1));
  thita=00.015vrpi;
  x2=sin(thita)r+ox2;
  y2=cos(thita)r+oy2;
  x3=r+L-0.015vr;
  y3=zeros(size(x3));
  x4=-sin(thita)r+ox1;
  y4=-cos(thita)r+oy1;
  x=[x1 x2 x3 x4];
  y=[y1 y2 y3 y4];
  plot(x,y);
  text(0,-2,['长度L=' num2str(L) ' , ' '半径r=' num2str(r) ' , ' '速度v=' num2str(v)]);
  axis equal
  set(gca,'Visible','off')
  hm=line(r,2r,'color','red','marker','.','markersize',37,'erasemode','xor');
  while 1
      for i=1length(x)
          try
              set(hm,'xdata',x(i),'ydata',y(i));
              pause(0.0003)
              drawnow
          catch
              'www.xiexianbin.cn
              return
          end
      end
  end
end

效果

Home Archives Categories Tags Statistics
本文总阅读量 次 本站总访问量 次 本站总访客数