Grasshopper

algorithmic modeling for Rhino

Hey. I'm trying to create a pattern like in this image. I tried a few ways, but i think i keep being on the wrong track. Can someone help? 

Views: 1259

Attachments:

Replies to This Discussion

That's very easy:  (I like chaos, chaos is just a flipped order he he) - but the def shown it's solely C# code not a single GH component on sight.

I'll refine a bit the 2 C# things that do the trick and I'll post the freaky thing here.

PS: if you provide any List of surface(s) then stripes are generated in equivalent DataTrees, if not ... the stripes are applied in an auto-created chaotic surface: the notorious Vodka surface, that is.

more soon, best,Peter

Thanks a lot Peter! I'll be waiting for your def :)

Here we are (pass me the Vodka please, he he):

I've included 2 referenced surfs NOT internalized (load Rhino file first anyway). You can add yours (single or List) as well. If the input surf List is empty > the internal freaky thing is made, if not a validity check comes first, any bad boy is excluded and the good boys (surfs, that is) are rooted to the 2nd C# (that can act as standalone, obviously) ... then stripes (but not stars) are made as Breps and sampled into a DataTree (every dim corresponds to surf List item(s)).

PS: free bonus: an unlimited (kinda) user satisfaction guarantee covers these C# things (or your money back, he he) 

give chaos a twist, best, Chaos Master (tm)(C)

Attachments:

ERRATA:

Peter, this is awesome, thanks a lot! 

No I'm afraid it's not (it's naive and amateurish to the max):

1. Imagine creating ONE stripe at Plane.WordXY.Origin with unitized width/length. In plain English a 1*1 unit Brep (made from Rectangle3d.ToNurbsCurve()).

2. Then you create a block instance out of it.

3. Then you define Planes at each random point (as the C# does already).

5. Then you define 2 transformations : one that does scale (in a "similar" way with the 2nd C#) and one that does PlaneToPlane (from blocks' "world" to the plane "world").

6. Then you call the block instance on duty and you apply these 2 for each random plane (a coordinate system in fact: term plane used in GH is highly unfortunate) that is derived as: surface.PointAt(thisRandomU, thatRandomV).

I hear you: what's the fuss with all that nonsense mister? Well ... let's say 100 times faster execution of the 2nd C#: is this good enough?

I'll provide this "pro" approach (a bit more complex than the very simple/primitive 2nd C#, mind) in the traditional V2 update (soon, maybe this weekend).

best, Peter

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service