View source: R/circles.intersect.R
circles.intersect | R Documentation |
circles.intersect
determines whether circles
intersect with each other.
circles.intersect(coords, r)
coords |
A matrix of coordinates with the centroid of each circle. |
r |
A vector containing the radii of the circles.
The length of |
The algorithm is based on the premise that two circles intersect if, and only if, the distance between their centroids is between the sum and the difference of their radii. I have squared the respective parts of the inequality in the implemented algorithm.
Returns a matrix of logical values indicating whether the circles intersect.
Joshua French
# first two circles intersect each other,
# the next two circles intersect each other
# (but not the previous ones)
# the last circles doesn't intersect any other circle
co = cbind(c(1, 2, 5, 6, 9), c(1, 2, 5, 6, 9))
r = c(1.25, 1.25, 1.25, 1.25, 1.25)
# draw circles
circles.plot(co, r)
# confirm intersections
circles.intersect(co, r)
# nested circles (don't intersect)
co = matrix(rep(0, 4), nrow = 2)
r = c(1, 1.5)
circles.plot(co, r)
circles.intersect(co, r)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.