A new involute gear generator

While looking for stuff on drawing bevel, helical and worm gears, I came across a new gear generator, posted by Rainer Hessmer three days ago. I tried it out, and thought that the following info might be helpful to others.

In my search, I came across a site with beautiful graphics that gives techniques using Rhino for creating simple spur wheels, bevel wheels, worm pinions, and helical gears. This is the “Guerrilla guide to CNC machining, mold making, and resin casting” © 2013 by Michal Zalewski,
Zalewski gives good ideas on drawing some complex gear forms in Rhino, that I found useful. But extra to this, he also has a graphical technique for deriving the tooth form based on the rolling motion of the teeth when they mesh - a different approach from the usual computation of an involute curve.

So here’s the point. Rainer Hessmer has just developed an online "Involute Spur Gear Builder"
It outputs the drawing to dxf, which you can have open directly in Rhino from the browser. It uses an iterative computational method based on Zalewski’s approach. This means it will properly handle undercuts in pinions of low tooth count.

I thought I would compare this with GearGen, a script by Thomas Anagnostou that for many years has been old standby for Rhino
(Incidentally, there is now a tutorial for Anagostou’s plug-in, written by a third party, at

I compared the filesize of a gearwheel drawn by Hessmer and that by Anagnostou. The wheel was N=72 teeth, PCD=36" pitch circle dia, and 20deg pressure angle. Anagnostou’s drawing was made from 288 arcs and nurbs curves. Hessmer’s was made from 1800 straight line segments. Anagnostou’s version saved at 139kB, while Hessmer’s version saved at 90kB.

One issue was that this 72 tooth wheel only worked at ‘draft’ resolution in Hessmer’s online gear maker. It froze when I tried ‘normal’ resolution. Perhaps he will fix it soon. It worked ok for wheels with less teeth though.

When the two outputs were superimposed, the tooth forms were almost the same but not quite. Hessemer’s dedendum was slightly deeper, and there was more rounding at the base. However when I compared the two drawings of a pinion of 7 teeth, the difference was very pronounced. Hessmer’s drawing had much deeper undercuts at the tooth base. This shows the value of using Zalewski’s method rather than the standard involute calculations as used by Anagnostou.

Hessmer’s interface currently asks not for a pitch circle diameter like GearGen does, but asks for circular pitch (i.e. tooth spacing). This = pi * PCD / N, and needs a calculator, so is less convenient. But the fact it produces more accurate tooth forms, and that it might create a smaller file, means it could be a better option for some purposes.



I have to say, that was a thorough and well written review, I enjoyed reading that. I clicked the post out of curiosity and was impressed by the length, but had no intention of reading it all; until I suddenly was at the end of the text. Thanks for taking the effort and for sharing with us.

Well, although the undercuts are there, the draft output is pretty poor, I would not want to be using that for machining. However, I was able to run it with the “Normal” quality output on this computer, the result was much better, though still faceted in some spots in the undercuts. The file size was much bigger though, around 260Kb, as there are almost 5000 polyline segments. High output still didn’t work. He must be doing some monster calculations there, the CPU cranked up to 20% (latest i7) for maybe 7-8 seconds on “Normal”.

I was able to fix some (but not all) of the faceting in Rhino with some tweaking of FitCrv.


Thanks for the thorough review of my online gear generator, Ian. In the meantime I extended the tool to also support internal gears and rack & pinion output. Profile shift is supported for all gear configurations as well (I hope I got it right). The underlying calculations are fairly fast even for higher quality modes and tooth counts. However, the rendering of the graphics is currently killing the performance. I am using the 3d webgl graphics engine that is embedded in the OpenJSCad framework. It is a powerful framework but overkill for rendering 2d graphics. Hopefully eventually I’ll find some time to replace it with a leaner and faster rendering solution.

Hello Rainer,

Thank you for sharing your online tool! I Are you interested in making the tool as a plugin for Rhino or Grasshopper?

Ian, great review! I would also like to know how Rainer’s tool compares to http://www.food4rhino.com/app/gear.
I am assuming that they are much the same with regards to output file size and undercut geometry.

I am interested in using Rainer’s tool for better resolution and undercuts, but with the ease of use for tools like GearGen and Grasshopper’s Gear user objects, I will probably end up using these much more often in the long run.

Kind regards,