PartDesign InvoluteGear

From FreeCAD Documentation

PartDesign InvoluteGear

Menu location
Part Design → Involute gear...
Default shortcut
Introduced in version
See also
FCGear Workbench


This tool allows you to create a 2D profile of an involute gear or spline. This 2D profile is fully parametric, and can be padded with the PartDesign Pad or PartDesign AdditiveHelix feature.

For more detailed information see Wikipedia's entries for: Gear and Involute Gear


Create the profile

  1. Optionally activate the correct body.
  2. Go to the menu Part Design → Involute gear....
  3. Set the Involute parameters.
  4. Click OK.
  5. If there was no active body: drag and drop the gear into a body for the application of further features like padding.

Create a spur gear

  1. Select the gear profile in the Tree view.
  2. Press the PartDesign Pad button.
  3. Set the pad's DataLength to the desired face width of the gear.
  4. Click OK.

Create a helical gear

  1. Select the gear profile in the Tree view.
  2. Press the PartDesign AdditiveHelix button.
  3. Choose as Axis the normal of the gear profile, that is Normal sketch axis introduced in version 0.20. (In earlier versions the Base Z axis can be used as long as the profile's plane has not been altered.)
  4. Choose a Height-Turns mode.
  5. Set the DataHeight to the desired face width of the gear.
  6. To set the desired helical angle an Expression for the DataTurns is required.
    1. Click the blue icon at the right of the input field.
    2. Enter the following formula: Height * tan(25°) / (InvoluteGear.NumberOfTeeth * InvoluteGear.Modules * pi), where 25° is an example for the desired helical angle (also known as beta-value) and InvoluteGear is the DataName of the profile.
    3. Click OK to close the formula editor.
  7. Click OK to close the task panel.

Hint: To make the helical angle an accessible parameter, use a dynamic property:

  1. Select the profile.
  2. In the Property editor activate the Show all option in the context menu.
  3. Again in the context menu, select Add Property. Note: this entry is only available when Show all is active.
  4. In the Add Property dialog:
    1. Choose App::PropertyAngle as Type.
    2. Set Gear as Group.
    3. Set HelicalAngle as Name (without a space).
    4. Click OK.
  5. Now a new property DataHelical Angle (space added automatically), with an initial value of 0.0°, becomes available.
  6. Assign the desired helical angle to the new property.
  7. In the formula of the DataTurns property of the AdditiveHelix, you can now reference InvoluteGear.HelicalAngle instead of the hard coded value of e.g. 25°; again assuming InvoluteGear is the DataName of the profile.

Cut a hub for an involute splined shaft

introduced in version 0.21

  1. Activate the correct body.
  2. Create an internal involute gear profile with the required number of grooves and adapt the values of pressure angle, addendum-, dedendum- and root fillet coefficient. See also the table in Notes below for feasible values. For example:
    • DataExternal Gear: False
    • DataNumber Of Teeth: 12
    • DataPressure Angle: 37.5°
    • DataAddendum Coefficient: 0.45
    • DataDedendum Coefficient: 0.7
    • DataRoot Fillet Coefficient: 0.3
  3. Select the gear profile in the Tree view.
  4. Press the Pocket button.
  5. Set the pocket's DataType to Through All.
  6. Check the pocket's DataSymmetric To Plane option.
  7. Click OK.


  • DataAddendum Coefficient: The height of the tooth from the pitch circle up to its tip, normalized by the module. Default is 1.0 for the standard full-depth system. introduced in version 0.21
  • DataDedendum Coefficient: The height of the tooth from the pitch circle down to its root, normalized by the module. Default is 1.25 for the standard full-depth system. introduced in version 0.21
  • DataExternal Gear: True or false.
  • DataHigh Precision: True or false.
  • DataModules: Pitch diameter divided by the number of teeth. (Note: the correct technical term is "Module", but this name is already used by FreeCAD's internals and thus cannot be used here.)
  • DataNumber Of Teeth: Sets the number of teeth.
  • DataPressure Angle: Acute angle between the line of action and a normal to the line connecting the gear centers. Default is 20 °. See Involute gear.
  • DataProfile Shift Coefficient: The distance by which the reference profile is shifted outwards, normalized by the module. Default is zero. Profile shift may be positive or negative. introduced in version 0.21
  • DataRoot Fillet Coefficient: The radius of the fillet at the root of the tooth, normalized by the module. Default is 0.38 as defined by the ISO rack. introduced in version 0.21


  • In order for two gears to mesh they need to share the same module and pressure angle. Expressions may help to ensure consistency. Their center distance needs to be (NumberOfTeeth + OtherGear.NumberOfTeeth) * Modules / 2 (that is in case of the sum profile shift being zero). Subtract the number of teeth in case of an internal gear.
  • When using a Sketch to position some gears, they can be represented using their pitch circles and using a tangent constraint between those circles. Their diameters can be set by the following Expression: SomeGear.NumberOfTeeth * SomeGear.Modules (assuming no profile shift and "SomeGear" being the DataName of the respective gear profile object).
  • When using Sketches to create additional features (cutouts, spokes, ...) on a gear, reference circles at the tip or the root of the teeth can help positioning those features. The diameter of the tip circle can be set by the following Expression: (SomeGear.NumberOfTeeth + 2 * (SomeGear.AddendumCoefficient + SomeGear.ProfileShiftCoefficient)) * SomeGear.Modules and the root circle respectively by (SomeGear.NumberOfTeeth - 2 * (SomeGear.DedendumCoefficient - SomeGear.ProfileShiftCoefficient)) * SomeGear.Modules.
  • Profile shifting can be used to prevent undercut on gears with a small number of teeth. Another application is to adjust the center distance of two gears with a given number of teeth and module.
  • When visually checking for proper meshing or interferences a much lower value for ViewDeviation is helpful, e.g. 0.05 instead of the default 0.5. Otherwise the representation in the 3D view may be too coarse.
  • For standard gears the most common pressure angle is 20 °, followed by 14,5 °. Other applications, notably splines, use higher angles.
  • The standard full-depth system uses an addendum coefficient of 1.0 and a dedendum coefficient of 1.25, resulting in a clearance of 0.25 (the difference between the addendum of the one gear and the dedendum of the other). The actual tooth length is the sum of both coefficients, multiplied by the module.
  • Tooth length reduction may be required to prevent undercut or to strengthen the teeth (see stub teeth). For internal gears the addendum (here pointing inwards) may need shortening to avoid certain interferences or non-involute flanks; when indicated in combination with longer teeth of the pinion.
  • For splined shafts and hubs ISO 4156 defines the following parameters:
Pressure Angle 30 ° (flat root) 30 ° (fillet root) 37,5 ° 45 °
Addendum Coefficient 0.5 0.5 0.45 0.4
Dedendum Coefficient 0.75 0.9 0.7 0.6
Root Fillet Coefficient 0.2 0.4 0.3 0.25


  • It is currently not possible to adjust the tooth thickness. Tooth and tooth space are distributed equally on the reference circle. One way to still control backlash is to adjust the center distance in a gear paring. Another is to apply a tiny amount of negative profile shift. Example: For a typical circumferential backlash coefficient of 0.04 increase either the center distance by (0.04 * Modules / 2) / tan(PressureAngle) or shift the profile of one gear (preferably the larger one) by a coefficient of -(0.04 / 2) / tan(PressureAngle)).
  • There is currently no undercut in the generated gear profile. That means gears with a low number of teeth can interfere with the teeth of the mating gear. The lower limit depends on the DataPressure Angle and is around 17 teeth for 20° and 32 for 14.5°. Most practical applications tolerate a missing undercut for gears a little smaller than this theoretical limit though, which assumes mating with a rack and standard tooth length.


Video: How to make gears in FreeCAD