Algorithm to identify area in common?



Hi All:

Suppose I have two rectangles existing in space (memory), and these two
rectangles are represented by their bounding box coorinates: top left
corner (x1, y1), bottom right corner (x2, y2). Is there an algorithm
that, when given the bounding box cooridinates of two of these
rectangles, will return the union of the areas of the rectangles, in
square units?

Example 1:
Rectangle 1: (1, 2), (4, 7)
Rectangle 2: (6, 1), (8, 3)
Answer: 0 square units in common

Example 2:
Rectangle 1: (1, 2), (4, 7)
Rectangle 2: (4, 1), (7, 9)
Answer: 6 square units in common (these rectangles share a line)

Example 3:
Rectangle 1: (1, 2), (4, 7)
Rectangle 2: (2, 3), (6, 5)
Answer: 9 square units in common (a clear overlap)

Thanks for any input.

.



Relevant Pages

  • Re: Overlapping items in the Tk canvas
    ... overlaps. ... but it's simply finding items prior to the tagOrId in the ... fall within the object (rectangles near the edge will do nicely). ... If not, the bounding box returned a false positive, otherwise you ...
    (comp.lang.tcl)
  • Modify stacking order of Tikz nodes
    ... The following code draws a Tikz matrix and, ... Fitting library, draws two filled-in rectangles, one at the bounding ...
    (comp.text.tex)
  • Re: Bullets.
    ... > I actually want to programmatically insert rectangles behind bulleted text. ... > rectangles which exactly bound their respective bullet points. ... if I try to calculate the bounding box ... Steve Rindsberg, PPT MVP ...
    (microsoft.public.powerpoint)
  • Re: Overlapping items in the Tk canvas
    ...   fall within the object (rectangles near the edge will do nicely). ... If not, the bounding box returned a false positive, otherwise you ... Dunno whether it works by analytic intersection or by ...
    (comp.lang.tcl)
  • Re: Algorithm to identify area in common?
    ... that, when given the bounding box cooridinates of two of these rectangles, will return the union of the areas of the rectangles, in square units? ... If you then get stuck with your homework problem, post what you have done and what particular problem you are having. ...
    (comp.programming)