Draft Module

From FreeCAD Documentation
(Redirected from Draft Workbench)
Jump to navigation Jump to search
This page contains changes which are not marked for translation.
Under construction icon-blue.svg
This documentation is work in progress. Please don't mark it as translatable since it will change the next hours and days.
Other languages:
Bahasa Indonesia • ‎Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎hrvatski • ‎italiano • ‎polski • ‎português • ‎português do Brasil • ‎română • ‎svenska • ‎čeština • ‎български • ‎русский • ‎українська • ‎中文 • ‎中文(中国大陆)‎ • ‎中文(台灣)‎ • ‎日本語 • ‎한국어
Draft workbench icon


The Workbench Draft.svg Draft Workbench allows you to draw simple 2D objects, and offers several tools to modify them afterwards. It also provides tools to define a working plane, a grid, and a snapping system to precisely control the position of your geometry.

The created 2D objects can be used for general drafting in a way similar as is done with Inkscape or Autocad. These 2D shapes can also be used as the base components of 3D objects created with other workbenches, for example, the Workbench Part.svg Part and Workbench Arch.svg Arch Workbenches. Conversion of Draft objects to Workbench Sketcher.svg Sketches is also possible, which means that the shapes can also be used with the Workbench PartDesign.svg PartDesign Workbench for the creation of solid bodies.

FreeCAD is primarily a 3D modelling application, and thus its 2D tools aren't as advanced as in other drawing programs. If your primary goal is the production of complex 2D drawings and DXF files, and you don't need 3D modelling, you may wish to consider a dedicated software program for technical drafting such as LibreCAD, QCad, or others.

Draft Workbench Example

Drawing objects

These are tools for creating objects.

  • Draft Line.svg Line: draws a line segment between two points.
  • Draft Wire.svg Polyline: draws a line made of multiple line segments (polyline).
  • Draft Fillet.svg Fillet: draws a fillet (rounded corner) or a chamfer (straight line) between two simple Lines. introduced in version 0.19
  • Draft Arc.svg Arc: draws an arc segment from center, radius, start angle and end angle.
  • Draft Arc 3Points.svg Arc 3Points: draws a circular arc segment from three points that are located in the circumference. introduced in version 0.19
  • Draft Circle.svg Circle: draws a circle from center and radius.
  • Draft Ellipse.svg Ellipse: draws an ellipse from two corner points.
  • Draft Rectangle.svg Rectangle: draws a rectangle from two corner points.
  • Draft Polygon.svg Polygon: draws a regular polygon from center, radius, and number of sides.
  • Draft BSpline.svg BSpline: draws a B-Spline from a series of points.
  • Draft CubicBezCurve.svg Cubic Bezier Curve: draws a Bezier curve of third degree by dragging two points. introduced in version 0.19
  • Draft BezCurve.svg Bezier Curve: draws a Bezier curve from a series of points.
  • Draft Point.svg Point: inserts a point object.
  • Draft Facebinder.svg Facebinder: creates a new object from selected faces on existing objects.
  • Draft ShapeString.svg ShapeString: inserts a compound shape representing a text string at a given point.

Annotation objects

Modifying objects

These are tools for modifying existing objects. They work on selected objects, but if no object is selected, you will be invited to select one.

Many operation tools (move, rotate, array, etc.) also work on solid objects (Part, PartDesign, Arch, etc.).

  • Draft Move.svg Move: moves objects from one location to another.
  • Draft Rotate.svg Rotate: rotates objects from a start angle to an end angle.
  • Draft Scale.svg Scale: scales selected objects around a base point.
  • Draft Mirror.svg Mirror: mirrors the selected objects.
  • Draft Offset.svg Offset: offsets segments of an object a certain distance.
  • Draft Trimex.svg Trim/Extend (Trimex): trims or extends an object.
  • Draft Stretch.svg Stretch: stretches the selected objects.
  • Draft Join.svg Join: joins lines together into a single wire.
  • Draft Split.svg Split: splits a wire into two at a point.
  • Draft Upgrade.svg Upgrade: upgrades objects into a higher-level object.
  • Draft Downgrade.svg Downgrade: downgrades objects into lower-level objects.
  • Draft Shape2DView.svg Shape 2D View: creates a 2D object which is a flattened 2D view of a 3D object.

Draft Tray

The Draft Tray allows selecting the working plane, defining style settings, toggling construction mode, and specifying the active layer or group.

Draft tray default.png

Its tools are also available in the Draft → Utilities menu:

Draft annotation scale widget

