Is it possible to combine several close polysurfaces

Hi there, in my current design below it’s made up of
1 closed polysurface - hull
26 x 2 closed polysurfaces - the design u see surrounding it.

Is it possible to combine all this into 1 closed polysurface? Because I want it to be as a whole and not seperated. I’ve tried boolean union but it failed, are there any possibilities to making this design into 1?
SHIP WITH BB WITH RIBLETS offset 0.5 IN MESH.3dm (513.9 KB)

interesting design :slight_smile:

What are you trying to do, reverse engineer a CGI model of a ship into real-life ship design?

You should change your approach from the get go. The problem is much deeper than just joining surfaces.


To run this with decent speed you need one hell of an engine :slight_smile:

Hello - the file as posted contains one mesh - nothing else - is that what you intended to post?


Hey there,

I am so sorry, I have uploaded a wrong file. this is the file I intended to put.
The file titled “Working” is the 2 separated components I wanted to combine together.

And the file below is me attempting to combine it together.
SHIP WITH BB WITH RIBLETS offset 0.5.3dm (5.5 MB)

Do advise, on how it’s possible for me to combine everything into 1 closed polysurface.

PS. Sorry for the late reply, I was on holiday and had no access to my files.

Hey there! I have replied your message above :D!

Mind sharing, with what I have to do :(? Cheers mate!

First I need to understand what are you trying to do. Since it’s very weird. Why are you attaching these wavy solids to the hull?

Are you working in a Towing Basin Facility or something?
Never seen such turbulizers before. Usually they simply glue a cotton thread or a twine to the model.

Do you need the inner surface intact?


The purpose of my design was just to attached the ribblet design on the surface of my hull and test for drag using ansys fluent as my school project. And we have no specialise teachers who can teach us.

Yes you may see it bulky, but it is suppose to be smaller when I learn to how to attach the ribblet design on it.

I was thinking if “flow along surface” would be able to do it?

Hi @haruroslan,

I see. Why don’t you then simply turn on the control points of your original surface and add rows (columns) of control points that you then scale to create a wavy pattern? This way you will need only to close the surface. No boolean operations.

If you still want to use your “ribblet” then don’t make it as attached on the outer surface of the hull. Instead make it go through the hull. This way you’ll have more change of boolean union to succeed.

Hello - Join seems to work.


i have tried doing so, however when i “-join” it. The design of my riblets and hull are 3 seperated closed polysurfaces. I would want all 3 to be as 1 closed polysurface. Are there any ways to go about it?

Hi @haruroslan,

I tried to combine the ribblets and the hull using the method I specified above (not the control points, the other one)

The problem is that on several locations your ribblets only touch the surface, there’s no clear intersection Rhino can use to create the boolean union.

Rework your ribblets in a way that they always intersect the hull. Then the boolean should work.

Hello - I don’t know if this is the result you are after?


Thank you so much for the prompt reply! I will really try my best tomorrow when i get back in my computer lab!

@pascal i will see it tomorrow when i enter my lab! Cheers mate!

Hey Pascal,

Mind if the format you sent were to be in Rhino 5. Because I am unable to open it on my school system. Sorry to trouble you! ignore this sir


Update: I have installed Rhino 6 on my personal laptop and YES this, is what I need. Thanks so much! But may I know how you did it? was it really simply “-join”?

Hello - no, it was not just Join - it is somewhat tedious as the file was but can probably be made a little less so. Starting with the file you posted:

1.Work on a half and Mirror

  1. ExtractSrf all of the back faces of the riblets.

  2. DupEdge all of these edges:

  3. Use the curve to trim the hull:

  4. in Top trim back all the faces that cross the centerline-

  5. Now you can Join.

  1. Fill in one or two gaps with PlanarSrf and Join.

Mirror, etc.


1 Like

This is not the task @pascal, as you need also the hull surface in between these riblets.

Imagine a ship which is covered by sea flora. weed and seashells.

All that is worsening the speed / consumption of the ship.

At least this is my view of that.

Boolean is the best solution, but the ribblets have to be changed, because currently they are tangential at some locations, that causes the booleanunion to fail.

This, of course, is why I asked when I posted the file if that was the desired result. It is a valid Rhino result, the other will have non-manifold edges, and while this is allowed it is not very clean for Rhino.


1 Like

Thank you so much for the lovely step by step method Pascal! Definitely helped a lot in my report and explanation of my problems.
However, I got stuck after step number 4, when I tried to simulate your methods on a different design of mine. The design still was 2 separated component.

Mind telling me what went wrong. In the file below.
I cannot join the file from here.3dm (3.5 MB)

Version 0 of this design will be in this one,
Ship with ribblets without gap.3dm (8.2 MB)


I agree with your point of view regarding the design, however due to my lack of time in the designing component. I will make do with what I have for now, it’s really a tough school project of mine. I will definitely put your thoughts into my considerations and problems.


1 Like