Fillet edge continuity problem on a Mouse model

Hi there!

I’m recreating my main mouse, a Logitech GPRO HERO. I’m able to make the overall shape, and I’m loving the fillet edge command. However, there’s a problem where the fillet continuity doesn’t connect properly, as you can see on the image bellow.

Here are the surfaces without fillets:

Any ideas on a better workflow?


Hello- please post a file with the surfaces.


There you go.
Logi.3dm (460.0 KB)

I’ve also uploaded the curves I used to make the surfaces.

The bottom surface was made with Patch.
The middle was made with Sweep2.
The top was made with Patch.

You can see some curves have loads of control points. Weirdly, if I rebuild them using less points (to a deviation of 0.002, so some curves were rebuilt with 6 to 10 points instead of whatever number they had) the surface comes out weird if I try to recreate them.

LogiCurves.3dm (41.0 KB)

Sorry for the spam, guys. Last post tonight. Just adding that I kinda managed to go around the problem on one side of the model by adding a few more Handles around the problem. It only worked on one side of the model, though.
I’ll probably just deleted half the model and use the good half.

Hello - I’d back up and greatly simplify the structure of this thing - the immediate problem with FilletEdge arises from the side surface being a bit messy there where it goes wrong - Sweep2 is probably not the first choice as iut makes a quite complex surface - (I see you posted some curves, I’ll look at those tomorrow).
The top surface is created with a patch - it’s not illegal but again not the very best or first choice for a surface like this - notice how the isocurves are not aligned to anything that particularly makes sense for this shape.
In the attached file, I somethat simplified the side surface and recreated the top one - not perfectly to your design but enough, I think, to give you an idea.

Logi_Maybe.3dm (354.2 KB)

(In addition, the ‘DistanceFromEdge’ style of FilletEdge is the least reliable - I’d use DistanceBetweenRails here, myself. There may still be some messiness at the front corners.)


1 Like

Hey Pascal, thanks a lot for the file. But since I’m still a newbie on Rhino (back on it after a decade or so) I’d like to know how I can created better surfaces. Because, for instance, I’m able to build the top surface (using Patch still) using fewer UV spans (like 4, 6, 8 10) but the edges of the created surface don’t match the curves, so in the end I can’t fillet since they deviate a bit.

Would you mind telling how you remade my top surface or how I’d be able to make a surface from my curves in a better way?
And also, how you’d create the sides, if not using Sweep2.

Thank you in advance.

Hello - I would simplify all the curves if possible -

One way to attack this is to use some of your curves as reference rather than inputs - of course this depends on the constraints or lack of them, in the project, but for example, you can start with the simple curve above and extrude it then project some of your other curves onto the extrusion, with History on:

If you ChangeDegree on the extrusion in the U direction to 2 you can then monkey with the edge control points and get the projected curves to match very closely to the originals (blue and white here):

and get a much cleaner, simpler shape:



Thank you Pascal! That’s quite a lot above my paygrade, but I’ll definitely try to learn this method. None of the tutorials I’ve seen about Rhino talk about this, so it’s an alien concept to me.

Hello- see


1 Like

Hey @pascal ! Thank you for the documentation.
I took a look at it today and was able to achieve it in a bit of a different way, but still much better than what I had previously.

Glad to see you’re one of the writers of the documentation :slight_smile:

Cheers! Have a great weekend.

1 Like