angle1变量具有从0到90的数据,但是statemant无法正常工作。例如,如果angle1> = 3且angle1> = 53则给出相同的结果。 我不明白是什么问题。 谢谢...
angle1=round(abs(atand((newVar(:,3)-newVar5(:,3))./(newVar(:,1)-newVar5(:,1)))))
[~,idx5] = pdist2(newVar2,newVar,'euclidean','smallest',1); % indices of nearest * for EACH X
newVar6=newVar2(idx5, :);
angle2=round(abs(atand((newVar6(:,3)-newVar5(:,3))./(newVar6(:,1)-newVar5(:,1)))))
d2=pdist2(newVar5,newVar6);
dy=d2(:)
if all(angle1(:)>53)
dxs=(sind(angle1).*dx);
else
dxs=(cosd(angle1).*dx);
end
if all(angle1(:)>=53)
dys=(sind(angle2).*dy);
else
dys=(cosd(angle2).*dy);
end
def=dxs-dys