TheSwamp

CAD Forums => CAD General => Dynamic Blocks => Topic started by: huiz on July 09, 2015, 06:10:49 AM

Title: How to create something like Soddy Circles
Post by: huiz on July 09, 2015, 06:10:49 AM
I've tried to create a dynamic block where I want to do this:

The block contains several circles. The largest one is on location 0,0, the others are around this large one. Each circle has a polar move parameter/action with a minimum distance of it's own radius plus the radius of the large one. So if I move the circle, it won't overlap the large one. See image 1.

But between each pair of two other circles there must be a parameter too, to prevent the circles from overlapping eachother as well. But I was not able to solve that in the dynamic block. The second circle has a blue grip but if I move it, the circle jumps far away the other side of the large one. See image 2.

Included the drawing with the block. Anyone who can point me in the right direction?
Title: Re: How to create something like Soddy Circles
Post by: mjfarrell on July 09, 2015, 10:18:38 AM
there is some math involved there.. however using geometric constraints you should be able to construct this as a dynamic block...at least I think one could.

(http://www.gogeometry.com/geometry/soddy_descartes_circle.gif)
Title: Re: How to create something like Soddy Circles
Post by: huiz on July 09, 2015, 10:39:07 AM
I've seen that and read the formulas for this but it is not exactly what I need :-)

Actually it is for calculating the most efficient radius for a bundle of pipes in a drill. It looks like Soddy Circles, but that is only for three circles, and a bundle can have more. So I thought to use a dynamic block, add stretch parameters to the circles with a minimum of the radius of both circles where the parameter is between. It works like expected but only for two circles. If I add a third, or fourth and so on, and add new parameters, the circles will behave weird.
Title: Re: How to create something like Soddy Circles
Post by: mjfarrell on July 09, 2015, 10:59:29 AM
then you need this:  APOLLONIAN CIRCLE PACKINGS (http://arxiv.org/pdf/0811.2236v5.pdf)

Title: Re: How to create something like Soddy Circles
Post by: mjfarrell on July 09, 2015, 11:01:14 AM
This looks to be more in the realm of programmatically achievable, more so than dynamic blockable
Title: Re: How to create something like Soddy Circles
Post by: mjfarrell on July 09, 2015, 12:24:54 PM
I think Lee Mac could alter his fractal routine to do this....HELLO LEE MAC!!!! Where are you?
Title: Re: How to create something like Soddy Circles
Post by: huiz on July 09, 2015, 03:10:36 PM
This looks to be more in the realm of programmatically achievable, more so than dynamic blockable

Thanks for pointing me to Apollonian circle packings, it is indeed better than soddy circles.

But first I thought too it should be programmatically solved, but now I think creating a dynamic block is a better solution. Users can shuffle the circles until they are satisfied (they have sometimes other reasons for a certain solution than solved by a formula).