I basically have zero experience with Rhino/Grasshopper, but I need to use it for a project for work. I have model of a concrete tank that’s non-orthogonal, non-planar, and has curved elements. I need to find the wall centerlines and create planes at the centerlines of the walls and slabs in order to export it into my structural analysis software.
I literally have no idea where to begin. The models are here:
Any suggestions, directions, feedback would be so appreciated. Thank you!!
Hi Michelle - that is a bit of work it seems to me - can you simplify at all? i.e. do you need the ‘main’ walls only? That is more tractable.
Is this on the right track?
Tank1Mids.3dm (1.3 MB)
Wow, this seems really close to what I need actually!
But yes, it can be simplified. The little “curb” on the top can be ignored and I would actually make the top of the wall the same elevation all around. The perimeter surfaces are the most critical (and the most complicated!)
Is it possible to make the center planes intersect?
Is it possible to add the center planes of these 3 surfaces?
Thank you so much
Hi Michelle - I did not finish the job, just getting enough to know if we’re on the right track.
Yes, all that can be done - it is a bit of work and I’d like to do it in a way that makes sense for someone not familiar with Rhino to repeat - that will be the challenge. I recommend, if you want to do this kind of work looking at the level 1 and level 2 and other training material here
and get at least somewhat familiar with the Rhino tools and approach to modeling.
I’ll chip away a bit more on your example and see if we can get you pointed in the right direction.
I am not sure what you are indicating with the red lines along the edges in your image…?
Thank you for the link to the training material! I’ll definitely take a look soon! (after impending project deadlines…)
Sorry it’s a bit of work - it sounded simple in my head, but I understand the geometry is complicated. I really appreciate the help.
The red lines at the edges? I opened the file you shared and the red lines showed up… I added the 3 red “x” in a screenshot to ask about the 3 surfaces that didn’t have the center planes showing.
Hi Michelle - is this any closer to what you need?
Tank1Mids.3dm (998.2 KB)
This is AMAZING!!! Thank you!
How did you do it? Can you share the Grasshopper file? I’d love to see the code and see if I can follow it myself and try and do the same thing for the 2nd Tank.
Hi Michelle - no GH is ionvolved here - it might be possible in GH but in this case it involves a good deal of hands-on modeling.
The basic procedure is
Measure the thickness of the wall where you want an offset - there are ways to do this more or less on the fly but for now, get that wall thickness to begin with - the object varies, it seems, so there is that extra tedium of knowing how far half-way is every time.
Make a new layer and call it Offsets or something. Set thelayer current .
Explode the object into its various faces. You can do this with sub-object selection on the joined object but I fiound that setting the offset direction fails in that case (a bug, I think) so exploding is probably easier in the end.
Select the faces to offset - one or the other side of the wall - I worked from the outside mostly, I think. Note you can select multiple faces to do at once if they all have the same wall thickness.
OffsetSrf (Surface menu > Offset surface) and make sure the command line shows Solid=No. Set the distance. Note the direction arrows on the faces - that is the direction the offset will occur. Enter.
An offset face will appear on your new layer. When you get them all, isolate that layer. (
Use ExtendSrf to extend the edges of the surface through one another. Some that have more complex trims on the edges may seem not to work at first but I got them all extended. It’s tedious but works.
Sorry I’ve been MIA - I had to focus on producing drawings for a deadline and just now have time to relook at this.
Your directions were very clear and easy to follow - thank you! I’ve also started watching the tutorial videos and they are very well done.
I do have one follow-up question. In the attached image, I am trying to get the curve in the red surface to align with the curve of the green wall that’s running perpendicular. The green wall is a tunnel. I’ve tried a bunch of different things (so many that I don’t remember), but nothing seems to be doing exactly what I want. Do you have any suggestions?
Hi Michelle - from what I can see it looks like you will need to Untrim the surfaces with the cutouts and extend the green surface, and possibly others through it then retrim with these extended surfaces.
It worked! Thanks so much for all your help!
First, sorry for all the follow up questions!
Second, so I have the geometry exactly as I need it, but everything is surfaces. When I import the file into my structural analysis program, I’m getting errors, and I think it’s because the structural program needs closed polylines in order to understand the geometry. Is there a way to “explode” a surface so that only the perimeter lines are visible? Or do I need to retrace all the surfaces with new polylines?
Hope that question makes sense.
Hi Michelle - See if
NonmanifoldMerge gets you a thing that is acceptable, or possibly, that followed by meshing (
Mesh command) - not sure if the target app may be looking for mesh objects.