The Part Design Workbench provides tools for modelling complex solid parts and is based on a Feature editing methodology to produce a single contiguous solid. It is intricately linked with the Sketcher Workbench.

What is a single contiguous solid? This is an item like a casting or something machined from a single block of metal. If the item involves nails, screws, glue or welding, it is not a single contiguous solid. As a practical example, PartDesign would not be used to model a wooden chair, but would be used to model the subcomponents (legs, slats, seat, etc). The subcomponents are combined using the Assembly, Part or Draft workbench.

Revolve3 cropped.png

Basic Workflow

The sketch is the building block for creating and editing solid parts. The workflow can be summarized by this: a sketch containing 2D geometry is created first, then a solid creation tool is used on the sketch. At the moment the available tools are:

  • PartDesign Pad.png Pad which extrudes a sketch
  • PartDesign Pocket.png Pocket which creates a pocket on an existing solid
  • PartDesign Revolution.png Revolution which creates a solid by revolving a sketch along an axis
  • PartDesign Groove.png Groove which creates a groove in an existing solid

More tools are planned in future releases.

A very important concept in the PartDesign Workbench is the sketch support. Sketches can be created on standard planes (XY, XZ, YZ and planes parallel to them) or on a planar face of an existing solid. For this last case, the existing solid becomes the support of the sketch. Several tools will only work with sketches that have a support, for example, Pocket - without a support there would be nothing to remove material from!

After solid geometry has been created it can be modified with chamfers and fillets or transformed, e.g. mirrored or patterned.

The PartDesign Workbench is meant to create a single, connected solid. Multiple solids will be possible with the Assembly workbench.

As we create a model in the Part Design Workbench, each feature takes the shape of the last one and adds or removes something, creating linear dependencies from feature to feature as the model is created. Hence a "Cut" feature is not only the cut hole itself, but the whole part with the cut. As a new feature is added to the model, FreeCAD turns off visibility of the old features. The user usually should only have the newest item (feature) in the model tree visible, because otherwise the other phases of the model overlay each other, and holes are filled in by the earlier model features that didn't yet have those holes.

To toggle visibility of an object on or off, select it in the hierarchy tree and press the Spacebar. Usually everything but the last item in the hierarchy tree should be greyed out and therefore not visible in the 3D view.

The Tools

The Part Design tools are all located in the Part Design menu that appears when you load the Part Design module.

They include the Sketcher Workbench tools, since the Part Design module is so dependent on them.

The Sketcher Tools

Sketcher Geometries

