algorithmic modeling for Rhino
Tags:
This reply by Michael Pryor yesterday might help:
http://www.grasshopper3d.com/forum/topics/partitioning-list-accordi...
He suggested this:
http://formularch.blogspot.com/2012/04/gh-distance-grouping.html
Thanks for your fast reply Joseph, but the problem is, I can not go through Michael's way as in his strategy, there should be some defined points as collectors, now If I am going to define the collectors, and then if I change the distance so a point in a vicinity can be collected by two collectors, know what I'm sayin' ?
I'd rather define x (e.g. saying I want 5 colonies of points) and then get the best result based on this logic.
Uh, no, sorry, I don't understand what you're saying or the logic behind it.
In Michael's approach, there are some constant Points that the distance is calculated from (he calls them collectors). So he defines a number of collectors and then does the grouping based on the distance from those set points.
Now what I want to do is to define only a number (x = collectors' count) and a maximum distance, and as result I get those optimal x collectors and the grouped tree.
The reason I think this approach is a better one is that, there can be a situation in which a point has the same distance from two of these collectors for example and so it can attend in both branches.
In this case there will never be two in the same group. If there are two the same distance then it will just pick a group arbitrarily (at least I think, Have not used the definition is a long time). Regardless, what you are looking for is called K-Means clustering. You can find some examples on the forum about it here
Hi Michael,
Thanks for your reply. This is really a great concept I wasn't aware of. I read the Wikipedia content and figured out it is somehow related to the Voronoi theory, but in the Voronoi components we currently have access to in grasshopper, some base points (or collectors as you put it) need to be defined by the user. Do you think the Ivy Plug-in, or this script can help?
I don't want to define the collectors, instead I want to achieve the collectors as an optimal output.
Best,
Sina
I found a component I'd never used called 'VorGroup (Voronoi Groups)'. Got some insight on how to use it from this thread: http://www.grasshopper3d.com/forum/topics/voronoi-group
And came up with this:
Nice job really,
Ich bedanke mich bei dir :D
Hi Joseph,
This is so much appreciated, I hadn't seen it too. You know in this method we've moved forward a lot compared to Michael's "Distance Grouping" definition, but we're still defining collector points (in your gh definition there's a populate 2D with 24 points input that acts like collectors). Michael supposed that K-Means Algorithms can be the Key, but I haven't figured how to work with'em ever since.
Herzlichen Dank
I've found a component named "Proximity 3D". Do you think it is the perfect answer to my question?
'Proximity 3D' still requires a list of "collector points". As usual, there are a variety of ways to think about the problem but getting the optimum solution is likely to require some trial and error (iteration with Anemone or Galapagos). For example, using the code I posted (with additional metrics like maximum distance between points in any of the "groups" returned), you could try all the seed values between zero and 1000 and decide which one is optimum, by whatever criteria you believe is most important.
I haven't read the material on "k-means clustering". Does it describe a method appropriate for GH modeling?
Welcome to
Grasshopper
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
© 2024 Created by Scott Davidson. Powered by