0
$\begingroup$

I know the dimensions of all the circles, but I'm unsure how to exactly get the points on a bigger circle - where all the smaller circles will neatly stack up.

Imgur Sketch: big circle w/ smaller circles.jpg

Hopefully the explanation was clear enough.

$\endgroup$
  • $\begingroup$ Does "neatly stack up" mean that you can place all of the centers of the smaller circles on the larger circle so that all of them just barely touch each other? $\endgroup$ – John Oct 24 '16 at 21:34
  • $\begingroup$ @John yep - so regardless of the size of the big circle, I can calculate points so that the smaller circles just barely touch each other $\endgroup$ – Ed Lee Oct 24 '16 at 21:55
2
$\begingroup$

Two tangent circles of the same radius intersect at the midpoint of the line segment that joins their centers. If we call the radius of the small circles $r$ and the radius of the big circle $R$, this means that the length of the chord joining adjacent small circle centers is equal to $2r$, and so the angle $\theta$ between them satisfies $$\sin\frac\theta2 = \frac r R.$$ With this in hand, computing the coordinates of thse points is straightforward.

Geometrically, pick a point on the big circle as the center of your first little circle and draw a circle of radius $2r$ centered on this point. The intersection of this circle with the big one gives you the centers of the two adjacent small circles. Repeat in either or both directions until you’ve run out of room.

Analytically, you could reproduce the above process, but it’s much simpler to use rotations to generate the other centers from a given starting point.

| cite | improve this answer | |
$\endgroup$
  • $\begingroup$ Once I have the angle I already have something to calculate the fractional distance along the circle so this is perfect! $\endgroup$ – Ed Lee Oct 25 '16 at 19:26
  • $\begingroup$ @EddieLee For the rotation, you don’t need the angle itself, just its sine and cosine, which you can express in terms of $r/R$ using double-angle formulas. $\endgroup$ – amd Oct 26 '16 at 10:04
0
$\begingroup$

Put $n$ equally spaced points on the circumference of a circle of radius $r$ at points with coordinates $$ (r \cos(2j\pi/n), r \sin(2j \pi/n) ) $$ for $j = 0, \ldots, n-1$.

Figuring out the radius of the small circles is a little tricker - you say you have that number. Or see @amd 's answer for how to compute it. There $\theta = 2\pi/n$.

| cite | improve this answer | |
$\endgroup$
  • $\begingroup$ Does this equation assume that the number of smaller circles will perfect fit along the big circle? $\endgroup$ – Ed Lee Oct 24 '16 at 21:56
  • $\begingroup$ @EddieLee Yes it does. $\endgroup$ – Ethan Bolker Oct 24 '16 at 23:56
  • $\begingroup$ any way to make it more widely applicable? Though I suppose since it is j/n, this is still applicable even if there isn't an even number of smaller circles to perfectly fit along the big circle's circumference. $\endgroup$ – Ed Lee Oct 25 '16 at 17:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.