给定一个有向线段,起点为A(x1,y1),终点为B(x2,y2),判断任意一点M(x,y)与直线 AB的相对位置。
function weizhi=where()
clc
clear
k=input('请输入起点坐标:[x1,y1]\n:');
m=input('请输入终点坐标:[x2,y2]\n:');
n=input('请输入需要判断点的坐标:[x,y]\n:');
a=m(1)-k(1);
b=n(1)-k(1);
c=m(2)-k(2);
d=n(2)-k(2);
e=[a b;c d];
s=det(e);
if s>0
disp('n点在直线km左侧')
elseif s==0
disp('n点在直线km上')
else
disp('n点在直线km右侧')
end
plot(n(1),n(2),'.','Color','g','MarkerSize',30) % plot图像会把后面画的图像掩盖,所以要先画plot图像!
line([k(1) m(1)],[k(2) m(2)])
end