如何判断两个矩形是否相交

判断图形相交
一个简单的例子:在平面坐标里有四个圆分别以(2,2),(2,-2),(-2,-2),(-2,2)为圆心,现取平面内任意一点,问其是否落于圆内。
算法思路:四个圆关于原点中心对称,可以对所求点取绝对值,放在第一象限内求解,若所求点与圆心距离小于半径,则其落于圆上。
伪代码:
double a,b;
scanf("%d%d",&a,&b);
a=fabs(a);
b=fabs(b);
if((a-2)(a-2)+(b-2)(b-2)<=1)
printf(”所取的点落于圆上”);
else
printf(“所取的点落于圆外”);

如何判断两个矩形是否相交可以采取类似的思想,用easyx所做的矩形有四个参数,分别代表矩形左上角和右下角的点。当两矩形相交(相切也算在内)则两个矩形x轴两点最大距离之差小于等于其长度之和,同理y轴坐标之差也小于等于其长度之和。
例如:
rectangle(a,b,c,d);
rectangle(w,x,y,z);
if(fab(c-a)+fab(y-w)<=fab(y-a)&&fab(d-b)+fab(z-x)<=fab(z-b))
printf(”两矩形相交”);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值