Difference between revisions of "Draft Module"

From FreeCAD Documentation
Jump to navigation Jump to search
m
(Marked this version for translation)
 
(49 intermediate revisions by 8 users not shown)
Line 2: Line 2:
 
<translate>
 
<translate>
 
<!--T:32-->
 
<!--T:32-->
{{docnav|[[Arch Workbench|Arch Workbench]]|[[Drawing Workbench|Drawing Workbench]]|IconL=Workbench_Arch.svg|IconR=Workbench_Drawing.svg}}
+
{{Docnav
</translate>
+
|[[Arch Workbench|Arch Workbench]]
 +
|[[Drawing Workbench|Drawing Workbench]]
 +
|IconL=Workbench_Arch.svg
 +
|IconR=Workbench_Drawing.svg
 +
}}
  
[[Image:Workbench_Draft.svg|64px]]
+
<!--T:38-->
<translate>
+
[[Image:Workbench_Draft.svg|thumb|128px|Draft workbench icon]]
 +
{{TOCright}}
  
 
== Introduction == <!--T:1-->
 
== Introduction == <!--T:1-->
Line 12: Line 17:
  
 
<!--T:29-->
 
<!--T:29-->
The created 2D objects can be used for general drafting in a way similar to Inkscape or Autocad. These 2D shapes can also be used as the base components of 3D objects created with other workbenches, for example, the [[Part Workbench|Part]] and [[Arch Workbench|Arch Workbench]]]]es. Conversion of Draft objects to [[Sketcher Workbench|Sketches]] is also possible, which means that the shapes can also be used with the [[PartDesign Workbench|PartDesign Workbench]] for the creation of solid bodies.
+
The created 2D objects can be used for general drafting in a way similar to Inkscape or Autocad. These 2D shapes can also be used as the base components of 3D objects created with other workbenches, for example, the [[Part Workbench|Part]] and [[Arch Workbench|Arch Workbench]]es. Conversion of Draft objects to [[Sketcher Workbench|Sketches]] is also possible, which means that the shapes can also be used with the [[PartDesign Workbench|PartDesign Workbench]] for the creation of solid bodies.
  
 
<!--T:30-->
 
<!--T:30-->
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 [https://en.wikipedia.org/wiki/LibreCAD LibreCAD], [https://en.wikipedia.org/wiki/QCad QCad], TurboCad, and others.
+
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|DXF]] files, and you don't need 3D modelling, you may wish to consider a dedicated software program for technical drafting such as [https://en.wikipedia.org/wiki/LibreCAD LibreCAD], [https://en.wikipedia.org/wiki/QCad QCad], TurboCad, and others.
  
 
</translate>
 
</translate>
{{TOCright}}
+
[[Image:Draft_Workbench_Example.png|400px|Draft Workbench Example]]
[[Image:Draft_Workbench_Example.png|600px]]
 
 
<translate>
 
<translate>
  
Line 28: Line 32:
  
 
<!--T:18-->
 
