平面坐标系中 如何判断某一点在一矩形区域内?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了平面坐标系中 如何判断某一点在一矩形区域内?相关的知识,希望对你有一定的参考价值。
平面坐标系中,点坐标已知,矩形四点坐标已知,如何判断?
忘了说,用matlab 编程!!!
已经搞定了,因为要编程,所以可编程性是第一位的,我采用了矩形任意两个顶点坐标与要判断的点坐标所组成的三角形的面积,这样的三角形共有4个,求面积和;然后对矩形求面积,如果两者面积相等,则要判断的点坐标在矩形内,如果前者大于后者,点坐标在矩形外.
另外,求面积时使用坐标行列式来求,很简单.
还要谢谢两位网友回答这个问题.
X1=zeros(1,30);X2=zeros(1,30);Y1=zeros(1,30);Y2=zeros(1,30);%创建全零数组
b=0;c=0;
xx=x1:pi/100:x2;yy=y1:pi/100:y2
plot(xx,y1,xx,y2,x1,yy,x2,yy);%画出矩形
for a=1:30;%假设是30个点
x=X(1,a);y=Y(1,a);%1行30列矩阵X、Y为点坐标值矩阵,提取坐标值
if([x>x1,x<x2,y>y1,y<y2])
plot(x,y,'x','LineWidth',2,'Color','green');%在矩形内画绿X
b=b+1;
X1(b)=x;Y1(b)=y;%储存点坐标
else
plot(x,y,'x','LineWidth',2,'Color','red');%不在矩形内画红X
c=c+1;
X2(c)=x;Y2(c)=y;
end
end
刚接触matlab,正好在做,应该没问题。。 参考技术A 高中学过的有一种方法
具体叫什么记不得了
具体操作如下
矩形的四条边的直线方程写出来
然后列成等于0的形式
最后改为不等式组
上面和右边的一条为小于0
下面和左边的一条为大于0
设定好条件后就可以编程了 参考技术B 还要判断?
以上是关于平面坐标系中 如何判断某一点在一矩形区域内?的主要内容,如果未能解决你的问题,请参考以下文章
百度地图多边形画区域获取节点经纬度坐标判断某一点是否在此区域内