Learn R Programming

OpenRepGrid (version 0.1.14)

doRectanglesOverlap: Detect if two rectangles overlap.

Description

The overlap is assessed in x AND y.

Usage

doRectanglesOverlap(a, b, margin = 0)

Value

logical. TRUE if rectangles overlap.

Arguments

a

vector with four coordinates c(x0,y0,x1,y1).

b

vector with four coordinates c(x0,y0,x1,y1).

Examples

Run this code
if (FALSE) {
  #overlap in x and y
  a <- c(0,0,2,2)
  b <- c(1,1,4,3)
  plot(c(a,b), c(a,b), type="n")
  rect(a[1], a[2], a[3], a[4])
  rect(b[1], b[2], b[3], b[4])
  doRectanglesOverlap(a,b)

  # b contained in a vertically
  a <- c(5,0,20,20)
  b <- c(0, 5,15,15)
  plot(c(a,b), c(a,b), type="n")
  rect(a[1], a[2], a[3], a[4])
  rect(b[1], b[2], b[3], b[4])
  doRectanglesOverlap(a,b)

  # overlap only in y
  a <- c(0,0,2,2)
  b <- c(2.1,1,4,3)
  plot(c(a,b), c(a,b), type="n")
  rect(a[1], a[2], a[3], a[4])
  rect(b[1], b[2], b[3], b[4])
  doRectanglesOverlap(a,b)
}

Run the code above in your browser using DataLab