<!--T:18-->
* [[Image:Draft_Line.png|32px]] [[Draft_Line|Line]]: draws a line segment between two points.
+
* [[Image:Draft_Line.svg|32px]] [[Draft_Line|Line]]: draws a line segment between two points.
* [[Image:Draft_Wire.png|32px]] [[Draft_Wire|Wire]]: draws a line made of multiple line segments (polyline).
+
* [[Image:Draft_Wire.svg|32px]] [[Draft_Wire|Polyline]]: draws a line made of multiple line segments (polyline).
* [[Image:Draft_Circle.png|32px]] [[Draft_Circle|Circle]]: draws a circle from center and radius.
+
* [[Image:Draft_Fillet.svg|32px]] [[Draft_Fillet|Fillet]]: draws a fillet (rounded corner) or a chamfer (straight line) between two simple [[Draft_Line|Lines]]. {{Version|0.19}}
* [[Image:Draft_Arc.png|32px]] [[Draft_Arc|Arc]]: draws an arc segment from center, radius, start angle and end angle.
+
* [[Image:Draft_Arc.svg|32px]] [[Draft_Arc|Arc]]: draws an arc segment from center, radius, start angle and end angle.
* [[Image:Draft_Ellipse.png|32px]] [[Draft_Ellipse|Ellipse]]: draws an ellipse from two corner points.
+
* [[Image:Draft_Arc_3Points.svg|32px]] [[Draft_Arc_3Points|Arc 3Points]]: draws a circular arc segment from three points that are located in the circumference. {{Version|0.19}}
* [[Image:Draft_Polygon.png|32px]] [[Draft_Polygon|Polygon]]: draws a regular polygon from center, radius, and number of sides.
+
* [[Image:Draft_Circle.svg|32px]] [[Draft_Circle|Circle]]: draws a circle from center and radius.
* [[Image:Draft_Rectangle.png|32px]] [[Draft_Rectangle|Rectangle]]: draws a rectangle from two corner points.
+
* [[Image:Draft_Ellipse.svg|32px]] [[Draft_Ellipse|Ellipse]]: draws an ellipse from two corner points.
* [[Image:Draft_Text.png|32px]] [[Draft_Text|Text]]: draws a multi-line text annotation.
+
* [[Image:Draft_Rectangle.svg|32px]] [[Draft_Rectangle|Rectangle]]: draws a rectangle from two corner points.
* [[Image:Draft_Dimension.png|32px]] [[Draft_Dimension|Dimension]]: draws a dimension annotation.
+
* [[Image:Draft_Polygon.svg|32px]] [[Draft_Polygon|Polygon]]: draws a regular polygon from center, radius, and number of sides.
* [[Image:Draft_BSpline.png|32px]] [[Draft_BSpline|BSpline]]: draws a B-Spline from a series of points.
+
* [[Image:Draft_BSpline.svg|32px]] [[Draft_BSpline|BSpline]]: draws a B-Spline from a series of points.
* [[Image:Draft_Point.png|32px]] [[Draft_Point|Point]]: inserts a point object.
+
* [[Image:Draft_CubicBezCurve.svg|32px]] [[Draft_CubicBezCurve|Cubic Bezier Curve]]: draws a Bezier curve of third degree by dragging two points. {{Version|0.19}}
* [[Image:Draft_ShapeString.png|32px]] [[Draft_ShapeString|ShapeString]]: inserts a compound shape representing a text string at a given point.
+
* [[Image:Draft_BezCurve.svg|32px]] [[Draft_BezCurve|Bezier Curve]]: draws a Bezier curve from a series of points.
* [[Image:Draft_Facebinder.png|32px]] [[Draft_Facebinder|Facebinder]]: creates a new object from selected faces on existing objects.
+
* [[Image:Draft_Point.svg|32px]] [[Draft_Point|Point]]: inserts a point object.
* [[Image:Draft_BezCurve.png|32px]] [[Draft_BezCurve|Bezier Curve]]: draws a Bezier curve from a series of points.
+
* [[Image:Draft_Facebinder.svg|32px]] [[Draft_Facebinder|Facebinder]]: creates a new object from selected faces on existing objects.
* [[Image:Draft_Label.png|32px]] [[Draft_Label|Label]]: places a label with an arrow pointing to a selected element. {{Version|0.17}}
+
* [[Image:Draft_ShapeString.svg|32px]] [[Draft_ShapeString|ShapeString]]: inserts a compound shape representing a text string at a given point.
 +
 
 +
== Annotation objects == <!--T:46-->
 +
 
 +
<!--T:47-->
 +
* [[Image:Draft_Text.svg|32px]] [[Draft_Text|Text]]: draws a multi-line text annotation.
 +
* [[Image:Draft_Dimension.svg|32px]] [[Draft_Dimension|Dimension]]: draws a dimension annotation.
 +
* [[Image:Draft_Label.svg|32px]] [[Draft_Label|Label]]: places a label with an arrow pointing to a selected element. {{Version|0.17}}
  
 
== Modifying objects == <!--T:19-->
 
== Modifying objects == <!--T:19-->
Line 53: Line 64:
  
 
<!--T:21-->
 