These are tools for creating objects.

  • Sketcher CreatePoint.png Point: Draws a point.
  • Sketcher Line.png Line by 2 point: Draws a line segment from 2 points.
  • Sketcher Arc.png Arc: Draws an arc segment from center, radius, start angle and end angle.
  • Sketcher CreateArc3Point.png Arc by 3 Point: Draws an arc segment from two endpoints and another point on the circumference.
  • Sketcher Circle.png Circle: Draws a circle from center and radius.
  • Sketcher CreateCircle3Point.png Circle by 3 Point : Draws a circle from three points on the circumference.
  • Sketcher Conics.png Conic sections:
    • Sketcher CreateEllipse.png Ellipse by center : Draws an ellipse by center point, major radius point and minor radius point. (v0.15)
    • Sketcher CreateEllipse 3points.png Ellipse by 3 points : Draws an ellipse by major diameter (2 points) and minor radius point. (v0.15)
    • Sketcher Elliptical Arc.png Arc of ellipse : Draws an arc of ellipse by center point, major radius point, starting point and ending point. (v0.15)
    • Sketcher Hyperbolic Arc.png Arc of hyperbola: Draws an arc of hyperbola. (v0.17)
    • Sketcher Parabolic Arc.png Arc of parabola: Draws an arc of parabola. (v0.17)
  • Sketcher CreatePolyline.png Polyline (multiple-point line): Draws a line made of multiple line segments. Pressing the M key while drawing a Polyline toggles between the different polyline modes.
  • Sketcher CreateRectangle.png Rectangle: Draws a rectangle from 2 opposite points.
  • Sketcher CreateTriangle.png Triangle: Draws a regular triangle inscribed in a construction geometry circle. (v0.15)
  • Sketcher CreateSquare.png Square: Draws a regular square inscribed in a construction geometry circle. (v0.15)
  • Sketcher CreatePentagon.png Pentagon: Draws a regular pentagon inscribed in a construction geometry circle. (v0.15)
  • Sketcher CreateHexagon.png Hexagon: Draws a regular hexagon inscribed in a construction geometry circle. (v0.15)
  • Sketcher CreateHeptagon.png Heptagon: Draws a regular heptagon inscribed in a construction geometry circle. (v0.15)
  • Sketcher CreateOctagon.png Octagon: Draws a regular octagon inscribed in a construction geometry circle. (v0.15)
  • Sketcher CreateSlot.png Slot: Draws an oval by selecting the center of one semicircle and an endpoint of the other semicircle.
  • Sketcher CreateFillet.png Fillet: Makes a fillet between two lines joined at one point. Select both lines or click on the corner point, then activate the tool.
  • Sketcher Trimming.png Trimming: Trims a line, circle or arc with respect to the clicked point.
  • Sketcher External.png External Geometry: Creates an edge linked to external geometry.
  • Sketcher AlterConstruction.png Construction Mode: Toggles an element to/from construction mode. A construction object will not be used in a 3D geometry operation and is only visible while editing the Sketch that contains it. This is the icon that was used through v0.15. Until FreeCAD v0.16 the user had to first create regular (white) geometry in Sketcher and then use this tool to change it to Construction Geometry (blue).
  • Sketcher ToggleConstruction.png Construction Mode: In FreeCAD v0.16 the ability to create geometry directly in Construction Mode was added, and so the icon was changed to this one. Selecting existing Sketcher geometry and then clicking this tool toggles that geometry between regular and construction mode just as in previous FreeCAD versions. Starting with FreeCAD v0.16, selecting this tool when no Sketcher geometry is selected changes the mode (regular vs. construction) in which future objects will be created.

Sketcher Constraints

Constraints are used to define lengths, set rules between sketch elements, and to lock the sketch along the vertical and horizontal axes. Some constraints require the Helper constraints

Not associated with numeric data

  • Constraint PointOnPoint.png Coincident: Affixes a point onto (coincident with) one or more other points.
  • Constraint PointOnObject.png Point On Object: Affixes a point onto another object such as a line, arc, or axis.
  • Constraint Vertical.png Vertical: Constrains the selected lines or polyline elements to a true vertical orientation. More than one object can be selected before applying this constraint.
  • Constraint Horizontal.png Horizontal: Constrains the selected lines or polyline elements to a true horizontal orientation. More than one object can be selected before applying this constraint.
  • Constraint Parallel.png Parallel: Constrains two or more lines parallel to one another.
  • Constraint Perpendicular.png Perpendicular: Constrains two lines perpendicular to one another, or constrains a line perpendicular to an arc endpoint.
  • Constraint Tangent.png Tangent: Creates a tangent constraint between two selected entities, or a co-linear constraint between two line segments. A line segment does not have to lie directly on an arc or circle to be constrained tangent to that arc or circle.
  • Constraint EqualLength.png Equal Length: Constrains two selected entities equal to one another. If used on circles or arcs their radii will be set equal.
  • Constraint Symmetric.png Symmetric: Constrains two points symmetrically about a line, or constrains the first two selected points symmetrically about a third selected point.

Associated with numeric data

