黑马程序员技术交流社区

标题: Java初学者问题 [打印本页]

作者: kingsummerlucky    时间: 2013-3-22 18:07
标题: Java初学者问题
写一方法,如何判断两个矩形是否相交,矩形的坐标分别是(x1,y1),(x2,y2),(x3,y3),(x4,y4)

作者: 彭颖    时间: 2013-3-22 22:55
用两个点表示的矩形,只可能是正交于在x,y坐标系的,也就是各个边或平行于x轴或平行于y轴。
那么,基于这样的判断,如果两个矩形相交,那么他们的相交区域必然是一个矩形(点也算)
  1. 分别判断水平区间和垂直区间是否相交
  2.     第一个矩形:(rect1.tlx, rect1.tly), (rect1.brx, rect1.bry)
  3.     第二个矩形:(rect2.tlx, rect2.tly), (rect2.brx, rect2.bry)

  4.     判断水平 区间是否相交
  5.    if (rect1.tlx < rect2.tlx && rect1.brx > rect2.tlx) {
  6.     return true;
  7. } else if (rect2.tlx < rect1.tlx && rect2.brx > rect1.tlx) {

  8. }
  9. return false;
复制代码
------------------
昨天已经回答过了
作者: 黄玉昆    时间: 2013-3-22 23:11
请不要重复提问,谢谢
作者: 王浩威    时间: 2013-3-23 09:31
几何问题?




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2