<!--T:21-->
* [[Image:Draft_Move.png|32px]] [[Draft_Move|Move]]: moves objects from one location to another.
+
* [[Image:Draft_Move.svg|32px]] [[Draft_Move|Move]]: moves objects from one location to another.
* [[Image:Draft_Rotate.png|32px]] [[Draft_Rotate|Rotate]]: rotates objects from a start angle to an end angle.
+
* [[Image:Draft_Rotate.svg|32px]] [[Draft_Rotate|Rotate]]: rotates objects from a start angle to an end angle.
* [[Image:Draft_Offset.png|32px]] [[Draft_Offset|Offset]]: offsets segments of an object a certain distance.
+
* [[Image:Draft_Scale.svg|32px]] [[Draft_Scale|Scale]]: scales selected objects around a base point.
* [[Image:Draft_Trimex.png|32px]] [[Draft_Trimex|Trim/Extend (Trimex)]]: trims or extends an object.
+
* [[Image:Draft_Mirror.svg|32px]] [[Draft_Mirror|Mirror]]: mirrors the selected objects.
* [[Image:Draft_Join.png|32px]] [[Draft_Join|Join]]: joins lines together into a single wire.
+
* [[Image:Draft_Offset.svg|32px]] [[Draft_Offset|Offset]]: offsets segments of an object a certain distance.
* [[Image:Draft_Split.png|32px]] [[Draft_Split|Split]]: splits a wire into two at a point.
+
* [[Image:Draft_Trimex.svg|32px]] [[Draft_Trimex|Trim/Extend (Trimex)]]: trims or extends an object.
* [[Image:Draft_Upgrade.png|32px]] [[Draft_Upgrade|Upgrade]]: upgrades objects into a higher-level object.
+
* [[Image:Draft_Stretch.svg|32px]] [[Draft_Stretch|Stretch]]: stretches the selected objects. {{Version|0.17}}
* [[Image:Draft_Downgrade.png|32px]] [[Draft_Downgrade|Downgrade]]: downgrades objects into lower-level objects.
+
 
* [[Image:Draft_Scale.png|32px]] [[Draft_Scale|Scale]]: scales selected objects around a base point.
+
<!--T:52-->
* [[Image:Draft_Edit.png|32px]] [[Draft_Edit|Edit]]: edits a selected object.
+
* [[Image:Draft_Clone.svg|32px]] [[Draft_Clone|Clone]]: clones the selected objects.
* [[Image:Draft_WireToBSpline.png|32px]] [[Draft_WireToBSpline|Wire to BSpline]]: converts a wire to a B-Spline and vice-versa.
+
* [[Image:Draft_Array.svg|32px]] Array tools.
* [[Image:Draft_AddPoint.png|32px]] [[Draft_AddPoint|Add point]]: adds a point to a wire or B-Spline.
+
** [[Image:Draft_OrthoArray.svg|32px]] [[Draft_OrthoArray|OrthoArray]]: creates an orthogonal array from the selected object. {{Version|0.19}}
* [[Image:Draft_DelPoint.png|32px]] [[Draft_DelPoint|Delete point]]: deletes a point from a wire or B-Spline.
+
** [[File:Draft_PolarArray.svg|32px]] [[Draft_PolarArray|Polar Array]]: creates an array in a polar pattern, that is, sweeping an angle. {{Version|0.19}}
* [[Image:Draft_Shape2DView.png|32px]] [[Draft_Shape2DView|Shape 2D View]]: creates a 2D object which is a flattened 2D view of a 3D object.
+
** [[File:Draft_CircularArray.svg|32px]] [[Draft_CircularArray|Circular Array]]: creates an array in a circular pattern, that is, starting from a center and moving outwards radially. {{Version|0.19}}
* [[Image:Draft_Draft2Sketch.png|32px]] [[Draft_Draft2Sketch|Draft to Sketch]]: converts a Draft object to a [[Sketcher Workbench]] Sketch and vice-versa.
+
** [[Image:Draft_PathArray.svg|32px]] [[Draft_PathArray|Path Array]]: creates an array of objects by placing the copies along a path.
* [[Image:Draft_Array.png|32px]] [[Draft_Array|Array]]: creates a polar or rectangular array from selected objects.
+
** [[Image:Draft_PathLinkArray.svg|32px]] [[Draft_PathLinkArray|Path LinkArray]]: creates an array of [[Std_LinkMake|App::Link]] elements by placing the copies along a path. {{Version|0.19}}
* [[Image:Draft_PathArray.png|32px]] [[Draft_PathArray|Path Array]]: creates an array of objects by placing the copies along a path.
+
** [[Image:Draft_PointArray.svg|32px]] [[Draft_PointArray|Point Array]]: creates an array of objects by placing the copies at certain points. {{version|0.18}}
* [[Image:Draft_PointArray.svg|32px]] [[Draft_PointArray|Point Array]]: creates an array of objects by placing the copies at certain points. {{version|0.18}}
+
 
