algorithmic modeling for Rhino
Differential growth in Grasshopper
The definition and code is in the comments bellow.
This is related to this thread:
http://www.grasshopper3d.com/forum/topics/differential-growth-in-curves
Tags:
Comment
Hi Vicente, Love the torus with noise field scaling down. How did you achieved it? Great work!!
Now I finally got around to play a bit with your definition I have to say: Awesome!!! Looks crazy cool too. Amazing work Vicente.
De lo mejor que he visto en mucho tiempo por el foro, maravilloso !
Gracias por compartir, me voy a entretener mucho con el código ~:)
Better framerate: http://gfycat.com/RepulsiveClutteredAtlasmoth
Nick: The color is a gradient that paints yellow the newest vertices and orange the oldest. This was to see which edges are splitting but it doesn't look very good.
Giulio: Thanks, ill try compiling it if I continue playing with this. I haven't really had time to test anything, as soon as it sort of worked I posted it.
Things that are easy to play with is changing the Grow() method. In this animation the rate of growth is related to the position of the edges in a simplex noise field. It looks disgusting but with some care I'm sure some rules can be found that look nice.
Vicente, great work! What the colour generation logic?
This is really cool Vicente!
Regarding speed, I am wondering if you tried putting that code into a compiled component. Especially passing large structs should be relatively faster there. For example, the BoxSphereIntersection method that is fed a Box and a Point3d and several property accesses might be inlined by the compiler.
That is because with the compiler you can compile in Release mode. Maybe David will add that possibility in the future in GH, but for now in order to help debugging (mostly line numbers) we have make up without optimizations in Grasshopper.
It should work with any triangulated manifold mesh. All faces should be triangles, the mesh must be closed, and all edges should share only two faces.
There are two inputs that are scale dependent, the 'radius' and 'growth factor'.
In this image I triangulated a doughnut using Daniel Piker's MeshMachine component so that all edges are roughly the same size, then I set the radius input as the largest edge length and the growth input as a small percentage of that.
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
You need to be a member of Grasshopper to add comments!