For these constraints you can use the expressions. The data may be taken from a spreadsheet.

  • Sketcher ConstrainLock.png Lock: Constrains the selected item by setting vertical and horizontal distances relative to the origin, thereby locking the location of that item. These constraint distances can be edited later.
  • Constraint HorizontalDistance.png Horizontal Distance: Fixes the horizontal distance between two points or line endpoints. If only one item is selected, the distance is set to the origin.
  • Constraint VerticalDistance.png Vertical Distance: Fixes the vertical distance between 2 points or line endpoints. If only one item is selected, the distance is set to the origin.
  • Constraint Length.png Length: Defines the distance of a selected line by constraining its length, or defines the distance between two points by constraining the distance between them.
  • Constraint Radius.png Radius: Defines the radius of a selected arc or circle by constraining the radius.
  • Constraint InternalAngle.png Internal Angle: Defines the internal angle between two selected lines.
  • Constraint SnellsLaw.png Snell's Law: Constrains two lines to obey a refraction law to simulate the light going through an interface. (v 0.15)
  • Constraint InternalAlignment.png Internal Alignment: Aligns selected elements to selected shape (e.g. a line to become major axis of an ellipse).

  • Sketcher ToggleConstraint.png Toggle Constraint: Toggles the toolbar or the selected constraints to/from reference mode. v0.16


  • Sketcher NewSketch.png New sketch: Creates‎ a new sketch on a selected face or plane. If no face is selected while this tool is executed the user is prompted to select a plane from a pop-up window.
  • Sketcher ViewSketch.png View sketch: Sets the model view perpendicular to the sketch plane.
  • Validate sketch: It allows you to check if there are in the tolerance of different points and to match them.
  • Sketcher MirrorSketch.png Mirror sketch: Mirror a sketch along the x-axis, the y-axis or the origin [v 0.16]

  • Sketcher CloseShape.png Close Shape: Creates a closed shape by applying coincident constraints to endpoints [v 0.15]
  • Sketcher ConnectLines.png Connect Edges: Connect sketcher elements by applying coincident constraints to endpoints [v 0.15]
  • Sketcher Element Ellipse All.png Show/Hide internal geometry: Recreates missing/deletes unneeded geometry aligned to internal geometry of a selected element (applicable only to ellipse so far). [v 0.15]
  • Sketcher Symmetry.png Symmetry: Copies a sketcher element symmetrical to a chosen line [v 0.16]
  • Sketcher Clone.png Clone: Clones a sketcher element [v 0.16]
  • Sketcher Copy.png Copy: Copies a sketcher element [v 0.16]

The Part Design Tools

Construction tools

These are tools for creating solid objects or removing material from an existing solid object.

  • PartDesign Pad.png Pad: Extrudes a solid object from a selected sketch.
  • PartDesign Pocket.png Pocket: Creates a pocket from a selected sketch. The sketch must be mapped to an existing solid object's face.
  • PartDesign Revolution.png Revolution: Creates a solid by revolving a sketch around an axis. The sketch must be a closed profile to get a solid object.
  • PartDesign Groove.png Groove: Creates a groove by revolving a sketch around an axis. The sketch must be mapped to an existing solid object's face.

Modification tools

These are tools for modifying existing objects. They will allow you to choose which object to modify.

  • PartDesign Fillet.png Fillet: Fillets (rounds) edges of an object.
  • PartDesign Chamfer.png Chamfer: Chamfers edges of an object.
  • PartDesign Draft.png Draft: Applies angular draft to faces of an object.

Transformation tools

These are tools for transforming existing features. They will allow you to choose which features to transform.

  • PartDesign Mirrored.png Mirrored: Mirrors features on a plane or face.
  • PartDesign LinearPattern.png Linear Pattern: Creates a linear pattern of features.
  • PartDesign PolarPattern.png Polar Pattern: Creates a polar pattern of features.
  • PartDesign Scaled.png Scaled: Scales features to a different size.
  • PartDesign MultiTransform.png MultiTransform: Allows creating a pattern with any combination of the other transformations.


Some optional functionality that has been created for the PartDesign Workbench:

  • PartDesign WizardShaft.png Shaft design wizard: Generates a shaft from a table of values and allows to analyze forces and moments

Feature properties


There are two types of feature properties, accessible through tabs at the bottom of the Property editor:

VIEWView : properties related to the visual display of the object.
DATAData : properties related to the physical parameters of an object.


