社区
JavaScript
帖子详情
如何判断两个矩形是否交叉?
itboy3000
2004-10-10 10:16:52
矩形ABCD A(X1,Y1)-C(X2,Y2)
矩形MNOP M(X3,Y3)-O(X4,Y4)
function IsCross(X1,Y1,X2,Y2,X3,Y3,X4,Y4){
//return true
//return false
}
...全文
147
9
打赏
收藏
如何判断两个矩形是否交叉?
矩形ABCD A(X1,Y1)-C(X2,Y2) 矩形MNOP M(X3,Y3)-O(X4,Y4) function IsCross(X1,Y1,X2,Y2,X3,Y3,X4,Y4){ //return true //return false }
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cxz7531
2004-10-11
打赏
举报
回复
to cybernaute(思客)
在计算机图形学中,一般考虑任意形状的四边形,而且可以任意摆放。必须采用矢量变换、微分几何的办法。这个例子很简单,只判断顶点就完事了
cxz7531
2004-10-11
打赏
举报
回复
刚才的程序有点小错,正确的如下
function IsCross(x1,y1,x2,y2,x3,y3,x4,y4){
if(
(isbet(x1,x3,x4) && isbet(y1,y3,y4)) ||
(isbet(x2,x3,x4) && isbet(y1,y3,y4)) ||
(isbet(x1,x3,x4) && isbet(y2,y3,y4)) ||
(isbet(x2,x3,x4) && isbet(y2,y3,y4))
)
{
return true;
}else
{
return false;
}
}
function isbet(a,b,c){
if((a<c ) && (a>b)){
return true;
}else{
return false;
}
}
cybernaute
2004-10-11
打赏
举报
回复
计算机图形学里也是用的这种方法,没错的。
直接判断顶点吧!
cxz7531
2004-10-11
打赏
举报
回复
function IsCross(X1,Y1,X2,Y2,X3,Y3,X4,Y4){
if(
((x3<x1<x4) && (y3<y1<y4)) ||
((x3<x2<x4) && (y3<y1<y4)) ||
((x3<x1<x4) && (y3<y2<y4)) ||
((x3<x2<x4) && (y3<y2<y4))
)
{
return true;
}else
{
return false;
}
}
风斧
2004-10-11
打赏
举报
回复
看来楼主对纲领性的意见不感兴趣。
gaofaq
2004-10-11
打赏
举报
回复
一个包含于另一个算交叉不?
笨笨兔兔兔兔兔
2004-10-11
打赏
举报
回复
如果x1<x2 and x3<x4 and y1<y2 and y3<y4 ,我那天写的就是对的
如果不是的话可以交换一下再判断
风斧
2004-10-11
打赏
举报
回复
最笨的方法:直接根据顶点坐标,写上一堆|| &&
好的方法:我想不出来。
是是非非
2004-10-11
打赏
举报
回复
function IsCross(x1,y1,x2,y2,x3,y3,x4,y4){
return ((isbet(x1,x3,x4) && isbet(y1,y3,y4)) ||
(isbet(x2,x3,x4) && isbet(y1,y3,y4)) ||
(isbet(x1,x3,x4) && isbet(y2,y3,y4)) ||
(isbet(x2,x3,x4) && isbet(y2,y3,y4)));
}
function isbet(a,b,c){return ((a<c ) && (a>b));}
相关推荐
机器学习之模型评估与选择视频教学
本视频教学课程主要讲解经验误差与过拟合问题,学习器的评估方法(留出法,
交叉
验证法,自助法,调参与终模型),性能度量(错误率与精度,查准率和查全率,ROC与AUV,代价敏感错误率与代价曲线),比较检验(假设检验,
交叉
t检验,其他检验),偏差与反差等知识点。
如何
判断
两个
矩形
是否
相交
如果
两个
矩形
相交,则必然存在线条
交叉
,而能
交叉
的线条只有横线和竖线,两根横线或两根竖线都不可能
交叉
。所以,这个问题就转化成寻找
是否
存在
交叉
的横线与竖线。 另外,A线与B线
交叉
等价于B线与A线
交叉
,所以,只要写一个函数就足够用了,多调用几次,反正计算机是专门做简单而又烦琐的工作的。 下面是这个函数:
判断
一条横线和一条竖线
是否
交叉
。该函数的参数分别是:横线左、横线右,横线Y,竖线上,竖线下
两个
矩形
交叉
函数 c++
两个
矩形
交叉
函数 c 是指一个可以
判断
两个
矩形
是否
有
交叉
部分的函数。通常情况下,这个函数会接受
两个
矩形
的参数,然后返回一个布尔值,表示这
两个
矩形
是否
有
交叉
部分。如果
两个
矩形
有
交叉
部分,函数返回 True,否则返回 False。
交叉
函数常常用在计算机图形学和计算机游戏开发中,以便
判断
物体
是否
碰撞。 ...
如何
判断
两个
矩形
是否
有重叠部分 (某公司校园招聘笔试试题)
如何
判断
两个
矩形
是否
有重叠部分 (某公司校园招聘笔试试题)
C#:如何
判断
两个
矩形
是否
相交
假设有
两个
矩形
a、b,如果要求
两个
矩形
在平面中
是否
相交?
发帖
JavaScript
JavaScript
Web 开发 JavaScript
复制链接
扫一扫
8.7w+
社区成员
22.4w+
社区内容
Web 开发 JavaScript
社区管理员
加入社区
获取链接或二维码
帖子事件
创建了帖子
2004-10-10 10:16
社区公告
暂无公告