我是靠谱客的博主 开心舞蹈,最近开发中收集的这篇文章主要介绍如何判断两个矩形是否相交,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

判断图形相交
一个简单的例子:在平面坐标里有四个圆分别以(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(”两矩形相交”);

最后

以上就是开心舞蹈为你收集整理的如何判断两个矩形是否相交的全部内容,希望文章能够帮你解决如何判断两个矩形是否相交所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部