* [[Image:Draft_Clone.png|32px]] [[Draft_Clone|Clone]]: clones the selected objects.
+
<!--T:53-->
* [[Image:Draft_PutOnSheet.png|32px]] [[Draft_Drawing|Drawing]]: writes selected objects to a [[Drawing Workbench]] page.
+
* [[Image:Draft_Edit.svg|32px]] [[Draft_Edit|Edit]]: edits a selected object.
* [[Image:Draft_Mirror.png|32px]] [[Draft_Mirror|Mirror]]: mirrors the selected objects.
+
* [[Image:Draft_SubelementHighlight.svg|32px]] [[Draft_SubelementHighlight|Subelement highlight]]: enters an edit mode that allows editing different objects. {{Version|0.19}}
* [[Image:Draft_Stretch.png|32px]] [[Draft_Stretch|Stretch]]: stretches the selected objects. {{Version|0.17}}
+
 
 +
<!--T:54-->
 +
* [[Image:Draft_Join.svg|32px]] [[Draft_Join|Join]]: joins lines together into a single wire. {{version|0.18}}
 +
* [[Image:Draft_Split.svg|32px]] [[Draft_Split|Split]]: splits a wire into two at a point. {{version|0.18}}
 +
* [[Image:Draft_Upgrade.svg|32px]] [[Draft_Upgrade|Upgrade]]: upgrades objects into a higher-level object.
 +
* [[Image:Draft_Downgrade.svg|32px]] [[Draft_Downgrade|Downgrade]]: downgrades objects into lower-level objects.
 +
 
 +
<!--T:55-->
 +
* [[Image:Draft_WireToBSpline.svg|32px]] [[Draft_WireToBSpline|Wire to BSpline]]: converts a wire to a B-Spline and vice-versa.
 +
* [[Image:Draft_Draft2Sketch.svg|32px]] [[Draft_Draft2Sketch|Draft to Sketch]]: converts a Draft object to a [[Sketcher Workbench|Sketcher Workbench]] Sketch and vice-versa.
 +
 
 +
<!--T:56-->
 +
* [[Image:Draft_Shape2DView.svg|32px]] [[Draft_Shape2DView|Shape 2D View]]: creates a 2D object which is a flattened 2D view of a 3D object.
 +
 
 +
=== Obsolete === <!--T:48-->
 +
 
 +
<!--T:49-->
 +
This command is considered obsolete because the [[Drawing_Workbench|Drawing Workbench]] is obsolete. However, the command itself is still available.
 +
* [[Image:Draft_Drawing.svg|32px]] [[Draft_Drawing|Drawing]]: writes selected objects to a [[Drawing_Workbench|Drawing Workbench]] page. {{obsolete|0.17}}
 +
 
 +
<!--T:50-->
 +
These commands have been removed from the interface.
 +
* [[Image:Draft_AddPoint.svg|32px]] [[Draft_AddPoint|Add point]]: adds a point to a wire or B-Spline. {{Obsolete|0.19}}
 +
* [[Image:Draft_DelPoint.svg|32px]] [[Draft_DelPoint|Delete point]]: deletes a point from a wire or B-Spline. {{Obsolete|0.19}}
 +
* [[Image:Draft_Array.svg|32px]] [[Draft_Array|Array]]: creates a polar or rectangular array from selected objects. {{Obsolete|0.19}}
  
 
== Utility tools == <!--T:22-->
 
== Utility tools == <!--T:22-->
Line 82: Line 117:
  
 
<!--T:24-->
 
