Hi everyone, very new Rhino user here. I have created the below design (using Sweep2) and am really struggling to extend the ‘pipes’ and cap them with hemispheres. I have tried several different approaches and the latest uses Loft and Revolve for the caps. The result is messy and not the smooth profile I am after at all. Does anyone have a better suggestion? Thanks so much in advance for the help and apologies for the request from a newbie!
Hi David, thanks for the suggestion. Hopefully the sketch below gives a clearer impression of what I am attempting to model. Any help would be very much appreciated as I have exhausted my (limited) knowledge of what tools I could use in Rhino
Dear @Ozzy
if you build proper curves - and use the same structure for the flat section as for the wavy-Section you can build the cap with a simple
_loft
first surface edge
additional curve
second surface edge
options: normal, match start tangent, match end tangent
otherwise you have to handle each of the rips as a separate surface / cap / 4x above workflow…
check the control-point structure of the curves - to build them i used the construction on the red layer.
check the curves
try to redo above workflow with the curves in my file.
Dear @Tom_P, thank you so much for the suggestions. I’ll certainly study your file and the training guide, and report back hopefully with the completed model!
in v1, you will build 3 curves that touch at the apex, then loft and match srf to get your continuities.
in v2, you will build a helper surface that is rotated 90 degrees and then use a blend surface with history. Adjust as needed to get your proper shape, then trim it off flat.
Hi Kyle, the two alternative approaches are really interesting. I’ll try and do both for practice - thanks very much for the suggestions
One (simple and in hindsight, obvious) error I was making with loft was to select the curve rather than the polysurface edge. This prevented me from using the ‘match start tangent’ option. Sharing in case other beginners make the same mistake!
Hi @Tom_P, quick follow up question if I may. How did you create the curve profile from the ‘constr’ layer? I tried to do the same with the _CurveThroughPolyline command but the result are separate curves. Thanks again for the help
how to get the repetitive construction as helper to draw the curve?
the main idea is to create some construction for point-Snapping, that will help you get a repetitive curve…
with this “helper” draw the final curve…
i can t provide an exact workflow… something like this:
a first quick
_curve (degree = 3)
to figure out, if this little amount of CVs (control vertices / points) are enough
move CVs to fit the design…
now extract one part / half of a wave and multiply it, by making sure, symmetry and repetition fit:
_pointsOn
_line (with snap to points) (the chamfer / non rectangular part…)
_mirrow
_line
_copy / _arrayLinear
…
then i drew the final curve based on the construction done above:
_curve (degree = 3),snap to endpoints
finetune the curve ends:
i drew one element more then needed on both sides
_split (point) snap to quad…
some point edit with gumball to have nice and symmetric ends…
to get the curve with the flat part:
turn on control points
_setPt
set the z coodinate in world to the same value…
Thanks again Tom, you have been very generous with your explanations. If I could bother you once more though - I tried to replicate your work but failed to Loft the profile of the curves. It seems like the edges I have created (top of the below image) are separate and JoinEdge fails on account of ‘unable to find overlapping intervals’. Any last suggestions you wouldn’t mind sharing?
@Ozzy for the workflow with the loft to work (in this case), all curves (or edges) must have the same (nurbs) structure.
this is not the case for the lower curve in your file - the one that is mostly straight.
you can use a copy of the wavy curve, rotate or mirror it, then use _setPt to straighten the inner part (set all CVs to the same (y?) value.
to get nice “poles” - the point where all the curves meet:
this point must be exactly the same for all curves.
and the curves should end tangent towards a common (local construction) plane.
you might need _matchSrf in the end to fit the surface(s) more precisly.
hope this points into the right direction.
kind regards -tom
Hi @Tom_P, that has done the trick! Thank you so much for going our of you way to help me. I have been really impressed with my first interaction with the Rhino community and hope to be able to contribute in a similar way one day.
For other beginners, a couple of things I have learnt during this project (apologies if they are obvious):
_CurveThroughPt (with degree=3) is a really versatile way of creating curves that can be easily manipulated later on, especially in conjunction with _SetPt
Using the match tangent option with Loft requires surface edges rather than the original construction curves to be selected (obvious in hindsight but a source of a lot of frustration!)
Matching structures can be more readily created with edges that have the same underlying structure (nurbs)
A polysurface can be turned into a surface (not sure if this is the best way or even good practice…) by exploding it and then using _MergeSrf on successive pairs