generative modeling for Rhino
Hi all,
Just wanted to announce the release of a component I was busy with the past few weeks called Hoopsnake. Here's a summary:
"HoopSnake, apart from a mythical creature, is simple component for Grasshopper. What it does in principle is to create a copy of the data it receives at it's input upon user request and store it locally. This duplicate is made available through a standard Grasshopper parameter output.
What turns this operation from mundane to actually promising is the fact that the input of the component includes some custom programming to escape Grasshopper's recursive loop avoidance check.
What this means in practice is that it is possible through the use of HoopSnake to send the output of a set of components back to it's input in a looping fashion. With the help of a little bit of Data Tree / Data List manipulation, this should open up some new possibilities for iterative process modeling. "
Read more/download at Volatile Prototypes.
Please let me know of any problems/feedback/questions you may have!
Cheers,
Yiannis
Permalink Reply by Systemiq on May 14, 2011 at 8:54am Is Hoopsnake intended to work when you add new items in the lists you are working on ?
Or did i totally misunderstood how it works ? :
In this example, I am just trying to get a list of one A and 99 B.
At first i was trying to implement a simple circle packing, and intended to add a random circle to list if it wasnt intersecting another one, and stop when total number of circles would be ok, or after max N iterations.
Permalink Reply by Yannis Chatzikonstantinou on May 14, 2011 at 5:23pm Gee thats...bizzare!
I can reproduce and I'm working on it... Should have a solution soon.. In the meantime, could you please try the attached file and see if the characters are added normally? Thanks!
Permalink Reply by Ángel Linares on May 14, 2011 at 7:16pm
Permalink Reply by Yannis Chatzikonstantinou on May 15, 2011 at 5:08am Thanks a lot for your replies guys...
This issue is driving me crazy...it seems to be related with the copying process, during which something's going haywire...I just need to figure out what...I'll get back to you as soon as I do.
Permalink Reply by Yannis Chatzikonstantinou on May 15, 2011 at 7:15am Ok, I think I found the glitch.. Not a glitch really, just the way Grasshopper handles input data I guess..
Uploaded a new version on my website.
Please let me know if it works for you! And thanks a lot for your help!
Permalink Reply by Systemiq on May 15, 2011 at 9:22am Is there already a way to make nested loops ?
I made one with 2 components, but to make it work i have to step the main one, loop the nested one, step, loop etc.
The way would perhaps be to set some automatic looping option on Hoopsnake so each times it sees the starting data changes it executes a complete loop.
No idea how hard it would be to code, but it would open lot possibilities.
Permalink Reply by RWNB on May 15, 2011 at 10:16am is it possible to point to some of the possibilities?
sorry, i need a boost.
Permalink Reply by Garcia del Castillo on May 15, 2011 at 10:11am
Permalink Reply by Yannis Chatzikonstantinou on May 16, 2011 at 12:54am Thank you everyone for your interest and help.
@Systemiq: This is precisely what I am planning for the next step. It should be theoretically possible, however I'm still thinking about the way to go in order to achieve maximum compatibility with the Grasshopper way of doing things. Will keep you posted!
@RWNB: I could think of recursive generation, packing problems (as Systemiq mentioned e.g. circle packing), iterative optimization, to start with. While addressing these types of problems is already possible in Grasshopper either through dedicated components or scripting, having an explicit "feedback" potential right within the Grasshopper canvas could in some cases make things more flexible and easier to read.
I will soon post a couple examples that are more representative of what *could* be possible with Hoopsnake.
Added by David Stasiuk 8 Comments 24 Likes
Added by stefano 5 Comments 8 Likes
© 2013 Created by Scott Davidson.
Powered by