Tutorials and resources for 3D printing and 3D modeling enthusiasts

Screw Gear Calculator

This calculator generates Python script that instantly generates the outlines of two gears to be mounted on non-parallel, non-intersecting shafts. These gears are known as screw gears, and also crossed helical gears. The angle between screw gear axes is usually 90°, but it can be any number between 0° and 90°.

In addition to the gear outlines, the calculator also computes the twist angles for each gear, and the overall angle between the gear shafts to help you design a fully functional screw gear pair in minutes.

For two screw gears to mesh properly, their normal modules and normal pressure angles must be the same. Unlike regular helix gears, the screw gears' helix angles do not have to be the same, and are usually different. Together, they determine the overall angle between the gear shafts.

The direction of the helical twist determines the type of helical gear: right-handed or left-handed:


The optional Extra Tip Vertex Position parameter (v), if set to a non-zero value, creates an extra vertex on each side of all the teeth close to the tooth tip, as shown below. This allows the Subdivision Surface modifier to be applied to the gears while preserving the geometry of the tooth. Without this extra vertex, the modifier makes the tooth tips too rounded. The closer this value to 1, the closer the extra vertex is to the tooth tip. Normally, a value between 0.9 and 0.99 should be used.

v = 0v = 0.9

ParameterSymbolGear 1Gear 2
Normal Modulemn
Normal Pressure Angle (°)αn
Number of Teethz
Normal Profile Shiftxn
Helix Angle (°)β
Helical Hand (Right if checked)
Gear WidthW
Extra Tip Vertex Positionv
Twist angle (°)φ
Shaft AngleΣ
Blender 2.8+

Gear-Generating Python Script