Grasshopper

algorithmic modeling for Rhino

Subtract a paneling area with a surface/curve in Grasshopper?

Hello all,

I am trying to create a diagrid framework over a trimmed circular cylinder.  I have figured out how to get the diagrid pattern on the surface using the Paneling Tools plug-in (which I highly recommend!).  What I need to do now is subtract the cutout areas shown in images 1 and 2.  I have tried to use the trim with region/brep tools but I cant seem to make it work.  Would anyone be able to steer me in the right direction?

A second question for further down the line would be how to extract the curve geometry, not the faces that the paneling does, to then be able to use the pipe command to create the structure.

If anyone has any ideas for either issue thanks and please let me know.

-S

Views: 4784

Attachments:

Replies to This Discussion

Hello Steve

can you please post the rhino file, or internalize the surface ?

cheers

alex

Sorry about that!

Attachments:

Update:  The missing rhino model and a potential fix with the "Trim Grid" command in Grasshopper.  The issue is that now its trimming the shapes and not the lines themselves.

Attachments:

Here's one way. This approach requires closed "cutting" volumes, so I didn't use your curves. Instead, I created sphere that takes a bite out of your design surface. Let me know if you have question.

(I internalized your design surface and the sphere I used to cut.)

Attachments:

+1

That is exactly what I wanted!  So if I'm understanding this right you are creating a boolean from my brep then culling the lines if they are on the inside/outside of that brep.  I get a little lost after that, sorry please forgive my ignorance. If you could shed some light on it I would really appreciate it, thanks again!

Not doing any booleans.

1. Test if the panel surface is inside the Brep ("Shape In Brep" component). An output of 0=completely inside, 1=intersecting, 2=completely outside.

2. Cull the list of panel surfaces based on whether they are inside (0), intersecting (1), or outside (2).

3. If it is inside (0) or outside (2), then I don't need to do anything with them, so I pass them along to the "Inside Panels" and "Outside Panels" (Brep) components respectively.

4. If it is intersecting (1), then I want to split the panel surface with the cutting Brep ("Split Brep") component. Each panel surface will be split into two, so a list of N=2, so I can use the "List Item" component to pass the 0th items to the "Outside Panels" component and the 1st items to the "Inside Panels" component.

5. The "Rebuild" component is a cluster to reform the two pieces of the split panel surfaces. You may not need this. Since I am splitting with a sphere, the split edge of the panel surface will be a curve, not a line. This may or may not be a good thing. If this is a building, it may be easier/less expensive to cut straight edges on all the panels and to have straight mullions or whatever other attachment system. The Reform Boundary Panels group could be simplified like this (I took it from an older definition):

Make sure the "C" input on the "Polyline" component is set to True so it forms a closed polyline.

Thank you for the explanation.  It is indeed for an architecture project I am working on for school so the edges are important.  The goal is to pipe all the lines to then form a diagrid structure over a walking bridge kind of like the highline in NYC.  I want to achieve an affect like the Kings Cross Station seen here:

https://www.google.fr/search?q=kings+cross+station&es_sm=93&....

So I did my best to reconstruct the image you showed me.  I finally got it the same and created some new elipsoids to work as the cutting agents but I am running into a problem where the split did not succeed.  Any idea why that might be happening?  I have uploaded the grasshopper file I'm working on/the rhino file and a jpeg that explains the problem.  Thank you so much for your help with this.  Its pretty far over my head.

Attachments:

The problem is with the ellipsoid. For some reason, GH doesn't always interpret it as a closed Brep. My solution is to create the ellipsoid in GH. I measured your ellipsoid and used that to create one in GH. This also gives you the flexibility of moving and resizing it.

To do a second ellipsoid, repeat the process but only operate on the panels that are outside the first cut.

As for the piping, you'll find it isn't quite as straight forward as piping: the structural members are inbound of the panels. You'll have to devise a way to offset everything inward. Just a heads-up.

Attachments:

I see, strange that grasshopper wont recognize the shape from Rhino.  Thank you so much for the help!

By my brep, I mean the sphere you created in place of it.  By the way what does internalized mean?

If you Right-Click on a geometry component, you can choose to "Internalise Data." This will store the data in the component, so you don't need anything in Rhino. If you open my definition with a new Rhino file, you'll still see the Design Surface and the Cutting Brep surfaces when you preview those components. You can bake them to Rhino. It makes it easier to share the Grasshopper definition without a Rhino file.

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service