我正在尝试在Matlab中为两个2D对象创建碰撞检查。 我有两个物体,一个稳定(障碍物)和一个移动物体。当它们重叠时,我想得到消息“错误”。
问题在于虽然它有效但我认为这种方法不容易重复使用,我认为“矩形”类型的对象不适合我想要做的事情。
还有其他想法吗?
我所做的是:
close all;
clear all;
for i = 0 : 0.1 : 5;
aXmin = i;
aYmin = 3.5 *sin(i);
aXmax = aXmin + 1;
aYmax = aYmin*sin(i) + 2;
set(rectangle, 'Position', [aXmin, aYmin, 1, 1]);
bXmin = 3;
bYmin = 3;
bXmax = 3.4;
bYmax = 7;
set(rectangle, 'Position', [bXmin, bYmin, 0.4, 4]);
if ((aXmin < bXmax && aXmax > bXmin) && (aYmin < bYmax && aYmax > bYmin))
display('error')
else
display('OK')
end
pause(0.1);
end