在MATLAB中动画CO2电机

时间:2014-02-17 19:40:19

标签: matlab

我正在尝试在Matlab中重新创建这个引擎:http://www.animatedengines.com/co2.html。我希望使用手柄图形来动画所有的运动部件。我已经编程了所有固定部件。现在我正在努力让球上下移动,但我无法弄清楚它是如何工作的。我不清楚如何处理手柄以及我需要做些什么来让球移动。任何见解将不胜感激。

1 个答案:

答案 0 :(得分:0)

以下是围绕较大圆圈移动的小圆圈的示例:

%# create large-circle coordinates
t = 0:pi/100:2*pi;
xc = cos(t);
yc = sin(t);

%# create small-circle coordinates
xs = 0.1*cos(t);
ys = 0.1*sin(t);

%# plot large circle
figure,plot(xc,yc,'r');

%# plot small circle at first position
%# and capture handle
smallCircleH = plot(xs+xc(1),ys+yc(1),'b');

%# loop to update the handle of the small circle
for tIdx = 1:length(t)
   %# update position of small circle
   set(smallCircleH,'xData',xs+xc(tIdx),'yData',ys+yc(tIdx));
   %# wait a bit to appreciate the beauty
   pause(0.1);
end