Connecting points from multiple lists, and offsetting surfaces

I have an irregular volume, whose cross-section changes in multiple dimensions as you move along it. I’m wanting to be able to use this internal volume to create a changeable structural grid that I can change the frequency and size of columns. I’m not sure of the best way to do this.

My initial thought would be to divide all of the edges by the same number of points, connect the corresponding points of each curve into a polyline, and then from there extrude a profile perhaps in order to create the depth of my structure. However I’m not sure of how to connect point A from line 1 to point A of line 2, etc, as I can only get the points on line 1 to connect to one another, line 2 to one another, etc. The blue lines in the image show how I want to connect them, the red grasshopper lines is how they are connected currently.

I’ve also been having issues with offsetting the surface to create the depth of the wall. I can only seem to offset each face individually rather than offsetting the overall shape, with the corners not being connected as in the image. I can only achieve this with the pufferfish offset surface component and not with the standard grasshopper component (I have removed this component for the sake of sharing the file with those who may not have the plug-in installed).

Any wisdom shared would be very much appreciated :grinning:

!Match points.gh (16.6 KB)

image

take a look to this :wink:
Match points_idea.gh (27.6 KB)

Let me know,
Huskenazy

Hey Huskenazy,

I think this looks good! I’m having a problem seeing it though, as even when I have the preview turned on for all components nothing is visible in the rhino window :confounded: I can only tell something is there when I bake the final output, have you any idea why this might be?

Maybe the grasshopper preview is off.


check if in your viewport you set the red object.
If you set the first one you won’t see anything grasshopper geometry in rhino viewport; if you set the green one you will see in rhino only the components you select in grasshopper.

In addition to @huskenazy suggestion, is there anything that looks like an error message printed to the Rhino command history when a preview should be visible?

I love that you posted a photo from a book to show this.

3 Likes

Thanks @DavidRutten.
It’s Arturo Tedeschi’ s book AAD Algorithms aided design.

Yup, the preview was turned off! I had no idea this was a thing, and so have now purchased said book :stuck_out_tongue:

Hi again,

I’ve been playing about with your file that you uploaded before to try and make it work more like I want but still having problems.

Rather than having circular pipes extruded as you had before, I would like to offset the curves to make chunky pieces of structure, similar to in the image I’ve attached. I’ve joined the line segments to polylines, projected them onto planar surfaces and made boundaries to then be extruded to the desired depth, but there seems to be a problem with some curves offsetting inwards and some offsetting outwards (see attached image).


I’ve also tried an approach of creating a rectangle to the cross section of the column, and then extruding it along the curve. The problem here is that the rectangle is extruded relative to the ground plane, rather than being perpendicular to the curve. It therefore has different thicknesses all the way through and then also starts inside the curve and then ends on the outside.

Due to the fact that each of the curves of the main volume differs in length, it means that the points are spaced differently and I therefore do not have them all planar and parallel. Ideally I would like each section curve to be perpendicular to the straight edge (like the orange lines in the image), and then spaced evenly in the Y axis - similar to how you would draw a structural grid

Does anyone have any ideas on how to get around any of these problems?Match points_idea2.gh (18.7 KB)

I’ve also been having issues with offsetting the surface to create the depth of the wall. I can only seem to offset each face individually rather than offsetting the overall shape, with the corners not being connected as in the image. I can only achieve this with the pufferfish offset surface component and not with the standard grasshopper component

Yes the pufferfish one is just for surfaces (trimmed or untrimmed) not entire Breps - Mainly because there is not a universally great solution for this problem, techniques are based on the specific condition. Even Rhino seems to do not such a great job at it (I’m sure you have tried it in rhino at some point and got some weird results). There is a method in rhinocommon for R6 for offsetting breps but it unfortunately has the same issues as just doing it in Rhino.

I find better results are usually achieved from shelling. Which required you first make your geometry a solid (closed brep). Then remove the faces you do not want. I have a shell component in Pufferfish.

Shells.gh (26.7 KB)

Michael,

Thanks, this could work well for creating the outer walls of my structure. The only thing I would need to do would be make sure the starting volume was for the external shape to be offsetted in, rather than creating the internal volume to then offset outwards for the wall thickness as I had been doing.

I am still unable to create the A-frame beams that I want though that would support the roof and walls. Does anyone have any ideas?

I think I’ve figured it out!! :grinning::grinning:

So using the Shell component from @Michael_Pryor’s Pufferfish, I then went down a similar route to what @huskenazy had proposed before and used the inner shell faces to get my curve points, project them perpendicularly and create the profiles. I had some issues figuring out how to get the curves to offset the same way, and am not fully sure why it works like this, but it works and that’s the main thing I guess.

Out of curiosity and eagerness to learn, are there points that could be improved or made more efficient?


Offset Curves Problem.gh (85.0 KB)