Multiblend in Rhino, how to do?


jeff, I expect tools to make surfaces and editing more robust and solid, at Alias (at least these).

I expect that after 6 versions of Rhino, about 30 years of uninterrupted development, more powerful filets. Am I asking too much? The impossible?
Ok, there will be SubDs, but when? not now! Several years will pass …
Developers are doing a great job, but many known issues are dragged from version to version, and it’s not enough to solve some cases and leave another 10 unfinished.
In the bug fix list, I always see many fixes on the display, render, annotations, layers … instead a few surfaces, editing, shell, fillets, booleans (too little, few adjustments, in my opinion).



at first, sorry for my poor English. I don’t understand everything in this thread. Nevertheless I hope you can help me :slight_smile:

I have a problem with the red surface in the attached file (2.1 MB). It’s a patch.
In the first moment it looks nice. But when I want to join the red surface with the blue surfaces it doesn’t work.
There are very, very slim gaps between the red patch and the blue surfaces.

A multiblend surface should be better.
Have anybody an idea how I can do this?
The surfaces should have G2.

The orange curves are temporary blended curves (G2) for the patch and not important for the new multiblend surface.

Many thanks in advance!


You’ll get a far better result with a trimmed guide surface over patch or multiblend. Rhino’s patch command is completely worthless when matching to surfaces. Multiblend may look cool but almost always results in B class surfaces.


Thank you, it looks nice. But how can I create a “guide surface”?



here are methods I constantly use when doing such situations. Method one is the lazy approach. If it works you are fine, if not you need to go for method 2


Am I missing something? Why not use filletedge?


_Filletedge, cannot do g2 fillets(or fillet-like-blends; depending on definition).

Cornerblends made from _Filletedge are the worst cornerblends you can do, but the only ones which can be automatized in a satisfying way .Okay _Patch can always do worse :slight_smile:, but everyone doing serious design-surface modelling won’t use _Patch anyway, except for filling tiny holes.

My last post, was not about Multiblends in general but more an indirect answer to Guitar_Rhino’s post.


Thank you very much, TomTom!

But unfortunately it doesn’t work for me.

With Method 1 I can’t trim the green surface:

Method 2, I don’t know the order of the steps.
And where can I get the trim-curves?

Maybe it’s too difficult for me.

I tried an other method. Maybe it works for me:

  1. the green surfaces are blended from the blue surfaces
  2. create a patch (red) inside the green and blue surfaces
  3. trim 3mm roundly the patch
  4. blend from patch to the neighbour-surfaces

Now I can join all surfaces.
I have to try it on the CNC …


Sorry, I had to rework your initial surfaces (point count/surface degrees) to get a good result. It wasn’t easy to do. I think your method should be good enough. Guitar parts usual require a lot of finishing after a coarse machining. At least that’s the way Larrivee did things at their Vancouver factory.


sometimes they’re perfect since you’re working with radii or your tools are radius based :wink:

in many instances, FilletEdge will give the exact results in Rhino as you’re expecting in the construction. (in an automated and satisfying manner)


True, but I’m talking about design surfacing. So it always depends. If the look doesn’t matter, who cares.However cornerblends with singularities (triangular patches) are always hard to match. So at some point you have g0 only. For construction this is satisfying, for design it depends. I constantly create Fillets for manufacturing having g2 connection, at some point only matched g1. Basically Bezier blends with acceleration, moving into a true fillet. This is not a true fillet, as said in my last post, but a compromise between two worlds.

you need to cut and match the green surface, but as I pointed out, this won’t be a good solution in most cases, but it can work in this case. Its Stratos solution, and he proved it works. However as he said. You need to improve blue surfaces.

Here is a sketch. Its more difficult, especially in Rhino, but its the standard approach. I use this all the time, I might share a screenshot later. I have no CAD on this machine.



You don’t want to trim the green surface . You want to trim the blue surface and then make the green surface matching to the trimmed edge of the blue.

Before you do anything you should first make sure the surfaces that you are building the blend between are matching at the corners. You can do that by using OffsetSrf (e.g. offset in the same direction by say 10) and make sure the corners don’t pull apart on the offset surfaces. If the normals aren’t matching at the corners it won’t be possible to make a good surface.

In the enclosed file I used sweep1 with simple option to get a very simple surface (like your green surface but much simpler). I did a little point editing and curvaturegraph to get a nice surface which looks good but the edges are not within tolerance. I then used MatchSrf to get a the edges to match making sure that each match did not add lumps to the interior of the surface.

Fuellx.3dm (326.5 KB)


I think this is a fantastic idea - it would be really helpful to new and experienced users.


A repository of schematic how-to’s, like for that standard situation just above, should be very easy to set up here, no?


gitar_cleaner_start.3dm (222.3 KB)

Rebuild the input file to start with cleaner surfaces. Don´t know the tolerances but it was just for test. Much easier to get a cleaner transition. Patch is not really a command that helps.


Too true. Often not shown to make things appear as if they were an acceptable solution.


My other favorite trick is to crank up the zebra stripes to hide continuity breaks.