The way I did dit with rhino was to use array of curves (being the sections of the hull geometry), with a cage in order to get the form and loft the curves to obtain a hull.
I would like to perform the same with grasshopper. Any Idea?
Thanks, but the question is not so much about how to model a hull, but more about how to scale some curves (being the sections of the hull geometry), according to a curve being the curvature of the hull.
It is actually a multihull, so the deck is on top of the hull.
My idea is more like starting with the sections before dealing with the hull form and then loft them, like I would normally do building it in real life. I want then to modify hull shape by modifying section beams.
I would actually like to start with a curve (let’s say the stern of boat hull), then make 18 copies every 1 meter, and finally modify the hull shape by modifying sections individually.
But if I can copy sections, shape the overall along a curve (2 curves actually), it is a good start. I used Cage and CageEdit to deform the overall sections shape in Rhino, but I can’t find equivalent in grasshopper.
Maybe the trap is to want to do everything with grasshopper, but as CageEdit is non destructive until confirmed, I can keep using it with rhino. I ended up drawing 18 similar curves in rhino into a cage, and then put those curves into grasshopper in order to loft them so the loft keeps following my caged curves in rhino.
The problem being now that I can’t edit the curve while they are caged : )))
Why no cage in grasshopper?.. : (((
I don’t think that cage edit is the way to go. Make the hull shape in Rhino, a degree 5 x5 surface with 6x6 control points should be enough. Then you can use grasshopper to extract your 18 sections from that surface, and generate stringers etc. Best to start with an excel spreadsheet, generate a first weight estimation, then you have a first guess for LCB. Think about what cp you want to achieve and let the design spiral start… Scantlings, weights, hydro, modify hull shape, adjust to ISO rules etc…
You are right, I could indeed use a few curves to shape the hull and then extract the sections but it is not the way I want to do it.
I start build the boat by its structure with curves representing stringers. I then use a cage to shape those curves into a hull. Then I can sweep a profile to build beams and loft curves to make the hull.
But the beams from the hull intersect with the beams that are the structure of the bridge. Like so :
My problem in rhino was that I had to go all over the process in order to modify the structure of the boat. Sweeps, booleans etc. So I started to study grasshopper to see if there was a way of doing all this non destructively.
The overall hull shape is quite straightforward and definitive, what’s modified is more the structure that will influence the interior (different passages between bridge and hulls, geometry of the bottom of the bridge etc.)
You are probably right, but this design is made in order that I actually end up constructing a boat, not designing 3D boats in rhino, so I have to imagine a way of building it with the skills and means I have. which might not coincide with the right way of designing boats with rhino.
Wisdom is also about helping someone achieving his goals, even though he could be wrong.
You don’t have to do the hull shape in Rhino, as I would do it. There are some great ways to do that with grasshopper, just look at Gerads or Josefs scripts. There is also Nemo on food4rhino and some other great tools that can help.
If I were you, I would spend a lot more time on the hull shape, excel stuff and structural layout…
Yes thank you I understand, but I might be some kind of mismatcher : )))
The thing is that I want to build my own tools or scripts according to this particular project. Nemo is more of a tool for a marine designer, which I’m not.
The way I see it, and that was my initial question is a way to receive X position of a particular point on a curve according to its Y position, and then use this value to scale my curves (for instance : X_scale of curve = X_pos of the point on this curve sharing the same Y_pos). Like getting an array of every X position on a curve according to Y position every 100cm.
The goal is indeed to build a hull, but maybe I should have never said so…
So to conclude, i decided I would use destructive CageEdit for the overall form of hulls is quite straight forward.
But all the rest was done via GH, with a boolean difference in order to attach hull beams with bridge beams. As this :
On the left of the screen you can see in yellow all the curves designed in rhino and 3 sections for futur sweep.
On the GH window, you have in yellow all the hulls’ curves, and slightly on the right curves of the bridge in light brown. Then in mallow you have all the sweeps to for beams, in blue the loft of hulls’ curves, in green a cap of all of sweeps. And finally in red a boolean between hulls and bridge beams with in purple an X “go and back” decay of half their width so they can fit together. And then a mirror.
So now I can edit all beams individually.
I’m quite happy with the result for a first GH try, it did what I expected. Still missing the overall hull form as non destructive though…