<!--T:24-->
* [[Image:Draft_SelectPlane.png|32px]] [[Draft_SelectPlane|Set working plane]]: sets a working plane from a standard view or a selected face.
+
* [[Image:Draft_SelectPlane.svg|32px]] [[Draft_SelectPlane|Set working plane]]: sets a working plane from a standard view or a selected face.
* [[Image:Draft_FinishLine.png|32px]] [[Draft_FinishLine|Finish line]]: ends the drawing of the current [[Draft Wire]] or [[Draft BSpline]], without closing it.
+
* [[Image:Draft_FinishLine.svg|32px]] [[Draft_FinishLine|Finish line]]: ends the drawing of the current [[Draft Wire|Draft Wire]] or [[Draft BSpline|Draft BSpline]], without closing it.
* [[Image:Draft_CloseLine.png|32px]] [[Draft_CloseLine|Close line]]: ends the drawing of the current [[Draft Wire]] or [[Draft BSpline]], and closes it.
+
* [[Image:Draft_CloseLine.svg|32px]] [[Draft_CloseLine|Close line]]: ends the drawing of the current [[Draft Wire|Draft Wire]] or [[Draft BSpline|Draft BSpline]], and closes it.
* [[Image:Draft_UndoLine.png|32px]] [[Draft_UndoLine|Undo line]]: undoes the last segment of a [[Draft Wire]].
+
* [[Image:Draft_UndoLine.svg|32px]] [[Draft_UndoLine|Undo line]]: undoes the last segment of a [[Draft Wire|Draft Wire]].
* [[Image:Draft_ToggleConstructionMode.png|32px]] [[Draft_ToggleConstructionMode|Toggle construction mode]]: toggles the Draft construction mode on or off.
+
* [[Image:Draft_ToggleConstructionMode.svg|32px]] [[Draft_ToggleConstructionMode|Toggle construction mode]]: toggles the Draft construction mode on or off.
* [[Image:Draft_ToggleContinueMode.png|32px]] [[Draft_ToggleContinueMode|Toggle continue mode]]: toggles the Draft continue mode on or off.
+
* [[Image:Draft_ToggleContinueMode.svg|32px]] [[Draft_ToggleContinueMode|Toggle continue mode]]: toggles the Draft continue mode on or off.
* [[Image:Draft_ApplyStyle.png|32px]] [[Draft_Apply|Apply style]]: applies the current style and color to selected objects.
+
* [[Image:Draft_ApplyStyle.svg|32px]] [[Draft_Apply|Apply style]]: applies the current style and color to selected objects.
* [[Image:Draft_ToggleDisplayMode.png|32px]] [[Draft_ToggleDisplayMode|Toggle display mode]]: switches the display mode of selected objects between "Flat Lines" and "Wireframe".
+
* [[Image:Draft_ToggleDisplayMode.svg|32px]] [[Draft_ToggleDisplayMode|Toggle display mode]]: switches the display mode of selected objects between "Flat Lines" and "Wireframe".
* [[Image:Draft_AddToGroup.png|32px]] [[Draft_AddToGroup|Add to group]]: quickly adds selected objects to an existing [[Std Group]] or [[Draft VisGroup]].
+
* [[Image:Draft_AddToGroup.svg|32px]] [[Draft_AddToGroup|Add to group]]: quickly adds selected objects to an existing [[Std Group|Std Group]] or [[Draft VisGroup|Draft VisGroup]].
* [[Image:Draft_SelectGroup.png|32px]] [[Draft_SelectGroup|Select group contents]]: selects the contents of a selected [[Std Group]] or [[Draft VisGroup]].
+
* [[Image:Draft_SelectGroup.svg|32px]] [[Draft_SelectGroup|Select group contents]]: selects the contents of a selected [[Std Group|Std Group]] or [[Draft VisGroup|Draft VisGroup]].
* [[Image:Draft_ToggleSnap.png|32px]] [[Draft_ToggleSnap|Toggle snap]]: toggles [[Draft Snap|object snapping]] on or off.
+
* [[Image:Draft_ToggleSnap.svg|32px]] [[Draft_ToggleSnap|Toggle snap]]: toggles [[Draft Snap|object snapping]] on or off.
* [[Image:Draft_ToggleGrid.png|32px]] [[Draft_ToggleGrid|Toggle grid]]: toggles the visibility of the grid on or off.
+
* [[Image:Draft_ToggleGrid.svg|32px]] [[Draft_ToggleGrid|Toggle grid]]: toggles the visibility of the grid on or off.
* [[Image:Draft_ShowSnapBar.png|32px]] [[Draft_ShowSnapBar|Show snap bar]]: shows or hides the [[Draft Snap]] toolbar.
+
* [[Image:Draft_ShowSnapBar.svg|32px]] [[Draft_ShowSnapBar|Show snap bar]]: shows or hides the [[Draft Snap|Draft Snap]] toolbar.
* [[Image:Draft_Heal.png|32px]] [[Draft_Heal|Heal]]: heals problematic Draft objects found in very old files.
+
* [[Image:Draft_Heal.svg|32px]] [[Draft_Heal|Heal]]: heals problematic Draft objects found in very old files.
* [[Image:Draft_FlipDimension.png|32px]] [[Draft_FlipDimension|Flip Dimension]]: flips the orientation of the text of a [[Draft Dimension]].
+
* [[Image:Draft_FlipDimension.svg|32px]] [[Draft_FlipDimension|Flip Dimension]]: flips the orientation of the text of a [[Draft Dimension|Draft Dimension]].
* [[Image:Draft_VisGroup.png|32px]] [[Draft_VisGroup|VisGroup]]: creates a VisGroup in the current document.
+
* [[Image:Draft_VisGroup.svg|32px]] [[Draft_VisGroup|VisGroup]]: creates a VisGroup in the current document. {{Obsolete|0.19}}
* [[Image:Draft_Slope.png|32px]] [[Draft Slope|Slope]]: changes the elevation slope of the currently selected [[Draft Line]] or [[Draft Wire]]. {{Version|0.17}}
+
* [[Image:Draft_Layer.svg|32px]] [[Draft_Layer|Layer]]: creates a Layer in the current document, to which objects can be added to control object visibility and color. It replaces [[Draft_VisGroup|VisGroup]]. {{Version|0.19}}
* [[Image:Draft_AutoGroup.png|32px]] [[Draft AutoGroup|AutoGroup]]: automatically place new objects in a given [[Std Group]] or [[Draft VisGroup]]. {{Version|0.17}}
+
* [[Image:Draft_Slope.svg|32px]] [[Draft Slope|Slope]]: changes the elevation slope of the currently selected [[Draft Line|Draft Line]] or [[Draft Wire|Draft Wire]]. {{Version|0.17}}
* [[Image:Draft_SetWorkingPlaneProxy.png|32px]] [[Draft SetWorkingPlaneProxy|Set Working Plane Proxy]]: create a proxy object to store the current [[Draft_SelectPlane|Working Plane]] position. {{Version|0.17}}
+
* [[Image:Draft_AutoGroup.svg|32px]] [[Draft AutoGroup|AutoGroup]]: automatically place new objects in a given [[Std Group|Std Group]] or [[Draft VisGroup|Draft VisGroup]]. {{Version|0.17}}
* [[Image:Draft_ToggleConstructionMode.png|32px]] [[Draft_AddConstruction|Add to Construction group]]: add selected objects to the Construction group. {{Version|0.17}}
+
* [[Image:Draft_SetWorkingPlaneProxy.svg|32px]] [[Draft SetWorkingPlaneProxy|Set Working Plane Proxy]]: create a proxy object to store the current [[Draft_SelectPlane|Working Plane]] position. {{Version|0.17}}
 +