With the Draft annotation scale widget the Draft annotation scale can be specified. introduced in version 0.19

Draft annotation scale widget button.png

Draft snap widget

The Draft snap widget can be used as an alternative for the Draft Snap toolbar. introduced in version 0.19

Draft snap widget button.png

Draft Snap toolbar

The Draft Snap toolbar allows selecting the active snap options. The buttons belonging to active options stay depressed. For general information about snapping see: Draft Snap.

  • Draft Snap Lock.svg Toggle snap: toggles object snapping globally on or off.
  • Draft Snap Endpoint.svg Endpoint: snaps to the endpoints of line, arc and spline segments.
  • Draft Snap Midpoint.svg Midpoint: snaps to the middle point of line and arc segments.
  • Draft Snap Center.svg Center: snaps to the center point of circles, arcs and faces, WP proxies and Building parts
  • Draft Snap Angle.svg Angle: snaps to the special cardinal points of circles and arcs, at 45° and 90°.
  • Draft Snap Intersection.svg Intersection: snaps to the intersection of two line or arc segments. Hover the mouse over the two desired objects to activate their intersection snaps.
  • Draft Snap Perpendicular.svg Perpendicular: on line and arc segments, snaps perpendicularly to the latest point.
  • Draft Snap Extension.svg Extension: snaps on an imaginary line that extends beyond the endpoints of line segments. Hover the mouse over the desired object to activate its extension snap.
  • Draft Snap Parallel.svg Parallel: snaps on an imaginary line parallel to a line segment. Hover the mouse over the desired object to activate its parallel snap.
  • Draft Snap Special.svg Special: snaps on special points defined by the object.
  • Draft Snap Near.svg Near: snaps to the closest point or edge on the nearest object.
  • Draft Snap Ortho.svg Ortho: snaps on imaginary lines that cross the last point, and extend at 0°, 45° and 90°.
  • Draft Snap Grid.svg Grid: snaps to the intersections of the grid lines, if the grid is visible.
  • Draft Snap WorkingPlane.svg Working plane: always places the snapped point on the current working plane, even if you snap to a point outside that working plane.
  • Draft Snap Dimensions.svg Dimensions: shows temporary X and Y dimensions while snapping.
  • Draft ToggleGrid.svg Toggle grid: toggles the visibility of the grid on or off.

Draft utility tools toolbar

Additional tools

The Draft → Utilities menu contains several tools. Most of them can also be accessed from toolbars or the Draft Tray and have already been mentioned above. For the following tools this is not the case:

Obsolete tools

These commands are obsolete but still available.


  • Preferences-draft.svg Preferences: general preferences for the working plane and the drawing tools.
  • Preferences-import-export.svg Import Export Preferences: preferences available for importing from and exporting to different file formats.

File formats

These are functions for opening, importing or exporting other file formats. Opening will open a new document with the contents of the file, while importing will append the contents of the file to the current document. Export will save the selected objects to a file. If nothing is selected, all objects will be exported. Be aware that the purpose of the Draft Module is to work with 2D objects, so those import routines focus only on 2D objects, and although DXF and OCA formats also support object definitions in 3D space (objects are not necessarily flat), they will not import volumetric objects such as meshes, 3D surfaces, etc., but rather lines, circles, texts or flat shapes. Currently supported file formats are: The Draft module provides FreeCAD with importers and exporters for the following file formats:

Install importers

Additional features

  • Constraining: limit the pointer to horizontal or vertical movements relative to a previous point.
  • Snapping: place new points on special places on existing objects or on the grid.
  • Copy Mode: All modification tools can either modify the selected objects or create a modified copy of them. Pressing and holding Alt while the object is being modified, e.g. moved or rotated, creates a copy when the key is released.
  • Construction Mode: Allows you to create geometries separate from the rest by simply switching them on and off.
  • Working plane: allows you to select a surface on which to build your shapes.

Unit tests

See also: Test Workbench.

To run the unit tests of the workbench execute the following from the operating system terminal.

freecad -t TestDraft


The Draft tools can be used in macros and from the Python console by using the Draft API.

The workbench includes a module to create samples of all objects in a new document. introduced in version 0.19

Use this to test that all objects are produced correctly.

import drafttests.draft_test_objects as dto
doc = dto.create_test_file()

Inspecting the code of this module is useful to understand how to use the programming interface.


Where $INSTALLDIR is the toplevel directory where the software was installed; for example, in Linux it may be /usr/share/freecad.

Draft test objects.png

Test objects for the Draft Workbench.