我遇到这条消息,“下标索引必须是真正的正整数或逻辑。” ==>中的错误积(B(S,1),B(S,2), 'R *')。 这是我的代码
ptsIntersect=floor(ptsIntersect);
for s1=1:numBorderPoints
d1=sqrt((b(s1,1)-ptsIntersect(1,1)).^2 + (b(s1,2)-ptsIntersect(1,2)).^2);
if (d1<2)
break;
end
end
plot(b(s1,1),b(s1,2),'*')
% find second point of border in intersection
for s2=1:numBorderPoints
d2=sqrt((b(s2,1)-ptsIntersect(2,1)).^2 + (b(s2,2)-ptsIntersect(2,2)).^2);
if (d2<2)
break;
end
end
plot(b(s2,1),b(s2,2),'*')
if ( s2-s1>5)
s=(s1+s2)/2;
hold on
plot(b(s,1),b(s,2),'r*')
end
答案 0 :(得分:2)
在错误发生之前,s1
和s2
都是正整数。但是当你执行s=(s1+s2)/2
时,可能会发生s
不是整数,例如(3+2)/2=2.5
。
在命令窗口中键入s
,将显示其值。