PartDesign Revolution en 03.png


  • VIEWBounding Box : To view the occupation, and, overall, of the object dimensions in space. Value False, or True (Default, False).
  • VIEWControl Point : Value False, or True (Default, False).
  • VIEWDeviation : Sets the accuracy of the polygonal representation of the model in 3d view (tessellation). Lower values = better quality. The value is in percent of object's size (deviation in mm = (w+h+d)/3*valueInPercent/100, where w,h,d are sizes of bounding box).
  • VIEWDisplay Mode :Display mode of the form, Flat lines, Shaded, Wireframe, Points Vue DisplayModePartDesign fr 00.png. (Default, Flat lines).
  • VIEWLighting : Lighting One side, Two side Vue Lighting fr 00.png. (Default, Two side).
  • VIEWLine Color : Gives the color of the line (edges) (Default, 25, 25, 25).
  • VIEWLine Width : Gives the thickness of the line (edges) (Default, 2).
  • VIEWPoint Color : Gives the color of the points (ends of the form) (Default, 25, 25, 25).
  • VIEWPoint Size : Gives the size of the points (Default, 2).
  • VIEWSelectable : Allows the selection of the form. Value False, ou True (Default, True).
  • VIEWShape Color : Give the color shape (default, 204, 204, 204).
  • VIEWTransparency : Sets the degree of transparency in the form of 0 to 100 (Default, 0).
  • VIEWVisibility : Determines the visibility of the form (like the bar SPACE). Value False, or True (Default, True).


PartDesign Revolution en 04.png

Base DATAAngle : The argument Angle, indicates the angle that will be used with the option Axis (below). Here, an angle is defined. The angle on the axis is set with the option Axis.
The object takes the specified angle around the specified axis.
An example, if you create an object with a required revolution should be rotate functionality of a certain amount, in order to enable it to take the same angle that another element existing.

DATAAxis : This option specifies the axis/axes to rotate the created object. The exact value of rotation comes from the angle (see above) option.
This option takes three arguments, these arguments, are transmitted in the form of numbers, x, y or z. Adding a value, more of an axis, will the rotation to each specified axis angle.
For example, with a Angle of 15 ° : specifying, 1.0 for x and 2.0 for y, will rotate 15 ° and 30 ° in the y-axis and the x-axis (final position),

DATABase : This option specifies the offset in either axes x, y, or z, and accept any number as the argument for each field.

DATALabel : The Label is the name given to the operation, this name can be changed at convenience.

DATAPlacement : [(0.00 0.00 1.00);0.00;(0.00 0.00 0.00)] Summary below data. Every feature has a placement that can be controlled through the Data Properties table. It controls the placement of the part with respect to the coordinate system. NOTE: The placement options do not affect the physical dimensions of the feature, but merely its position in space!
If you select the title Placement Options Placement, a button with three small points appears, clicking this button ..., you have access to the options window Tasks_Placement.

DATAAngle : The Angle argument specifies the angle to be used with the axis option (below). An angle is set here, and the axis that the angle acts upon is set with the axis option. The feature is rotated by the specified angle, about the specified axis. A usage example might be if you created a revolution feature as required, but then needed to rotate the whole feature by some amount, in order to allow it to line-up with another pre-existing feature.

DATAAxis : This option specifies the axis/axes about which the created feature is to be rotated. The exact value of rotation comes from the angle option (above). This option takes three arguments, which are passed as numbers to either the x, y, or z boxes in the tool. Adding a value to more than one of the axes will cause the part to be rotated by the angle in each axis. For example, with an angle of 15° set, specifying a value of 1.0 for x, and 2.0 for y will cause the finished part to be rotated 15° in the x-axis AND 30° in the y-axis.

DATAPosition : This option specifies the base point to which all dimensions refer. This option takes three arguments, which are passed as numbers to either the x, y, or z boxes in the tool. Adding a value to more than one of the boxes will cause the part to be translated by the number of units along the corresponding axis.

PS: The displayed properties can vary, depending on the tool used.


Only for a development version of FreeCAD that is not currently available as a binary or installer:

Other languages:
čeština • ‎Deutsch • ‎English • ‎español • ‎français • ‎Bahasa Indonesia • ‎italiano • ‎polski • ‎português • ‎português do Brasil • ‎română • ‎русский • ‎svenska • ‎Türkçe • ‎українська • ‎中文 • ‎中文(台灣)‎