Grasshopper

algorithmic modeling for Rhino

When I started modeling, I discovered the magic world of surfaces. Then when I approached parametric modeling in GC I doscovered the power of U and V parameters. Populating any surface I had the chance to. And now, that I'm suposed to know the theory I can't figure out how to solve this. I assume that u,v parameters are based on the surface topology. Then when you trim that surface or you crate a surface from a closed curve (see image attached) you loose the "boundaries" of the surface remaining only the last u,v points that still "exist" (see the image).

How can I divide that kind of surfaces with a "regular" pattern (triangle, quad, hex) ?

I can imagine this can be a hard problem, calling for relaxation scripts, or more complicated algorithms, but if anybody has a suggestion, an approach or maybe the solution, I would appreciate it very much.

(the image shows what I get with the regular divide surf. component (left), and what I'm looking for (right).

Thanks for your time.

Views: 936

Attachments:

Replies to This Discussion

I think that a solution winds up being as hard as the geometry you're working with. In this case, you're talking about a fairly simple closed, planar curve (completely convex if you're lucky) making a flat surface. What I'd consider is to divide the edge curve and create a series of lines (geodesics would be better if the structure of the geometry changes later on) from those points to the area centroid of the surface. After that is just a matter of the dividing those lines and weaving through the resulting points as need be...HTH

hi damien

just wonder what is the component before pline?
never used that before ?
kindest regards to]
Neither had I up until today...Its called Path Mapper and seams pretty darn cool. David's expressed it best in the help file, "Lexical operations are logical mappings between data paths and indices which are defined by textual masks and patterns".

In this case, its remapping a given index of each path into individual paths. So rather that having {A}(0,1,2), {B}(0,1,2), etc it would remap that to {0}(A,B,C,...), {1}(A,B,C,...), etc. I have not played with this that much, so I've yet to really explore what it can do, but I can say that it seams extremely powerful. That one component probably saved me about 20 in this case.

Two last things...First, I literally plopped it in there and it did what I wanted by default, so I got lucky with it. Second, I'm working on a prerelease version at the moment, so I'm not sure if this is part of that or whether its available in 6.018.
i am looking forward to use it and test it out but it is nor part of release 6.0019
thanks damien for your detailed explanation
best to]
D,

..."Lexical operations are logical mappings between data paths and indices which are defined by textual masks and patterns"...

I hope that translates to "A visual interface to structure tree data relationships."

The geodesic component isn't on the market yet either...

P.S. Are you at Acadia too?

-taz
Umm, I don't think so, since there's nothing "visual" about it. If anything it might be more akin to regular expressions or something. Basically what it does is allow for remapping a tree structure into a different one. At least at the moment, it seams like a very useful tool to be able to restructure trees when the default structure isn't what's needed.

Wow...I really muffed up with that then... well there are 2 new components that we'll be getting.

No, unfortunately I'm not at ACADIA, although I really wish I was. Last year was great, but doing it on you're own dime is pretty costly. This year I just wasn't able to swing it.
"A[n] visual interface to [re]structure tree data relationships."

Well, it sounds like progress anyway. I'm sure a "visual" part may come along later.

At any rate, see you next Monday.

-t
Thanks Damien,
its not exactly what I wanted but it traces a way of getting it (without coding).

To be perfect (maybe my explanation was not that good, sorry for that), all sub-areas should have same area, actually, the best would be to have all the segments with similar lenght (if not identical). But I can asume that you only can achieve that using some surface-point relaxation method, all point should try to be the the centroid of his 4 neighbours (except perimeter ones).

But I'll try to fake it a little with some ideas your method offered. Thank you again

By the way... I don't think I have that components 0.6.0019...

anyway, thanks
Hey Pep, you could do it with this trick on version 0.6.0019 (see file)
Attachments:
Thanks Giulio, I'll start working from there... I'll try to post results as soon as posible, thats a small part of my final project which I'll be pleased to post here as soon as it has a decent shape.

THANKS

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service