作者:louis_bana | 来源:互联网 | 2023-05-28 14:22
所以我有两个矩形,用户必须输入左下角(x1,y1,但y1总是0)和右上角(x2,y2),我必须找出其中一个是否完全在里面另一个(或者它们完全一样).
并且它会变得有点困难,因为我实际上必须制作程序,以便用户可以决定他们想要创建多少个矩形,但起初我很乐意知道如何检查2个矩形的情况.
1> aerokite..:
下面是比较内部矩形的边和外部矩形的边
if Right2 Left1 && Top2 > Top1 && Bottom2
执行:
struct RECT
{
double x,y, w,h;
RECT(double a,double b,double c,double d)
{
x=a; y=b; w=c; h=d;
}
};
bool contains(RECT R1, RECT R2)
{
if ( (R2.x+R2.w) <(R1.x+R1.w)
&& (R2.x) > (R1.x)
&& (R2.y) > (R1.y)
&& (R2.y+R2.h) <(R1.y+R1.h)
)
{
return true;
}
else
{
return false;
}
}
不应该这样吗?"如果Right2 Left1 && Top2> Top1 && Bottom2
2> lared..:
好吧,根据定义,如果内部矩形的所有点都在外部矩形内,则一个矩形在另一个内部.使用一些几何体,您可以将其煮沸以检查内部矩形的两个相对角是否在外部矩形中.