Smoothing closed polysurface

Hello there,

I am generating a face crown gear tooth profile using Grasshopper. The tooth profile is being generated by a loop function that repeats a solid difference command after rotating the crown and pinion each step.
The result looks like this:
Screenshot 2020-03-04 at 16.53.17

I would like to export this solid to Solidworks. Before I export however I would like to create a smooth nurb (?) surface to replace the stepwise result of my solid difference operations.

This surface is pretty processor intensive:
Screenshot 2020-03-04 at 17.00.58
I would like it to be like this (this is an example of a different crown gear):
Screenshot 2020-03-04 at 17.02.40

At first sight it seems to me that should not be very difficult but after hours of trying I just can’t get it to work… but that is probably because I am a Solidworks user with limited Rhino and Grasshopper experience. So the solution can be a Rhino operation and does not necessarily have to be a Grasshopper thing. Although of course that would also be very cool.

I have attached the Rhino file that contains the baked crown gear
Crown gear generator 07.3dm (6.8 MB)

For anyone interested I have also attached the Grasshopper code for creating a pinion face gear pair. There are several extremely expensive software suites out there, but after a little coding it seems to be that this (not very tidy script) does the trick.
Crown gear generator (35.1 KB)

I would be so grateful if there’s anyone out there that can help me out.

Did you try with this plugins ?

Thanks for thinking along. Unfortunately those scripts create bevel gears. I need a face crown gear. It’s a different kind of gear that can only be generated with a loop like I have scripted.

You created this in 2013?
i try but i don’t found any option to rotate or generate new shape

Cool. Are you sure that the pinion gear will align with the crown gear “tooth profile” after 360 degrees of rotation? That should be “simple” enough to calculate based on comparing the two diameters?

I made a few changes to simplify this and am thinking that you could very accurately generate a small portion of the crown gear “teeth”, smooth them as you like, then replicate them to get the full circle? It will be tricky to generate the portion you need to replicate though… For example, here’s something that generates nine degrees of crown gear teeth at 1/10th degree intervals but the beginning and ending teeth are only partials so maybe only one of them is fully formed: (16.6 KB)

Or you could just let this run for a long time…

1 Like

Most of the time is spent in SDiff but Anemone’s “Fast” loop components are ~25% faster (60 secs. vs. 75 secs. for 90 iterations, or an estimated ~40 minutes for 360 degrees (3600 iterations). (15.6 KB)

What exactly are we doing here?
Is this really the correct method?
Don’t, a simple gear rolling into a rack (or a 90° wheel), re-create back again straight teeth?

This is an old gear i made for 3d printing … a helix gear on a 90° crown.
It worked pretty good and i used straight-faced gear on the crown… like a linear toothed rack.

I tried to simulate the thing you asked, but by using only a single tooth (and then later i would have used polar array…)

… seems pretty flat to me.

Are we using the wrong math/idea?
It doesn’t add up to me.

I would go with simple linear rack “rolled up” into the crown and then extrude to a point…

I’m lost.

omg… are you using cylindrical pinon gear with a 90° crown?
is that… “legal”?
Everyday something new to learn.
Why not use a conical gears?

Hi Joseph,
Thanks for putting in the work! You are right, there is no need to generate the full crown, I only run the loop until 5 or 6 teeth are made.
But either way: the end result is still a complex stepped surface that I would like to smooth/describe with a simplified surface . Any idea how to do that?

Hi Ricardo,
Thanks for thinking along. The reasons why I need this gear are quite technical but it boils down to this:
bevel gears work best in transmission ratios not much bigger than 1 to 5; but I need 1 to 9
bevel gears have conical pinions that are more expensive to make than round pinions
bevel gears can transfer less force per tooth than face crown gears, and since my tooth is 0.65 mm high I need all the strength I can get. Hence also the modified pinion toothprofile favoring an unusually large addendum

You can find more about face crown gears here. It’s pretty nerdy stuff, but these gears are quite fascinating and they have not been around for long as they need simulations like what I am doing in order to generate them.

Thanks for the simulation! Much appreciated! Unfortunately with these types of gear the crown tooth profile is created not by a single tooth, but by multiple teeth cutting into the material depending on the radius of the crown and gear ratio. I simulation therefore needs to take this into account.

Either way. I think I have caused unnecessary confusion by giving more information than necessary. What I want is to approximate the surface of the generated tooth with a smooth surface. Any ideas there?

Hi Khaled,

I didn’t create this code in 2013. I reused code somebody published on the Grasshopper forum to generate the pinion profile, but I modified the code in order to make the crown.
First I bake the pinion and a crown without teeth. Then I input those geometries into the Anemone loop.
Either way. My questions is about making the surface of one tooth smooth by approximating it with another smooth surface.

That’s clear. Now it make sense.

My simulation (second pic) used 40 tooth (red) at correct angulation… but i were working with conical gears…


But, isn’t a cylindrical gear on a 90° crown (your situation) having much smaller area of contact?

Not at all! I like this form because of situations like this…

I stand my idea… make a single tooth, make them rotate in the correct way, and create a single “hole”

… then clean it converting into a surface with sweep2 or loft … and polar array.


We can’t address that issue until we have a proper section of the crown gear. Waiting for Anemone to finish 3600 iterations. I’ll be very disappointed if there is a discontinuity at the end!?

Isn’t there a baked crown inside the Rhino file I attached? Let me know, I can upload it again if necessary.

I forgot to add: I just need one smooth tooth. That one I will export to solidworks and do a circular pattern with it. Haha, but there will not be a discontinuity I did the pattern in Solidworks already and it worked like a charm; the math is right… unfortunately my Solidworks cannot handle the large amount of vertices and keeps on crashing with my current model. Hence the request to simplify the surface.

And about your question about contact area: I am by no means a gear expert, but what I know is that the point of contact with evolvent teeth like on my pinion is always a line. When I study the tooth movement and contact between the pinion and crown tooth there is always of full tooth width contact length. So in that case the contact length should be similar to a bevel gear. Why they guy from claims a 200% increase in strength compared to bevel gears… no idea, but I do trust him based on the ridiculously complicated excelsheet program he built :slight_smile:

Very curious to see if that works! with a smooth surface by any chance? :slight_smile:

Wish you’d mentioned that in the beginning… And isolated that one good tooth instead of leaving it to us.

sorry! yes, that would have been much better idea! Take the middle one from my set.

Hah, sure, no problem. So why haven’t you done that for us? The 40 minute estimate for Anemone was optimistic, it’s been over an hour and I don’t want to stop it now.

actually: you can doubleclick the end node of the anemone during the simulation to pause it!

maybe I have to convert my closed solid polysurface to a mesh and then use mesh tools to clean this thing up? I have no idea what tools to use. I tried to smooth or reduce mesh, but both also effect the outside surface.

Not with FastLoop components, you can’t. And no way to see progress either. Well over two hours now.

I haven’t tried yet and won’t for awhile (a low tide beach walk beckons) but it shouldn’t be difficult to isolate the two jagged edges and work with them. Isolating one or two good teeth is more problematic.