TechDraw General Examples/en

Introduction
The TechDraw workbench has many tools, but what are the required elements to turn a piece of paper into a proper drawing? This page is intended to give some explanation and some examples about what TechDraw is already capable of.

Drawings
A drawing consists of one or more views to describe a part geometrically... But you know that already, don't you?

Let's have a look at the basic elements.

Sheet of paper
Paper sizes are standardized and to be able to print without scaling the format of our sheet should match the desired printing format.

Frames
When drawings were drawn by hand they had to be pinned or taped to a drawing board. Puncher holes were added to the finished drawing to attach the folded drawing to a file or folder. This outer area is separated by a rectangular frame. Another rectangular frame inside the first one defines the drawing area. There is usually a set of indexes and separators between both frames used to locate certain drawing elements.

Title block
The title block contains written information about the part and the drawing such as part number, title, author, owner, etc.

Bill of materials
Optionally assembly drawings can have a bill of materials (BOM) included. The BOM can also be placed on a separate drawing sheet or a spreadsheet.

Change log
Changes to the part or the drawing are protocolled in a log on the drawing or in a separate document and linked to the drawing by corresponding indexes.

Views
Views contain the geometrical description of a part from a certain direction. Most parts need at least two views to be properly described.

Annotations
Additional texts that don't belong to the elements mentioned above.

Drawings made with TechDraw
Techdraw uses a Page object as a container for all drawing related elements; this cannot exist on its own, but has to contain a template. That is why there is no New page command and a new page object is created automatically whenever a template is inserted.

Templates
A Template object is an SVG image file and its code holds all information needed to create a virtual sheet of paper with matching frames and title block, and optionally a BOM.

SVG images are not parametric. This means that for each format a separate template has to be created, such a set of templates is needed for any variation of frame or title block objects. That is quite a lot to code and manage but on the other hand templates cannot change accidentally inside FreeCAD.

There are several ways to create a template:
 * 1) Draw it with Inkscape, see How to create a custom TechDraw template.
 * 2) Type it manually, see Template explained.
 * 3) Use a macro, see TechDraw TemplateGenerator and Macro TemplateHelper.





The drawing so far
Up to this point it is safe to say that TechDraw in connection with embedded SVG templates can provide a proper drawing sheet with a frame and a title block. Some entries can be altered after creation thanks to editable texts, and some content can be inserted automatically if macros are involved.

Views
Views contain the geometrical 2D description of an object. The content of a TechDraw view can be derived from 3D geometry or obtained from another workbench like Arch Views and  Draft views.

Since FreeCAD is a 3D modelling application TechDraw's key function is deriving 2D views from 3D geometry. Let's have a look at an easy example, the part from the Basic Part Design Tutorial that is also used with the Basic TechDraw Tutorial:



Active View
An Active View is more or less a screen shot of the 3D view in its own kind of TechDraw view.



View
A View is TechDraw's basic view object to derive proper drawings. In contrast to an Active View it is not restricted to visible objects on the screen, but also displays selected objects outside the screen. The preferred scale depends on the available space and the level of detail that has to be displayed.



Projection Group
A Projection Group is a set of views. Each view direction is perpendicular to its neighbor and all depend on the 3D window's direction by default. TechDraw provides six views matching with the Navigation Cube sides, and four isometric views.



Section View
TechDraw provides tools to create a Simple Section View or a  Complex Section View. Both depend on a base view and on tools to define a section line and to derive the view direction. Have a look at TechDraw Section Examples for an overview.



Auxiliary View
If we need a view of a tilted plane to see its true lengths we would define the view direction in a base view and place the Auxiliary view accordingly, but TechDraw provides no tool for Auxiliary views yet.

Good news: It is quite easy to emulate using the Simple Section View tool:


 * 1) Select a base view.
 * 2) Create a [[Image:TechDraw_SectionView.svg|16px]] Simple Section View with default settings.
 * 3) Use [[Image:TechDraw_AngleDimension.svg|16px]] Insert Angle Dimension to measure the angle of the plane.
 * 4) Edit the section view angle in the Set View Direction area of its task panel.
 * 5) Edit the section view coordinates in the Section Plane Location area of its task panel. Use small steps to move the section line outside the object or FreeCAD may crash.
 * 6) Hide unwanted annotation elements such as section line, section arrows, and section name.
 * 7) Add needed items like view arrow, and view name.







Detail View
A Detail View is a copy of an area of a base view usually to magnify hardly visible geometry.



Imperfections

 * Detail views according to ISO standard do not have a frame/border (the upper part of the enclosing circle). Editor's note: what is meant here?? Frames are not printed...
 * The break line that cuts the detail off from the rest should be a thin freehand line or the cad equivalent, a thin zigzag line. FreeCAD/TechDraw do not provide freehand/zigzag lines (yet).
 * Hatched areas in the base view should be hatched in the detail view, too.

