Grasshopper

algorithmic modeling for Rhino

Hello,

I have what I believe to be a simple problem:

I have two pairs of lists of curves. Let's take one pair as an example. Both lists in this pair have the same (x) number of items. The indexes of both lists match ("1" in list A and "1" in list B match in the way that I want them to.

I want to plug list A into the "curve", and list B into the "section" node of a "sweep1" component. The result I desire is that the curve "1" in list A 'sweep' along the section "1" in list B. I would like all of the items in both lists (and the other pair of lists for that matter) to interact in exactly this same way.

How do I command the "sweep1" component to understand what I want it to do? I have tried any number of combinations of grafting and flattening the data, the problem seems to be with the "S" node of the "sweep1" component. Is it incapable of applying more than one index to the "C" component? When I have grafted my list B (thereby applying an index of "0" to all the curves within it), the "sweep1" component has "worked", but obviously just sweeps every "C" curve along every "S" curve (not what I want).

In the screenshot I show the "sweep1" component working when I input the same item from lists A and B of each pair.

Any help would be much appreciated

Views: 2715

Attachments:

Replies to This Discussion

3dm file. Unfortunately I've had to remove some of the preceding definitions in order to attach the file.

Attachments:

Hi again Isabelle,
The spheres not unioning seems a tolerance thing (Rhino : Tools> Options> Units), but oddly enough unioning them also worked when I shifted the list. I cannot explain that however.
Your Tangent Solids layer content seems a bit messy: there are several almost identical solids in there. I'd advise you to clean up the geometry in the rhino file you are referencing from, then try your GH definition again. May I encourage you to try it sober? ;)

Thanks for checking out the files, Pieter. I've tried messing with the tolerances, but am not really sure what I should be shooting for. I know how to optimize tolerances for some situations (make2d), but don't have much experience with booleans.


The Tangent Solids layer are messy, they come from a previous definition that was too large to upload. I will upload it to my public dropbox and include the link, because I think if I can show you whats going on, the options might be more clear. I think it would be handy to have a way to cull all of the tangent solids from the list if they are completely contained by other solids, but I couldn't think of a way to do that. Some kind of containment component, I assume?

I set my tolerances to 1/100th of the defaults, and then the 7 spheres could be Unioned. (just shifting the list also worked, but I said that already)

Howcome your previous definition introduced the messyness? Try to avoid any 'noise' before taking step 2 (Don't you h@te cleaning up?! - (I do))

What is this shape going to be? Can you create a possible (valid) outcome of the definition in Rhino, or provide a commented sketch? I bet if you cleary discribe what you are exacly after you'll get a fitting answer from someone.

P.S. I didn't see a dropbox link.

Doing this without spirits is too sobering for words.

I sense that you are in the right track, he he.

I can provide to you dozens with test cases that deal with matchboxes (i.e. DataTrees) with the component way ... but since you are heading towards the Dark Side (Warning: one way ticket that one, he he) don't spend too much time ... finish Thesis > get tequila > opt for C# > buy the Bible > foreach(Problem p in Problems) {whatProblem(p); whatOtheProblem(p);} ...

I'll investigate your issue soon

Attachments:

OK let's start from Zero basis on this (we need to do it: because as Pieter said already we are dealing with .. er ..."a situation" here, he he):

Step 1:

1. I've cleaned the terrible mess (I'll charge you extra for that: 5 cans of my favorite sardines). Using code instead of components, since you are ready to cross Rubicon.

2. Then the tube breps are sampled in a proper matchbox (I mean DataTree) Then I've created Spheres out of the corresponding brep edges that are Circles. This means that each tube yields 2 Spheres (warnings if not are provided).

3. Added a union testing capability (user controllable on a per branch basis) per "triad" : thisBrep and his "equivalent" spheres.

PS: Load Rhino file first.

Step 2:

Waiting for instructions: what to do with these things? (maybe delete them all?)

may the (Dark) Force be with us all.

Attachments:

Hi Peter -

I need to check this stuff out pronto. Will get back to you. Also, here is the whole dang file, if you are curious, which I suspect you are. Insatiably curious. Also, the force being such that it is, I feel the urge to now watch some star wars...

 https://drive.google.com/folderview?id=0B26u4CjjeTFHfm9UeW1xWGp4ZTR...

Suggestion: Let's go back ONE step (the amount of data is irrelevant - the "validity"/"quality" of data is critical):

0. I've sampled my best slav ... I mean partners in my practice (C# experts/gurus et all) to deal with this messy situation (Me? the good looking guy - what else?). PS I'll charge you extra for that.

1. What comes first? I suspect the "tube" like things. (Warning: IF the non planar face is  concave IT MEANS that the solid union against the spheres may yield : "odd" stuff , he he). Do you need validation of these and/or topology checks? (in order to avoid the messy overlapping situation).

Break: are these tubes from/due GH?

2. What comes next? I suspect the spheres. But with what logic? A similar with my C#? (meaning that each "tube" corresponds to 2 others?). Some other paranoid logic? (meaning "random" spheres that MAY or may not yield a valid boolen union thing).

Break: are these spheres from/due GH?

3. What is the goal? Unite whatever can being united and create a union chaos? If yes ... you want to extract something from that chaos? (volume, area(s), silhouette, projection(s), faces,, edges, cats, dogs ... what?). Do you want to "lay-down" faces? (as the 2nd C# does - the one without values entered).

PS: Plan B: Skype.

take care, Peter

If you graft both R and S inputs sweep does what you are after, each curve from the first list will be sweeped along each curve from the other

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