首页 > 解决方案 > 如何在 MATLAB 中同时运行两个循环?

问题描述

我正在尝试在 MATLAB 中模拟车辆的运动。输出将在图中。对于运动,我正在使用 hgtransform 函数。我需要同时运行这些 for 循环。请给我一个方法。我什至愿意接受任何其他方法,从中可以同时显示两个点的运动。我需要在一个平原上移动点。

for t=linspace(0,1,100)
    g.Matrix = makehgtform('translate',ptg2 + t*(ptg3-ptg2));
    drawnow;
    waitfor(r);
end

time = r.TotalElapsedTime;
fprintf('Iteration: %f - Time Elapsed: %f\n',i,time)
r = rateControl(21);

for t=linspace(0,1,100)
    g.Matrix = makehgtform('translate',ptg3 + t*(ptg4-ptg3));
    drawnow;
    waitfor(r);
end

time = r.TotalElapsedTime;
fprintf('Iteration: %f - Time Elapsed: %f\n',i,time)

标签: matlabmatlab-figure

解决方案


您可以为每个操作设置一个计时器

或者,只有一个包含所有时间步长的 for 循环,以及每个操作的 if 语句,以确定是否应在该时间步运行该操作。


推荐阅读