circles.intersect {smacpod} | R Documentation |
Determine whether circles intersect
Description
circles.intersect
determines whether circles
intersect with each other.
Usage
circles.intersect(coords, r)
Arguments
coords |
A matrix of coordinates with the centroid of each circle. |
r |
A vector containing the radii of the circles.
The length of |
Details
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.
Value
Returns a matrix of logical values indicating whether the circles intersect.
Author(s)
Joshua French
Examples
# 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)
[Package smacpod version 2.6 Index]