Search All of the Math Forum:
Views expressed in these public forums are not endorsed by
NCTM or The Math Forum.


Math Forum
»
Discussions
»
Software
»
comp.softsys.matlab
Notice: We are no longer accepting new posts, but the forums will continue to be readable.
Topic:
Draw circles with given different radii and positions in the XY axis
Replies:
2
Last Post:
Jun 12, 2013 1:36 AM




Re: Draw circles with given different radii and positions in the XY axis
Posted:
Apr 10, 2013 1:07 PM


> I would like to draw circles as transmission range of nodes in the network topology. Could you please give me an example code for this?
Have you ever heard of the "12 circle problem". It goes like this: Draw 12 circles in a plane so that each circle is tangent to exactly 5 others.
You might be surprised that there are at least 3 quite different looking solutions to this problem. I'm mentioning this problem because I have a matlab script that draws these 3 solutions, and since there are lots of circles drawn it may be an example that you are interested in looking at.
The program is called "circles12.m" and to find it, search for "plt" in the file exchange and look in its demo folder. Instead of calling plot() it calls my plot replacement plt(), however the technique I use for drawing circles works the same with plot as well.
For those of you who aren't interested in the program itself, you still might have fun thinking about this problem to see if you can come up with a solution before looking at my solutions. If you get the answer to that one, here is an even more difficult one:
Divide a circle into n congruent parts.
Of course as written, that is far too easy since you can just slice it like you would slice a pie fairly between n people. So I'll add one more constraint to make the problem interesting:
At least one part must not touch the center. And since the problem is so difficult, I'll give you one hint: The only solution I know about uses n=12. And if you give up, run the circles12.m script I mention above since it also draws the solution to this problem. Have fun with it :)
~Paul



