Grasshopper

algorithmic modeling for Rhino

Hi

I do not upload my file it is complex and heavy

I made a flowing surface over a plane xy surface

The flowing surface is subdived with IsoTrim , in about 80 surfaces,

Then the flowing surfaces is random reduced with the random reduce component.

Then the random reduced surfaces, is extruded in z direction with negative factor, The plane surface is also extruded in z direction with negative factor, then i used Trim solid, and had about 40 boxes cut in the xy plane with different hight.( hight is from the flowing surface)

The i open a new grasshopper file, and take brep container, and get one of the boxes cut in xy plane, but if i use isotrim on the brep faces or subdivede quad from lunchbox, the divide component show orginal extruded surface and not the smaller one i got after using Trim solid, on the extrusion.

is it clear or you need the file, and have anyone a answer

thank you

Elisabeth

Views: 2434

Replies to This Discussion

No code, no answer.  It doesn't have to be the entire file.  It often doesn't matter how you got a curve or surface or solid, only what you want to do with it where it fails.  You can use "Internalize data" to save the geometry for the very last step or two that is giving you trouble.  In other words, create a SIMPLE Grasshopper file that isolates the problem and post that.

here is the box, in Rhino and GH

Attachments:

Hmm...  Well, I don't have LunchBox installed (is that necessary here?) and am not quite sure what 'Isotrim' does(?) but think I see the problem.  The Brep faces are trimmed surfaces and 'Isotrim' works on the untrimmed surface.  This looks very manageable, someone else might be able to help.

Perhaps something like 'Untrim', 'Copy Trim', 'Retrim'...?  What is the objective?

P.S.  If you right-click on the 'Brep' param and click "Internalize data", you won't need the Rhino file.  Great job in breaking the problem down to manageable size!

P.P.S.

http://www.grasshopper3d.com/forum/topics/when-subdividing-a-trimme...

http://www.grasshopper3d.com/forum/topics/how-do-you-divide-a-surface

Thank you, the Rhino file is about 500 MB, with many layers, i try tommorow. make a small file with my problem, It is getting late evening.

Is this cheating?  Reconstruct the faces using 'EdgeSrf'...

Brep is internalized, no need for Rhino file.

Attachments:

Hi!

In Rhino a "Surface" has no trims. If a surface has been cut, then it's a "Brep" now.

As a result, any GH component that accepts a "Surface" type looses the trim info.

(this should really be in the faq... because it is one!)

The simple way is to explode the box in Rhino, select all the faces, run "_ShrinkTrimmedSrfToEdge" (and rejoin).

However there are ways to run a rhino command from gh, look for that in the searchbox.

Fred.

Hi Fred,

Your explanation makes me understand the problem, I used the shriktrimmedsrfedge command and , it worked, now i have another problem

At the now skrinktrimmedsrf box, i have a top surface and 4 sides, if i use isotrim at the sides, the subdivede start from the top of the side going down, because the extrusion orginal was in minus z direction, so the divide srf follow the roofedge of the box, instead following the groundedge at the box.

Maybe i need flip matrix,or reverse list, but my head is not that expirienced. Have you an idea?

Thanks a lot,

ELisabeth

This new problem could well be a result of my code, if you used it, instead of "because the extrusion original was in minus z direction".  You can tinker with the sequence of edges connected to 'EdgeSurf', for example.

So far exploding the Brep in edges and making new surfaces, looks a good solution.

With the new surfaces all old data is deleted.

It is a  problem with the orginal trim,

Thank a lot.

This one splits the faces of the Brep without reconstructing them BUT...

  1. it works with only one surface at a time (unlike the 'EdgeSrf' solution)
  2. it expects four edges on each face
  3. the results of 'SrfSplit' are in a somewhat chaotic order
  4. it sorts the edges by the Z value of their midpoints, which might not always work?

Attachments:

Instead of using the results of 'Curve On Surface (CrvSrf)' with 'SrfSplit', this one uses them to re-create the surface using 'NetSurf', then uses 'Isotrim (SubSrf)', which produces a well ordered list of sub-surfaces - very similar to the 'EdgeSrf' solution, perhaps even identical, but potentially more accurate because it uses more UV lines instead of just the edges.

'Sort Edges by Midpoints' is also improved(?) here, but this code still suffers from two of the limitations noted with isotrim_2015Dec28c.gh:

  1. it expects four edges on each face (same as the 'EdgeSrf' solution)
  2. it works with only one surface at a time (unlike the 'EdgeSrf' solution)

Attachments:

Hi Joseph,

Thank a lot for your several codes to answer my problem, i think all your solutions is great, you did realy great, i dont  know what i prefer, i need work......and check the most suitable...

Elisabeth

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