algorithmic modeling for Rhino
Ah but the types of "random" that might be specified! A mesh or a NURBS surface in the XY plane that is divided into 19X19 faces or isocurves is a reasonable 400 vertices, but merely randomly moving them in Z by +/- 1 will not lead to such a coherent and often beautiful result at all, just a damn mess, though treating an array of points along the surface as NURBS control points that define a new surface will help force it to retain some smooth coherence:
You probably need real physics via the Kangaroo plugin, and some way to specify graininess, where the connections between vertices are springy in both stretching and contraction, so adjacent areas move together somewhat, and your object retains fine structure so whole groups of vertices move together as you retain high resolution. You could generate randomly control point perturbed curves that will retain some coherence of form along them due to being NURBS control points and set them to be force attractors on mesh points, for instance, using Kangaroo to create a physical object simulation. Two sets of such curves that started on the surface then got wiggly could be used to control coarse and fine randomness independently by having many more of the minor effect ones acting on a mesh "surface."
Here is a demo of how to set up a mesh as a springy one that Kangaroo can make pull towards curves:
I have it on a timer so it is like a screen saver, fun to watch:
It's not as useful as I thought since using many individual curves instead of a loop single curve causes the mesh to contract as two objects pull on each assigned mesh point at once. Also, I had to pin the edges, or the whole mesh just collapsed once it became attracted more to one side of my loop than the other and just floated over to that side and contracted to a point. I would likely have to add separate edge randomization with a perturbed square outline I attract to also.
Script here:
first of all thanx nik you have been so helpful.
I should have mentioned I am new to grasshopper, but what I can understand is I need to have so mathematical relation even in the randomness.
meanwhile I have tried to achieve random waves in my own way.
but I would want to try out kangaroo if I can understand it..:)
you taking so much efforts to make video has defenetly got me interested in kangaroo.
thank you so much again.
Good idea to use a patch surface to surface randomly populated points in a box, but you are stuck in pure random hell except for wavy patch surface artifacts along the edges:
Here is how a mere seven more components means you can first use much fewer points initially with tweaked settings to afford a macro wavy patch surface first and then make a brand new set of points on that surface that are then randomly perturbed in the "Z" axis (your Y axis) and then convert back into a NURBS surface using SrfGrid. Here are two separate final results with different numbers of points for the final random noise step, using the same initial macro wavy surface:
Now you have two levels of random scale to play with, which affords much greater control over aesthetics and emulates how real world fluids or wire screens might be perturbed.
Now that you have a "flat" undulated single NURBS surface that was easy to make due to being flat in space, the power is in being able to remap/flow/morph that surface onto any other single untrimmed NURBS surface you create, done here manually in Rhino using Flow Along Surface:
If you mirrored your points before making the final NURBS surface from them, if could even seamlessly wrap a tube since opposite ends should be identical.
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
© 2024 Created by Scott Davidson. Powered by