[Sidefx-houdini-list] Space filling circles

Andy Nicholas andy at andynicholas.com
Wed Aug 5 16:16:36 EDT 2009


No problem.

It just occurred to me that you might be able to use the Interact POP if
you set your forces and radii correctly and a whole heap of damping and
substeps.

Oh... and another thing you could try. What about a load of rigid body
cylinders in a thin box? You might get a few gaps, but it'd probably be
minimised if you release them a few at a time.

Andy


> Thanks for your inputs.
>
> Since there do not need to be thousands of them I bet I can iterate on
> them
> to get a close approximation without taking a long long time to compute.
>
> It is intriguing to think that there may be a function with dops that the
> solution falls out of but I am still a way down the learning curve with
> all
> the functionality that exists in vops let alone rolling my own.
>
> Cheers
>
> Doug
>
> On Wed, Aug 5, 2009 at 9:09 AM, Gene Dreitser <keyframe at rogers.com> wrote:
>
>>
>> Might also be worth it to take a look at the output of the isooffset sop
>> using the 'tetra-mesh' output type.  Tetra-type set to 'cubes'.
>>
>> While it will not pack perfectly, it DOES create a predictable pattern
>> of
>> rows and columns that one might be able to make use, and as an added
>> bonus,
>> it can use ray-intersect to sample the original mesh.
>>
>> Best,
>>
>> G
>>
>>  --
>> Gene Dreitser
>> Loki Visual Effects
>> p: 416.532.5654 // c: 416.803.0682 // www.lokivfx.com
>>
>>
>>
>> ----- Original Message ----
>> From: Andy Nicholas <andy at andynicholas.com>
>> To: sidefx-houdini-list at sidefx.com
>> Sent: Wednesday, August 5, 2009 12:05:13 PM
>> Subject: Re: [Sidefx-houdini-list] Space filling circles
>>
>> Hi Doug,
>> Are you asking this because you know of this being done somewhere else?
>> I
>> only ask because I just Googled this (out of my own interest), and
>> judging
>> on how many papers are written on this topic, I'd say that it's a
>> non-trivial problem to solve.
>>
>> The only thing that springs to mind, would be to create an iterative
>> approach, using the SOP solver or the Feedback SOP (proto_install).
>>
>> Note that I haven't tested this, or fully thought it through, but the
>> following... might... just...  work...
>>
>> Start off with a triangular polygon with a random sized disc at each
>> vertex so that their circumferences touch. From that, take a pair of
>> discs
>> and create another randomly sized one and place it (using simple
>> trigonometry) so that it touches the first two. Extend the triangle into
>> a
>> four sided polygon with the new point at the center of the new disc.
>> Repeat the process, but ignoring any discs internal to the polygon.
>>
>> I can see this approach breaking down if you ever have a non-convex
>> polygon, but there are probably some constraints that you could figure
>> out
>> that will prevent this from happening.
>>
>> Andy
>>
>>
>>
>>
>> > Hi
>> >
>> > Can anyone point me to a Houdini method (or other solution) for
>> packing
>> > random sized circles so that they are tightly packed and each
>> > circumference
>> > just touches its neighbors?
>> >
>> > Thanks
>> >
>> > Doug
>> >
>> > --
>> > www.dougstruthers.com
>> > _______________________________________________
>> > Sidefx-houdini-list mailing list
>> > Sidefx-houdini-list at sidefx.com
>> > https://lists.sidefx.com:443/mailman/listinfo/sidefx-houdini-list
>> >
>>
>>
>> _______________________________________________
>> Sidefx-houdini-list mailing list
>> Sidefx-houdini-list at sidefx.com
>> https://lists.sidefx.com:443/mailman/listinfo/sidefx-houdini-list
>>
>> _______________________________________________
>> Sidefx-houdini-list mailing list
>> Sidefx-houdini-list at sidefx.com
>> https://lists.sidefx.com:443/mailman/listinfo/sidefx-houdini-list
>>
>
>
>
> --
> www.dougstruthers.com
> _______________________________________________
> Sidefx-houdini-list mailing list
> Sidefx-houdini-list at sidefx.com
> https://lists.sidefx.com:443/mailman/listinfo/sidefx-houdini-list
>





More information about the Sidefx-houdini-list mailing list