afzal@cui.unige.ch (Afzal Ballim) (11/22/90)
Hi, can anyone tell me a quick algorithm to check for overlap of two rectangles that lie in the same plane and have the same orientation? (Note: must allow for the possibility that one is totally included in the other.) Thanks -Afzal Ballim afzal@divsun.unige.ch
p_davis@epik.enet.dec.com (Peter Davis) (11/27/90)
In article <3842@cui.unige.ch>, afzal@cui.unige.ch (Afzal Ballim) writes... > > can anyone tell me a quick algorithm to check for overlap of >two rectangles that lie in the same plane and have the same orientation? >(Note: must allow for the possibility that one is totally included in >the other.) > If the sides are parallel to the axes, it's easy: If the high X of one is less then the low X of the other, or the high Y of one is less than the low Y of the other, they DON'T overlap. Otherwise, they do. This can be determined in 4 comparisons: if ((hi_x1 < lo_x2) || (hi_x2 < lo_x1) || (hi_y1 < lo_y2) || (hi_y2 < lo_y1)) { They don't overlap } else { They do } If the sides are not parallel to the principal axes, but they have the same orientation (ie, the sides are parallel to each other), then it might be easiest to just transform the coordinates so they are parallel to the X and Y axes.