Arch View
An Arch View displays a view of an  Arch SectionPlane. Its content is rendered by the Arch workbench.

Draft View
A Draft View displays a view of a selected Part-based object or Group object. It is intended for 2D objects. Its content is rendered by the Draft workbench.



Spreadsheet View
A Spreadsheet View displays a view of a Spreadsheet Workbench sheet.



The views so far
TechDraw needs some additions like break lines, and a proper auxiliary view tool and also some improvement of the Detail View tool. But even in this state we can describe our objects visually quite well:



Dimensioning
Now that our item is described geometrically, dimensions will be added to further define the shape, and tolerances to define the allowed deviation. TechDraw supplies several tools to apply dimensions to the 2D representation of our item:
 * [[Image:TechDraw_LengthDimension.svg|16px]] Length Dimension
 * [[Image:TechDraw_HorizontalDimension.svg|16px]] Horizontal Dimension
 * [[Image:TechDraw_VerticalDimension.svg|16px]] Vertical Dimension
 * [[Image:TechDraw_RadiusDimension.svg|16px]] Radius Dimension
 * [[Image:TechDraw_DiameterDimension.svg|16px]] Diameter Dimension
 * [[Image:TechDraw_AngleDimension.svg|16px]] Angle Dimension
 * [[Image:TechDraw_3PtAngleDimension.svg|16px]] 3-Point Angle Dimension

They have in common that they measure the projected shape of the item. If you have learned drafting the manual way, you know how to use auxiliary views to turn the item into a position where projected lengths equal true lengths. For visualization other than this old school way, dimensions can be linked to 3D geometry using TechDraw DimensionRepair to display "true dimensions".

Two other tools measure the overall length horizontally or vertically respectively: These cannot be linked with 3D geometry (yet).
 * [[Image:TechDraw_HorizontalExtentDimension.svg|16px]] Insert Horizontal Extent Dimension
 * [[Image:TechDraw_VerticalExtentDimension.svg|16px]] Insert Vertical Extent Dimension

See Dimension dialog (and the following properties section) for all settings that are not mentioned in this overview.

Simple dimensions
The dimension text depends mainly on these properties:
 * By default their defaults are
 * By default their defaults are
 * By default their defaults are
 * By default their defaults are

To "cheat" we can use these two properties:
 * Set to to use the content of the Format Spec to format the actual dimensional value.
 * Set to to use the content of the Format Spec to be displayed as text instead if the dimension value.
 * Set to to use the content of the Format Spec to be displayed as text instead if the dimension value.


 * : Like, but for the tolerance.

If we only need the dimension value there's nothing to do but to change the number of decimals if desired.
 * For example: →  to display 3 decimals, or  →  to display whole numbers.

Length dimension
There are three tools to add length dimensions: Length Dimension,  Horizontal Dimension, and  Vertical Dimension.



This shows that it is important to rotate a front view in the Projection Group dialog or otherwise the connected views will not follow. On the other hand that would restrict us to 90° turns.

If a dimension has to run parallel to an edge it needs another selectable line perpendicular to the edge and the Length Dimension tool, that can find the shortest (= perpendicular) distance between a point and a line. An edge will not be automatically extended by an imaginary line and so we need to create an auxiliary (cosmetic) line manually. (A cosmetic point could be used as well, but that requires even more work).


 * The black (point to line) [[Image:TechDraw_LengthDimension.svg|16px]] Length Dimension depends on a cosmetic line that doesn't rotate with the view. (A cosmetic point wouldn't be helpful either.)
 * The [[Image:TechDraw_HorizontalDimension.svg|16px]] Horizontal Dimension and [[Image:TechDraw_VerticalDimension.svg|16px]] Vertical Dimension (red and green) stay with the page orientation and change their values accordingly.
 * The blue is a point to line [[Image:TechDraw_LengthDimension.svg|16px]] Length Dimension, too but rotates with the view as there is no cosmetic geometry involved.

Angle dimension
TechDraw provides two tools to add angle dimensions: Angle Dimension and  3-Point Angle Dimension.




 * Blue: an [[Image:TechDraw_AngleDimension.svg|16px]] Angle Dimension between two edges.
 * Red: a [[Image:TechDraw_3PtAngleDimension.svg|16px]] 3-Point Angle Dimension using both end points and the center point of an arc.

Chamfer dimension
A chamfer dimension can be applied as a length dimension with a manually edited property or by using  Create Horizontal Chamfer Dimension and  Create Vertical Chamfer Dimension to create a size and angle dimension for a chamfer.



The chamfer tools work well for objects with horizontal and vertical sides as long as they are parallel to the view's = the page's X and Y axes, but many parts won't do us the favor of being perfectly aligned.

The angle values are not parametric! They do not change if the view is tilted. The last page shows the correct angles, but dimensions positioned like this are pointless.

To align the chamfer dimension along an edge we need an auxiliary (cosmetic) point where the unchamfered edges would meet and have to use Length Dimension; but cosmetic point won't follow the edges if the view is tilted. (also see Length dimension.)