* [[Image:Draft_AddConstruction.svg|32px]] [[Draft_AddConstruction|Add to Construction group]]: add selected objects to the Construction group. {{Version|0.17}}
  
 
== Preferences == <!--T:25-->
 
== Preferences == <!--T:25-->
Line 112: Line 148:
  
 
<!--T:4-->
 
<!--T:4-->
 +
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:
 
The Draft module provides FreeCAD with importers and exporters for the following file formats:
  
Line 120: Line 157:
 
* [[Draft_OCA|Open Cad format .OCA]]: imports and exports OCA/GCAD files, a potentially new [http://groups.google.com/group/open_cad_format open CAD file format].
 
* [[Draft_OCA|Open Cad format .OCA]]: imports and exports OCA/GCAD files, a potentially new [http://groups.google.com/group/open_cad_format open CAD file format].
 
* [[Draft_DAT|Airfoil Data Format .DAT]]: imports DAT files describing [http://www.ae.illinois.edu/m-selig/ads/coord_database.html Airfoil profiles].
 
* [[Draft_DAT|Airfoil Data Format .DAT]]: imports DAT files describing [http://www.ae.illinois.edu/m-selig/ads/coord_database.html Airfoil profiles].
 +
 +
===Install importers=== <!--T:36-->
 +
 +
<!--T:37-->
 +
* [[FreeCAD_and_DWG_Import|FreeCAD and DWG Import]]: Imports and exports DWG files
 +
* [[FreeCAD_and_DXF_Import|FreeCAD and DXF Import]]: Imports and exports DXF files
  
 
== Additional features == <!--T:6-->
 
== Additional features == <!--T:6-->
Line 127: Line 170:
 
* [[Draft Constrain|Constraining]]: limit the pointer to horizontal or vertical movements relative to a previous point.
 
* [[Draft Constrain|Constraining]]: limit the pointer to horizontal or vertical movements relative to a previous point.
 
* [[Draft Snap|Snapping]]: place new points on special places on existing objects or on the grid.
 
* [[Draft Snap|Snapping]]: place new points on special places on existing objects or on the grid.
 +
* [[Draft_Copying|Copy Mode]]: All modification tools can either modify the selected objects or create a modified copy of them. Pressing and holding {{KEY|Alt}} while the object is being modified, e.g. moved or rotated, creates a copy when the key is released.
 +
* [[Draft ToggleConstructionMode|Construction Mode]]: Allows you to create geometries separate from the rest by simply switching them on and off.
 +
* [[Draft SelectPlane|Working plane]]: allows you to select a surface on which to build your shapes.
 +
 +
== Unit tests == <!--T:39-->
 +
 +
<!--T:40-->
 +
{{Emphasis|See also:}} [[Test_Workbench|Test Workbench]].
 +
 +
<!--T:41-->
 +
To run the unit tests of the workbench execute the following from the operating system terminal.
 +
</translate>
 +
{{Code|code=
 +
freecad -t TestDraft
 +
}}
 +
<translate>
  
 
== Scripting == <!--T:10-->
 
== Scripting == <!--T:10-->
  
 
<!--T:11-->
 
<!--T:11-->
The Draft tools can be used in [[macros]] and from the [[Python]] console by using the [[Draft API]].
+
The Draft tools can be used in [[macros|macros]] and from the [[Python|Python]] console by using the [[Draft_API|Draft API]].
 +
 
 +
<!--T:42-->
 +
The workbench includes a module to create samples of all objects in a new document. {{Version|0.19}}
 +
 
 +
<!--T:43-->
 +
Use this to test that all objects are produced correctly.
 +
</translate>
 +
{{Code|code=
 +
import drafttests.draft_test_objects as dto
 +
doc = dto.create_test_file()
 +
}}
 +
<translate>
 +
 
 +
<!--T:44-->
 +
Inspecting the code of this module is useful to understand how to use the programming interface.
 +
</translate>
 +
{{Code|code=
 +
$INSTALLDIR/Mod/Draft/drafttests/draft_test_objects.py
 +
}}
 +
<translate>
 +
 
 +
<!--T:45-->
 +
Where {{incode|$INSTALLDIR}} is the toplevel directory where the software was installed; for example, in Linux it may be {{incode|/usr/share/freecad}}.
 +
 
 +
</translate>
 +
[[File:Draft_test_objects.png|500px]]
 +
<translate>
 +
<!--T:51-->
 +
{{Caption|Test objects for the [[Draft_Workbench|Draft Workbench]].}}
  
 
== Tutorials == <!--T:14-->
 
== Tutorials == <!--T:14-->
Line 139: Line 227:
  
 
<!--T:12-->
 
<!--T:12-->
{{docnav|[[Arch Workbench|Arch Workbench]]|[[Drawing Workbench|Drawing Workbench]]|IconL=Workbench_Arch.svg|IconR=Workbench_Drawing.svg}}
+
{{Docnav
{{Draft Tools navi}}
+
|[[Arch Workbench|Arch Workbench]]
{{Userdocnavi}}
+
|[[Drawing Workbench|Drawing Workbench]]
[[Category:Workbenches]]
+
|IconL=Workbench_Arch.svg
 
+
|IconR=Workbench_Drawing.svg
 +
}}
  
 
</translate>
 
</translate>
 +
{{Draft Tools navi{{#translation:}}}}
 +
{{Userdocnavi{{#translation:}}}}
 +
[[Category:Workbenches{{#translation:}}]]

Latest revision as of 20:47, 30 March 2020

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

Introduction

The 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 to Inkscape or Autocad. These 2D shapes can also be used as the base components of 3D objects created with other workbenches, for example, the Part and Arch Workbenches. Conversion of Draft objects to Sketches is also possible, which means that the shapes can also be used with the 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, TurboCad, and 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 Shape2DView.svg Shape 2D View: creates a 2D object which is a flattened 2D view of a 3D object.

Obsolete

This command is considered obsolete because the Drawing Workbench is obsolete. However, the command itself is still available.

These commands have been removed from the interface.

Utility tools

Additional tools available from the menu Draft → Utilities, or via the right-click context menu, depending on the selected object.

Preferences

  • 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

  • Coordinates: enter coordinates instead of clicking on the 3D view to define a new point.
  • 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

Scripting

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.

$INSTALLDIR/Mod/Draft/drafttests/draft_test_objects.py

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.


Tutorials