We closed this forum 18 June 2010. It has served us well since 2005 as the ALPHA forum did before it from 2002 to 2005. New discussions are ongoing at the new URL http://forum.processing.org. You'll need to sign up and get a new user account. We're sorry about that inconvenience, but we think it's better in the long run. The content on this forum will remain online.
IndexProgramming Questions & HelpPrograms › Circle, around circumference packing.
Page Index Toggle Pages: 1
Circle, around circumference packing. (Read 1571 times)
Circle, around circumference packing.
Jul 14th, 2009, 7:34am
 
Hi

I read a paper on some circle packing algorithms. I wanted to try and
pack circles around the circumference of a larger circle.

So if I have a circle with radius = 50, I would like to place x number of circles with radius = r around the first circle, all these circles with their center on the circumference of the original circle.

Hmm would be a bit simpler to explain with a pen and paper:)

like this one, but without the outer circle and inner circle and with a circle drawn through the center of all the circles.
The circle I wish to pack the smaller circles around is not in this illustration.
...

Hope someone one can point me in the direction of the math involved, I can't think of it.

Cheers
Re: Circle, around circumference packing.
Reply #1 - Jul 14th, 2009, 7:42am
 
http://en.wikipedia.org/wiki/Sphere_packing
http://en.wikipedia.org/wiki/Circle_packing_theorem

In your drawing, you don't have homogenous circles, but when you explain it, they seems homogenous (radius = r). Do you want sames radius circles?

http://www.cricketschirping.com/processing/CirclePacking1/
http://www.math.utk.edu/~kens/
Re: Circle, around circumference packing.
Reply #2 - Jul 14th, 2009, 9:33am
 
If you are looking for regular (homogenous) circles, then the problem is easy. The circles are distributed around a regular hexagon plus one circle in the middle. You'll have 6 circles (or 7 if the center circle is counted). This is not what you have in your drawing.

The hexagon radius is

Code:
hr = R - r
hr = 2*r
r = R/3


hr = hexagonRadius
R  = containningCircle
r  = circleRadius


http://upload.wikimedia.org/wikipedia/commons/0/0a/Empilement_compact_plan.svg
Page Index Toggle Pages: 1