Radius dimension
A Radius Dimension adds a radius dimension to a circle or circular arc, no more no less.



To change the arrowhead direction just set the property to.

Diameter dimension
Diameter dimensions can be added as a Diameter Dimension or one of the length dimensions  Length Dimension,  Horizontal Dimension, and  Vertical Dimension. (Or in connection with a leader line pointing to a circle center or a center line - not displayed.)




 * Blue: a [[Image:TechDraw_VerticalDimension.svg|16px]] length dimension in the side view of the hole needs a "⌀" prefixed to distinguish this from a rectangular hole.
 * [[Image:TechDraw_ExtensionInsertDiameter.svg|16px]] Insert '⌀' Prefix is an easy way to do this, but the property can be edited manually as well.


 * Green: a simple [[Image:TechDraw_VerticalDimension.svg|16px]] length dimension.
 * It needs some auxiliary geometry (cosmetic points) as it cannot be applied to circles directly.


 * Red: a [[Image:TechDraw_DiameterDimension.svg|16px]] diameter dimension. In case you look along the hole axis and can see the circular shape of the hole the "⌀" may be omitted. To remove it edit the property manually.

Thread dimension
Thread dimensions can be applied just like diameter dimensions, but they require some auxiliary geometry created beforehand: Add Cosmetic Thread Hole Side View,  Add Cosmetic Thread Hole Bottom View,  Add Cosmetic Thread Bolt Side View, or  Add Cosmetic Thread Bolt Bottom View.



All Thread dimensions are applied to auxiliary (cosmetic) lines or circles (in connection with cosmetic points) and all properties need to be edited manually to prefix the "M" for metric threads.

Tolerances
Tolerances express how much a measured dimension may deviate from the dimension value on the drawing. To suffix a tolerance values to the dimension value simply set the property to a value other than, this results in a symmetric tolerance such as.

For an asymmetric tolerance set property to  and specify also a lower value for the  property.

The values can be set in the Dimension dialog or directly in the Property editor.

Hole/shaft fit
Fit tolerances can be added by suffixing tolerance classes to a dimension. A tolerance class consist of a tolerance field specifier (letter, upper case for holes, lower case for shafts) and a tolerance grade specifier (number) and can be suffixed in three ways:
 * 1) Set the  property to  and specify both tolerance classes in the  and  properties.
 * 2) Use the [[Image:TechDraw_HoleShaftFit.svg|16px]] Add hole or shaft fit tool. This suffixes only one tolerance class but adds the related values to the  and  properties.
 * 3) For a single tolerance simply suffix the tolerance class to the format specifier in the  property.

Thread fit
Thread fit tolerances can be suffixed like described above for hole/shaft fit tolerances, except method 2. The thread tolerance classes display the tolerance grade specifier (number) in front of the tolerance field specifier (letter, upper case for internal threads, lower case for external threads).

Inspection dimensions
Inspection dimensions (test dimensions) are not yet implemented.
 * (Maybe obsolete already. See ...test dimension was withdrawn... on the forum)

To fake an inspection dimension we set the property to " " (one space - no character at all and we would have no handle to grab the dimension line to move it) and then set the  property to ; this results in a dimension without value. The value can now be substituted with a balloon without leader line. This only works with horizontal dimensions since we cannot rotate balloons.



Geometric dimensioning and tolerancing
The system of geometric dimensioning and tolerancing (GD&T) aims at describing shapes more precisely than toleranced dimensions alone can do. It is built on datums, theoretically exact dimensions, and tolerance indicators.

Datums
Datums are virtual surfaces, planes, lines, and points used as references to describe geometrical features with theoretically exact dimensions and tolerance indicators. They can be used to built a theoretically exact virtual coordinate system.

Datum feature
A datum feature is a geometric feature of an object corresponding with a certain datum. Datum feature symbols are added using Balloon annotations.



The property has to be set to  for vertical leader lines, but this results in a portion of the line shown within the frame.

Datum target
Datum targets are points or relatively small areas that denote where to derive a datum from. Most common use is to create a theoretically exact virtual coordinate system from a set of six datum targets.

Theoretically exact dimensions
Theoretically exact dimensions are added the same way as simple dimensions and the Theoretically exact checkbox makes the difference: It sets the property to  which adds a rectangular frame to the dimension value and deactivates tolerances and all tolerance settings.

Tolerance indicator
A tolerance indicator, also called "feature control frame", is a frame containing tolerance information about:
 * which geometric characteristic is tolerated
 * the shape and size of the tolerance field
 * the datums to be referenced
 * some more symbols to describe the features even more precisely.

Tolerance indicators are like datum feature symbols added using Balloon annotations.

In most cases tolerance indicators are aligned with a dimension line which is impossible in TechDraw except for horizontal dimensions since, as already mentioned, balloon annotations can not be rotated.